JP5404681B2 - 監視制御アプリケーション設計装置及びプログラム - Google Patents

監視制御アプリケーション設計装置及びプログラム Download PDF

Info

Publication number
JP5404681B2
JP5404681B2 JP2011062030A JP2011062030A JP5404681B2 JP 5404681 B2 JP5404681 B2 JP 5404681B2 JP 2011062030 A JP2011062030 A JP 2011062030A JP 2011062030 A JP2011062030 A JP 2011062030A JP 5404681 B2 JP5404681 B2 JP 5404681B2
Authority
JP
Japan
Prior art keywords
definition
input
tool
information
output
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2011062030A
Other languages
English (en)
Other versions
JP2012198743A (ja
Inventor
裕久 古田
勘 仲井
哉 塩田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2011062030A priority Critical patent/JP5404681B2/ja
Publication of JP2012198743A publication Critical patent/JP2012198743A/ja
Application granted granted Critical
Publication of JP5404681B2 publication Critical patent/JP5404681B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Description

本発明は、複数のデバイス、機器などを監視制御する監視制御アプリケーション又は監視制御システムを設計するアプリケーション設計装置及びプログラムに関するものである。
プラントの機器、河川の流量計、ビルの空調機や照明灯に関する複数のデバイスや機器などを監視制御する監視制御アプリケーション又は監視制御システムを効率的に開発するため、汎用的な監視制御プログラムと、デバイスや機器の入出力点の仕様を構成する複数の入力項目へのデータ入力を支援するツールとが整備されている。監視制御アプリケーション又はシステムは、起動時に複数のツールによって設計されたデータを読み込むことで所望の監視制御を行う。
それぞれのツールは、仕様書、監視制御アプリケーション又はシステムが読み込むためのデータなどを作成することを目的としており、入力項目の構成や入力項目に入力するデータの仕様は固定化されている。また、該当ツールの上流または下流に位置付けられる他のツールとの間のデータ連携や、ツール内部のデータチェックやデータ変換は、固定化された入力項目の仕様に基づき作成されたプログラムにて実現されている。
ところが、監視制御アプリケーションやシステムの要求仕様の多様化に伴い、アプリケーションごとに入力項目の追加や仕様の変更、出力する仕様書の構成や設計する手順の変更などが発生している。これらの変更要求に対応するためには、固定化されている入力項目の構成や仕様の変更、データ連携、データチェック、データ変換プログラムの改修が必要となるといった問題がある。
特許文献1、特許文献2及び特許文献3にそれらの問題を解決する技術が記載されている。
特許文献1では、特定の分野または対象の書類,図表等を短時間で効率的に作成する技術が記載されている。入力した入力項目に従い、入力項目に該当する標準仕様から成る入力項目群を知識DB(データベース)から取得することができる上、設定条件を付け項目の追加削除等を行い、詳細仕様を取得することができる。また、ファジイ推論等を利用し、入力した入力項目と推論にて得られた結果から標準仕様を取得することができる。
特許文献2では、セクション(≒工程)が設計項目の変更等を他の関連するセクションに伝達し、仕様漏れを防ぐ技術が記載されている。セクションごとに設計項目のデータを管理するデータベースを有し、セクション間で共通な設計項目については、変更等の決定権があるマスタセクションにて管理し、他のセクションはそのマスタセクションのデータベースからデータを取得することができる。また、共通項目には、変更内容が確定なのか仮なのかを設けることで、マスタセクションを閲覧している他のセクションから閲覧することができ、設計状況の可視化を図ることができる。
特許文献3では、多数の要素の組合せから、該当する標準データ(≒マスタデータ)を検索し、取得できるプログラムを容易に開発できる技術が記載されている。入力データ(≒検索条件)に応じて得られる出力データを選択させることで、出力データを取得可能な関数プログラムを生成することができる。また、出力データ得るために必要な入力データが不足している場合は、絞り込むための候補を提示することもできる。
特開平5−257933号公報 特許第4288639号公報 特開2004−280714号公報
特許文献1で開示されたシステムは、構成する入力項目を固定にせず、入力した項目から構成する入力項目を取得または推論などを組み合わせながら生成するといったことによって解決している。しかし、本技術では、アプリケーション毎、項目を入力し、アプリケーションの要件に適合した条件や応じて選択を繰り返すといった処理をユーザが行わなくてはならなく、ミスや手間が発生する。また、アプリケーションの要求にマッチした項目が検出されない可能性が高い。さらに、項目に入れるデータの支援については触れられていない。
特許文献2で開示されたシステムは、共通となる項目のデータを入力元となるマスタセレクションで管理し、そのマスタセレクションから個々の関連するセレクションが参照することでデータ変換等のプログラム改修コストの削減やデータの二重登録を防止することが可能となる。しかし、共通な設計項目は予め決められており、設計項目の構成変更などに伴う共通な設計項目の動的変更に対応することができない。項目に入れるデータの支援については触れられていない。
特許文献3で開示されたシステムは、入力データと出力データの関係と、ある入力データは別の出力データの子として管理することがポイントである。ただ、標準規格のようなほとんど変わらない固定なものには有効であるが、案件に応じて入力するデータの仕様が変化するものには向かない。
このように特許文献1〜特許文献3に開示されたシステムは、様々な問題点があった。
この発明は上記問題点を解決するためになされたもので、ユーザ負担の軽減化を図った監視制御アプリケーションを設計することができる監視制御アプリケーション設計装置及びプログラムを提供することを目的とする。
この発明に係る請求項1記載の監視制御アプリケーション設計装置は、複数のデバイスの入出力点におけるデータを監視制御するアプリケーションを設計するための出力用ツール情報をツール単位に生成する監視制御システム設計装置であって、デバイスの入力点の仕様を構成する入力項目仕様定義と、他の入力項目に入力されたデータに応じて入力項目の仕様を変化させる入力支援定義と、どのツール順に設計を進めていくかを定めた順序定義と、ツールを構成する入力項目の構成定義とを規定する定義情報を格納する定義部と、前記定義情報に基づき、前記順序定義で規定された順序で、ツールを構成する入力項目における前記入力項目仕様定義及び前記入力支援定義を読み込んで読み込み定義情報を得る定義読込手段と、前記定義読込手段が読み込んだ前記読み込み定義情報に基づき、前記入力項目の仕様に含まれる他の前記入力項目との依存関係を解釈する定義解釈処理を実行して定義解釈結果を得る定義解釈手段と、前記読み込み定義情報及び前記定義解釈結果に基づいて、ツールを構成する入力項目の並び順、及び各入力項目の入力依存関係を示すパラメータを規定するレイアウト定義情報を決定するレイアウト定義処理を実行するレイアウト定義手段と、前記レイアウト定義情報に基づき、ツール単位に、前記入力項目を並べ且つ、前記入力項目における前記パラメータが規定する入力依存関係を実現する入力支援プログラムを埋め込んで得られる前記出力用ツール情報を出力するツール出力処理を実行するツール出力手段と、前記出力用ツール情報を保存するデータ管理部とを備える。
請求項1記載の本願発明における監視制御アプリケーション設計装置は、定義読込手段による定義解釈処理、レイアウト定義手段によるレイアウト定義処理を経て、最終的にツール出力手段により、ツール単位に、入力項目を並べ且つ、入力項目に入力支援プログラムを埋め込んで得られる出力用ツール情報を得ることができる。
したがって、請求項1記載の本願発明は、利用するツールの順序や、ツールを構成する入力項目を変更した場合でも、ツールを構成する入力項目の入力支援定義の依存関係に従い、ツールにおける入力項目を並べ順であるツールのレイアウトを自動で決定した出力用ツール情報を得ることができるため、ユーザに対する負担を軽減することができる。
また、出力用ツール情報内に埋め込まれた入力支援プログラムを動作させることによって、ユーザが入力項目に入力するデータの選択肢や入力できる範囲などの入力規制を他の入力項目に入れたデータに応じて動的に変えることにより、入力精度を向上させることができる。
この発明の実施の形態1である監視制御アプリケーション設計装置のハードウェア構成を示す説明図である。 実施の形態1の監視制御アプリケーション設計装置の構成を機能ブロックとして示す説明図である。 入力項目仕様定義の一例を示す説明図である。 入力項目仕様定義の他の一例を示す説明図である。 入力支援定義の具体例を示す説明図である。 図4で示した入力項目仕様定義に入力支援定義を付加した一例を示す説明図である。 順序定義の一例を表形式で示す説明図である。 構成定義の一例を表形式で示す説明図である。 定義解釈手段による定義解釈処理の定義解釈結果における依存関係をツリー上にプロットした例を示す説明図である。 定義解釈手段による定義解釈処理の定義解釈結果における依存関係をツリー上にプロットした具体例を示す説明図である。 レイアウト定義手段によって得られるレイアウト定義情報が指示する入力項目の並び順を示す説明図である。 定義部が扱うそれぞれの定義を追加・変更・削除を行う動作シーケンスを示すフローチャートである。 定義読込手段が定義部の定義情報を読み込む動作シーケンスを示すフローチャートである。 定義解釈手段による定義解釈処理を示すフローチャートである。 レイアウト定義手段によるレイアウト定義処理を示すフローチャートである。 ユーザがツール出力手段を起動し、出力のツール並びにデータを入力する動作シーケンスを示すフローチャートである。 ユーザがツール出力手段を起動し、出力のツール並びにデータを入力する動作シーケンスを示すフローチャートである。 実施の形態2における定義解釈手段による定義解釈処理を示すフローチャートである。 実施の形態3のツール出力手段による要変更ツール機能の動作シーケンスを示すフローチャートである。 実施の形態4によるツール出力手段6によるデータ検証処理を示すフローチャートである。 実施の形態5のツール出力手段6による仕様内容表現変換機能を示すフローチャートである。 実施の形態6のツール出力手段6による表現形式変換機能を示すフローチャートである。 BNF記法で記載した文法の一例を示す説明図である。 入力支援定義の条件式と支援値との関係を表形式で示す説明図である。 入力支援定義の条件式と支援値との関係を表形式で示す説明図である。
<実施の形態1>
図1は、この発明の実施の形態1である監視制御アプリケーション設計装置のハードウェア構成を示す説明図である。同図に示すように、監視制御アプリケーション設計装置1は、例えばコンピュータ又は、コンピュータ上で動作するプログラム(例えば、汎用オフィス製品、Webブラウザ、スタンドアローンアプリケーションなど)によって実現される。
この監視制御アプリケーション設計装置1は、CPU(Central Processing Unit)10と、ROM(Read Only Memory)11と、RAM(Random Access Memory)12と、記憶装置13と、入力インタフェース14と、入力装置15と、出力インタフェース16と、出力装置17と、ネットワーク接続インタフェース18と、ネットワーク接続装置19と、バス20とを備える。
データバスであるバス20は、監視制御アプリケーション設計装置1を構成する複数のハードウェア(10〜14,16,18)を互いに電気的に接続する。したがって、これらのハードウェア同士間では、バス20を介して情報の送受信が可能となっている。本実施の形態では、このバス20を介して、CPU10、ROM11、RAM12、記憶装置13、入力インタフェース14、出力インタフェース16及びネットワーク送受信インタフェース18が複数のハードウェアとして互いに電気的に接続されている。
この監視制御アプリケーション設計装置1は、その利用者、管理者または運用者から起動の際に行われる操作を受け付けると、監視制御アプリケーション設計装置1を起動するためのブートプログラム、OS(Operating System)を読出して実行する。以下、監視制御アプリケーション設計装置1の各構成について詳細に説明する。
ROM11には、ブートプログラム等の制御プログラムが記憶されている。RAM12は、CPU10が記憶装置13から読み出したデータがキャッシュデータ等として一時的に記憶される。記憶装置13は、例えば、HDD(Hard Disk Drive)であり、記憶装置13には、OS、監視制御アプリケーション設計支援プログラム及び各種情報が記憶されている。
CPU10は、ROM11に記憶されている制御プログラムを読込んで実行することにより、ROM11、RAM12、記憶装置13、入力インタフェース14及び出力インタフェースを制御する。また、CPU10は、記憶装置13に記憶されているOS、監視制御アプリケーション設計支援プログラムを読出して実行する。
入力装置15は、キーボード及びマウス等を備えており、利用者等からの操作を受け付けると、当該操作に対応する指令を入力インタフェース14に与える。入力インタフェース14は、入力装置15と電気的に接続されており、入力装置15をバス20に接続する。これにより、入力装置15からの指令が、バス20及び入力インタフェース14を介してCPU10に入力される。
出力装置17は、CRT(Cathode Ray Tube)ディスプレイ、液晶表示ディスプレイ等の、外部に情報を出力する装置であり、出力インタフェース16からの情報を表示する。出力インタフェース16は、出力装置17と電気的に接続されており、出力装置17をバス20に接続する。これにより、CPU10からの情報が、バス20及び出力インタフェース16を介して出力装置17に出力される。出力装置17は、例えば、CPU10からの情報を受けるとその情報を表示する。
ネットワーク接続装置19は、イーサネット(登録商標)カード、シリアルポート等の、外部コンピュータや外部デバイスと接続する接続装置であり、外部コンピュータ等と情報を送受信する。ネットワーク接続インタフェース18は、ネットワーク接続装置19と電気的に接続されており、ネットワーク接続装置19をバス20に接続する。これにより、CPU10からの情報及び指令が、バス20及びネットワーク接続インタフェース18を介してネットワーク接続装置19に出力される。ネットワーク接続装置19は、CPU10からの情報及び指令を受けると、その指令に基づいて、CPU10からの情報を外部コンピュータ等に送信する。一方、ネットワーク接続装置19は、外部コンピュータ等からの情報を受信すると、当該情報をバス20及びネットワーク接続インタフェース18を介してCPU10に入力する。
図2は、図1に示されるCPU10が主に記憶装置13に記憶されている監視制御アプリケーション設計支援プログラムを読込んで起動することにより実行可能となる、監視制御アプリケーション設計装置1の構成を機能ブロックとして示す説明図である。同図に示すように、監視制御アプリケーション設計装置1は、定義部2、定義読込手段3、定義解釈手段4、レイアウト定義手段5、ツール出力手段6、及びデータ管理部7を備える。
なお、定義部2及びデータ管理部7は記憶装置13によって実現され、実際に監視制御アプリケーション設計支援プログラムとして動作するのは定義読込手段3、定義解釈手段4、レイアウト定義手段5及びツール出力手段6である。
定義部2は、デバイスの入力点の仕様を構成する入力項目仕様定義D21と、他の入力項目に入力されたデータに応じて入力項目の仕様を変化させる入力支援定義D22と、どのツール順に設計を進めていくかを定めた順序定義D23と、ツールを構成する入力項目の構成定義D24とを含む定義情報D2を記憶装置13内に管理し、ユーザからの入力を入力装置15にて受付け、ユーザへの出力を出力装置17にて行う。以下では、入力項目仕様定義D21、入力支援定義D22、順序定義D23、構成定義D24について説明する。
入力項目仕様定義D21とは、デバイスの入出力点の仕様を構成する入力項目の定義である。
図3は入力項目仕様定義D21の一例を示す説明図である。同図に示すように、入力項目仕様定義D21は、入力項目を一意に識別する識別子200、論理名201、物理名202、型203、ガイダンス204から構成する。
識別子200は、入力項目を一意に識別するものである。論理名201は、入力項目の論理名を定義する。ただし、論理名201は重複してはならない。また、識別子200の代わりとなることも可能である。物理名202は、入力項目の物理名を定義する。ただし、物理名202は重複してはならない。また、識別子200の代わりとなることも可能である。
型203は、入力項目に設定できるデータの型である。例えば、文字列型、整数型、小数点型、日付型、2進数型、16進数型などがある。ガイダンス204は、入力項目にどういうデータが入れられるのか、または入れなくてはならないのかをユーザにガイダンスする文字列である。
膨大な入力項目を定義するケースに対応するため、入力項目を整理できる仕組みを提供する。
図4は入力項目仕様定義の他の一例を示す説明図である。同図(a) 及び(b) に示すように、図3に示す入力項目仕様定義D21を入力項目仕様定義D21a,D21bのように分類しても良い。なお、図4の(a) では、識別子200として、2つの部分識別子200a,200bを用いており、図4の(b) では、識別子200として、3つの部分識別子200c〜200eを用いている。
入力支援定義D22とは、どのようなデータを入力項目に設定できるかを、入力するための条件と、条件が満たされたときに設定可能なデータの候補を提示する定義である。データ入力を可能とするか否かの条件のことを条件式210と呼び、条件が満たされたときに設定可能な値の候補のことを支援値211と呼ぶ。
図23は入力支援定義D22の条件式210及び支援値211の文法をBNF(Backus-Naur Form)記法に記載した一例を示す説明図である。分類項目及び入力項目は、図23の(a) の文法リスト81に示すように定義される。
なお、図23の(b) に示す文法リスト82において、文法中に記載のある10進整数とは整数で例えば"65535"、2進整数は例えば"1111111111111111"、16進整数は例えば"FFFF"のことである。なお、比較OPなどの記述方法は文法リスト82で示した例以外の方法でもよい。また、演算OPなどの記述方法は本文法リスト84で示した例以外の方法でもよい。
入力支援定義D22には、複数の種類が存在する。例えば、無効入力支援、リストボックス入力支援値入力支援、絞込入力支援、一意制約検定、数字サイズ検定、文字列長検定、必須入力支援などがある。
図24及び図25は上述した9個の入力支援定義D22の条件式210と支援値211の仕様を示した一例である。図5は入力支援定義D22の具体例を示す説明図である。なお、図5に示すように「.」で区切る以外の方法でも良い。
以下では、図5、図24及び図25を参照して、9個の入力支援定義D22について説明する。
図24の(a) に示すように、無効入力支援71とは、定義された条件に合致している場合、データを追加、変更することができない定義である。定義の方法は図24(a) の無効入力支援71に示すとおりである。
無効入力支援71の具体例は、図5(a)の表の2行目に示すように、「アナログ.入力フラグ」が“1”でなければ無効となり、図5(a)の表の2行目に示すように、「アナログ.入力フラグ」が“0”の場合は有効となる。
リストボックス入力支援72とは、定義された条件に合致している場合、入力可能な値をリストボックスから選択させる定義である。定義の方法は図24(b) に示すとおりである。
リストボックス入力支援72の具体例は、図5(b)の表の2行目に示すように、「アナログ.入力フラグ」が“1”の時は{0:無効,1:有効}の入力を促すリストボックスが表示される。図5(b) の表の3行目に示すように、無条件に{0:無効,1:有効}の入力を促すリストボックスが表示される。図5(b)の表の4行目に示すように、「アナログ.入力フラグ」が“1”の時は{0:無効,1:有効}の入力を促すリストボックスが表示され、「アナログ.入力フラグ」が“0”の時は{1:無効,0:有効}の入力を促すリストボックスが表示される。
値入力支援73とは、定義された条件に合致している場合、デフォルトで値を設定する定義である。定義の方法は図24(c) に示す通りである。
値入力支援73の具体例は、図5(c)の表の2行目に示すように、「アナログ.入力フラグ」が“1”の時は「アナログ.入出力点番号」に“1”を加えた値が設定される。図5(c) の表の3行目に示すように、無条件に“1”が設定される。
絞込入力支援74とは、ある一意から成る値を段々と絞り込んでいく定義である。定義の方法は図24(d) に示すとおりである。
絞込入力支援74の具体例は、図5(d)が表の2行目に示すように、「アナログ.デバイス番号」を入力することにより、入力した「アナログ.デバイス番号」に関連する入出力番号の候補を提示する。
一意制約検定75とは、ある入力項目の集合が一意の値であることを検定する定義である。すなわち、ある入力項目に入力された値が一意な値であるかを検出する定義である。定義の方法は図24(e) に示すとおりである。
一意制約検定75の具体例は、図5(e)の表の2行目に示すように、無条件に一意であることが示される。
数字サイズ検定76とは、入力された数字(10進、2進、16進)の値の最小値、最大値を検定する定義である。定義の方法は図25(a) に示すとおりである。
数字サイズ検定76の具体例は、図5(f) 上表の2行目に示すように、「アナログ.入力フラグ」が“0”の時は最大値が“1”に設定され、図5(f) 上表の3行目に示すように、無条件に最小値は“0”に設定される。また、図5(f) 下表の2行目に示すように、「アナログ.入力フラグ」が“1”の時は最大値が“10”に設定され、図5(f) 下表の3行目に示すように、無条件に最小値は“9”に設定される。
文字列長検定77とは、入力された文字列の最大文字列長を検定する定義である。定義の方法は図25(b) に示すとおりである。
文字列長検定77の具体例は、図5(g) の表の2行目に示すように、「アナログ.入力フラグ」が“1”の時は最大文字列長が“15”に設定され、図5(g) の表の3行目に示すように、無条件に最大文字列長が“20”に設定される。
必須入力支援78とは、必須入力支援とは、定義された条件に合致している場合、データが入力されていないことを通知する定義である。定義の方法は図25(c) に示すとおりである。
必須入力支援78の具体例は図5(h)の表の2行目に示すように、「アナログ.入力フラグ」が“1”でなければ必須となる。
一括入力支援79とは、定義された条件に合致している場合、データが未入力のところにデータをセットしていく定義である。定義の方法は図25(d) に示すとおりである。
一括入力支援79の具体例は、図5(i)の2行目に示すように、「アナログ.入力フラグ」が“1”の時は初期値“1”のシーケンシャル番号を振り、図5(i) の表の3行目に示すように、無条件に初期値“0”のシーケンシャル番号を振る。
図6は、図4(a) で示した入力項目仕様定義D21aに入力支援定義D22を付加した一例を示す説明図である。同図に示すように、部分識別子200a及び200bと共に、無効入力支援71、リストボックス入力支援72及び必須入力支援78それぞれの条件式210及び支援値211が付加されている。
順序定義D23とは、どの順番でツールを利用してユーザが入出力点の仕様を設計していくのかを定義する。
図7は順序定義D23の一例を表形式で示す説明図である。同図に示すように、順序定義D23は、ツールを一意に識別する識別子220、論理名221、物理名222から構成される。
識別子220は、ツールを一意に識別するものである。すなわち、識別子220が「共通」、「アナログ一覧表」及び「アナログ詳細表」としたツールがそれぞれ存在する。論理名221は、ツールの論理名を定義する。ただし、論理名221は重複してはならない。また、識別子220の代わりとなることも可能である。物理名222は、ツールの物理名を定義する。ただし、物理名222は重複してはならない。また、識別子220の代わりとなることも可能である。
構成定義D24とは、それぞれのツールが構成する入力項目のリストを定義する。
図8は構成定義D24の一例を表形式で示す説明図である。同図に示すように、構成定義D24は、ツールを一意に識別する識別子220、入力項目を一意に識別する識別子210から構成される。
図2に戻って、定義読込手段3は、定義部2に格納されている順序定義D23及び構成定義D24を読込み、順序定義D23及び構成定義D24に基づき、ツールが構成する入力項目の入力項目仕様定義D21及び入力支援定義D22を選択的に読み込む。
例えば、図7の識別子220「共通」のツールに着目した場合、図8の識別子220が「共通」である識別子210「共通.上限パラメータ,共通.下限パラメータ」を認識し、図3の上限パラメータ,下限パラメータ(識別子200)に関する論理名201,物理名202,型203及びガイダンス204及びこれに付随する入力支援定義を読み出す。
以下、定義部2の定義情報D2のうち定義読込手段3が読み込んだ情報を読み込み定義情報D3と呼ぶ。
定義解釈手段4は、定義読込手段3にて読み込んだ読み込み定義情報D3のうち、入力支援定義に含まれる入力項目を抜き出し、入力項目間の依存関係を解釈する定義解釈処理を実行して定義解釈結果D4を得る。
図9は、定義解釈手段4による定義解釈処理の定義解釈結果D4における依存関係をツリー上にプロットした例を示す説明図である。すなわち、定義解釈手段4は、図6〜図8にて定義した入力項目仕様定義D21及び入力支援定義D22、順序定義D23並びに構成定義D24に基づき、定義解釈処理を行い図9に示すような入力項目間の依存関係を規定した定義解釈結果D4を得る。
図9の左側にある入力項目、例えば、「共通.上限パラメータ」や「共通.下限パラメータ」、「アナログ.デバイス番号」、「アナログ.入出力点番号」などの入力項目は、他の入力項目に依存していない独立した入力項目である。その一方、「アナログ.入力フラグ」、「アナログ.名称その1」、「アナログ.名称その2」などは、他の入力項目に入力されるデータに応じて、入力可能であるか又は入力支援する内容が変化する。
また、「アナログ.上限値1」や「アナログ.下限値1」などは、複数の他の入力項目に依存しており、それらの条件が全て揃う(AND)又はどれかだけでも揃えば(OR)、入力項目に入力することが可能になる。
図10は、定義解釈手段4による定義解釈処理の定義解釈結果D4における依存関係をツリー上にプロットした具体例を示す説明図である。図10に示すように、「共通.上限パラメータ」に「1」、「共通.下限パラメータ」に「2」、「アナログ.デバイス番号」に「1231」、「アナログ.入出力項目番号」に「0001」が実際に入力されたときの状態を示している。この場合、「アナログ.上限値2」が無効な状態となり、その他が、「アナログ.入力フラグ」の入力待ち状態になっている。
定義解釈手段4では、入力支援定義D22に含まれる入力項目がループしているか否かについても検証する。
レイアウト定義手段5では、定義読込手段3で読み込んだ読み込み定義情報D3内の構成定義D24に含まれている入力項目の並び順を、定義解釈手段4による定義解釈結果D4による依存関係順に従いレイアウトを行うレイアウト定義処理を実行しレイアウト定義情報D5を得る。
図8及び図9の例で示す依存関係の定義解釈結果D4が得られた場合、例えば「アナログ.名称その1」、「アナログ.名称その2」は、「アナログ.入力フラグ」が設定されたのちに、初めて利用可能となる入力項目である。このことから、「アナログ.名称その1」及び「アナログ.名称その2」は、「アナログ.入力フラグ」の後にレイアウトされることになる。
図11はレイアウト定義手段5によって得られるレイアウト定義情報D5が指示する入力項目がレイアウトされた後の並び順を示す説明図である。
順序定義D23に定義されたツール間で同一入力項目を定義することがある。例えば、「アナログ.デバイス番号」、「アナログ.入出力項目番号」がその一例である。レイアウト定義手段5では、順序定義D23に定義されているツールの中で、最初に「アナログ.デバイス番号」、「アナログ.入出力項目番号」を構成に含めるツールに編集権を与え、その他のツールは該当する入力項目の入力支援定義D22の設定をすべて無効にし、編集権のあるツールの入力項目から値入力支援の機能を利用し、値参照するように動的に変更する。例えば、図7で示した順序定義D23の例では、「アナログ.デバイス番号」、「アナログ.入出力項目番号」は識別子220が「アナログ一覧表」のツールに編集権が与えられる。なお、上記したルールに編集権を与える方法は一例であり、同一入力項目を定義する双方のルーツ間で反映し合うことも可能である。
レイアウト定義手段5では、それぞれのツールを構成する入力項目の並び順を決定したのちに、それぞれの入力項目に埋め込む入力支援プログラム用のパラメータを生成する。入力支援プログラムのパラメータは、条件式210と支援値211から構成される。
レイアウト定義手段5は、条件式210や支援値211に含まれる入力項目が、どのツールの左から何番目の列に配置されたのかといった依存先の入力項目の位置情報を取得し、条件式210や支援値211に含まれる入力項目をその位置情報に置換する。なお、ツールによっては、パラメータ生成は不要な場合もある。
ツール出力手段6では、レイアウト定義情報D5が指示する入力項目の並び順にツールをレイアウトし、入力項目に埋め込む入力支援プログラムが上記パラメータで指示する内容で動作するように設定し、ツール起動後、入力項目へのデータ入力に応じて、入力支援プラグラムが動作することにより、動的に他の入力項目が入力できる仕様が実現可能な出力用ツール情報D6を出力する。
そして、ツール出力手段6より出力された出力用ツール情報D6は、データ管理部7によって管理される。
次に、CPU10が記憶装置13に記憶されている監視制御アプリケーション設計支援プログラムを実行することにより行われる、本実施の形態に係る監視制御アプリケーション設計装置1(監視制御アプリケーション設計支援プログラム)の処理手順を図12〜図17を用いて説明する。
図12では、定義部2が扱うそれぞれの定義を追加・変更・削除を行う動作シーケンスである。なお、入力項目仕様定義D21、入力支援定義D22、順序定義D23、構成定義D24それぞれは、入力できる属性は異なるが、追加、変更、削除、検索等の処理内容は同じであることから、今回は入力支援定義D22の動作シーケンスに限定して説明する。
ステップS1において、起動済みの監視制御アプリケーション設計支援装置1の定義部2を起動する。ステップS2では、入力項目仕様定義D21、入力支援定義D22、順序定義D23、構成定義D24の内、どの定義を追加、変更、削除、検索等するかを選択する。ステップS3では、選択した定義の内、新規で追加するのか、一覧で表示するのかを選択する。
ステップS4〜S6は、ステップS3にて新規追加を選択した時のシーケンスである。ステップS4では、定義を構成する属性が空で表示され、ユーザは空欄で表示されている属性に情報を選択または入力していく。入力支援定義D22の場合は、入力項目に関しては、入力項目仕様から値を取得し、ユーザはその中から選択又は検索等の手段を利用し、該当する入力項目を選ぶ。また、無効入力支援71、リストボックス入力支援72、値入力支援73、絞込入力支援74、一意制約検定75、数字サイズ検定76、文字列長検定77、必須入力支援78、一括入力支援79それぞれの条件式210や支援値211には直接ユーザが情報を入力する。
ステップS5では、ユーザが入力した情報を保存するため、ボタン等を押下する。ステップS6では、入力された入力支援定義D22を記憶装置13に記録し、ステップS3に戻る。ただし、既に入力項目に関する入力支援定義D22が記録装置13に記録されている場合は、エラーとしてユーザに通知する。
ステップS7〜S9はステップS3にて一覧表示を選択した時の動作シーケンスである。ステップS7では、記録装置13、すなわち、定義部2に格納されているすべての入力支援定義D22を取得する。取得した入力支援定義D22が規定する定義数が多い場合は、ステップS8にて、絞り込みたい条件を指定し、検索することで条件に該当する定義情報D2のみ一覧で表示できるようになる。ステップS9にて、該当する定義をクリックし、その詳細を表示する。ステップS10にて、戻るボタンを押下することで、ステップS3に戻る。
ステップS11は、入力支援定義D22を削除する動作シーケンスである。ステップS10にて、ユーザが削除ボタンを押下することで、記録装置13に格納されている該当入力支援定義D22を削除し、ステップS3へ戻る。
ステップS12〜S14は、入力支援定義D22を変更する動作シーケンスである。ステップS12にて、ユーザによってクリックされた入力支援定義D22を編集する画面を表示し、ユーザがその編集画面上で定義の書き換えを行う。ステップS13にて、ユーザが変更ボタンを押下することで、記憶装置13に格納されている該当入力支援定義を変更して、記憶装置13に保存し、ステップS14にて、戻るボタンを押下することで、ステップS10に戻る。
ステップS2にて戻るボタンを押下するとステップS1へと戻り、ステップS1にて終了ボタンを押下すると監視制御アプリケーション設計装置1のプログラムが終了する。
このように、図12で示すフローによって、記憶装置13、すなわち、定義部2内に入力項目仕様定義D21、入力支援定義D22、順序定義D23及び構成定義D24からなる定義情報D2が格納される。
図13は定義読込手段3が定義部2の定義情報D2を読み込む動作シーケンスを示すフローチャートである。図14は定義解釈手段4による定義解釈処理の処理手順を示すフローチャートである。図15はレイアウト定義手段5によるレイアウト定義処理も処理手順を示すフローチャートである。
これらの一連の処理は、ユーザが所定のツール起動ボタンを押下することにより実行される。
図13を参照して、定義読込手段3が定義部2の定義情報D2を読み込む動作シーケンスを説明する。
ステップS30にて、定義部2(記憶装置13)に格納されている順序定義D23を読込む。
ステップS31にて、順序定義D23に定義されているツールを一つずつ取り出し、取りだしたツールを検索キーとして、構成定義D24に含まれる入力項目を検索する。
ステップS32にて、入力項目仕様定義D21及び入力支援定義D22を読込み、ステップS31の検索にて得られた入力項目に関する入力項目仕様定義及び入力支援定義を取得する。以下、ステップS32で取得した入力項目仕様定義及び入力支援定義を入力項目仕様定義D21x,入力支援定義D22xとする。
そして、ステップS33にて、ツール単位に、取得した入力項目、入力項目仕様定義D21x、入力支援定義D22xからなる読み込み定義情報D3をメモリ(RAM12)上のキャッシュデータCD10として蓄積する。なお、入力項目が重複している場合は、キャッシュデータCD10には蓄積しない。
なお、本明細書では説明の都合上、図13で示すフローチャートをシーケンシャルな動作として説明している。しかし、実際にはステップS32,S33の処理は構成定義の入力項目毎に繰り返し行われる処理であり、ステップS31〜S33の処理はツール毎に繰り返し行われる処理である。そこで、実際の処理内容を反映させるべく、図13のステップS30,S31間、ステップS31,S32間それぞれにループ開始図形を挿入し、ステップS33の後工程に2つのループ終了図形を挿入している。同様の理由で、以降で述べる図14〜図16,図18,図21,図22においてもループ開始図形,ループ終了図形を適宜、挿入している。
次に、図14を参照して、定義解釈手段4による定義解釈処理の処理手順を説明する。
同図を参照して、ステップS40にて、キャッシュデータCD10(読み込み定義情報D3)を読み込む。
ステップS41にて、読み込み定義情報D3から入力項目を一つずつ取り出し、入力支援定義D22xにおける条件式、支援値を取得する。
そして、ステップS42にて、入力支援定義D22xにおける全種類の条件式に対して、入力項目が含まれていないかを解析する。
その後、ステップS43にて、解析によって得られた入力項目、条件式、種類をキャッシュデータCD11(定義解釈結果D4)として登録する。なお、条件式で指定された入力項目がキャッシュデータCD10(読み込み定義情報D3)に含まれていない場合や入力項目として認識されたが、キャッシュデータCD11に登録されていない場合は、ユーザにエラーを通知する。
ステップS44にて、入力支援定義D22xの種類すべての支援値に対して、入力項目が含まれていないかを解析し、解析によって入力項目があった場合は、入力項目、支援値、種類をキャッシュデータCD11として登録する。なお、入力項目として認識されたが、キャッシュデータCD11に登録されていない場合は、ユーザにエラーを通知する。
ステップS45にて、キャッシュデータCD11をすべて取得し、キャッシュデータCD11に登録された入力項目から依存関係を生成し、ツールにおける入力項目間の依存関係を条件式及び支援値の内容を含めて規定した定義解釈結果D4をキャッシュデータCD12として登録する。なお、キャッシュデータCD12には読み込み定義情報D3も含まれる。
なお、図14において、ステップS42〜S45の処理はステップS41で選択された入力項目毎に繰り返し行われ、ステップS41〜S45の処理はツール毎に繰り返し行われる。
次に、図15を参照して、レイアウト定義手段5によるレイアウト定義処理の処理手順を説明する。図15で示すレイアウト定義処理は、定義解釈手段4によって得られた定義解釈結果D4が指示する入力項目の依存関係に基づき、レイアウト定義手段5がツールを構成する入力項目の並び順と、入力項目に埋め込む入力支援プログラム用のパラメータを生成する処理である。
まず、ステップS60において、キャッシュデータCD12(読み込み定義情報D3+定義解釈結果D4)を読込む。
ステップS61aにて読み込み定義情報D3内の順序定義D23を読込む。その後、ステップS61bにて、順序定義D23に定義されているツールを一つずつ取り出し、ツール単位に、順序定義D23のツールに関し、識別子をキーとして読み込み定義情報D3から構成定義D24を読み込み、入力項目を取得する。
その後、ステップS62にて、入力項目がどの他の入力項目に依存しているかをキャッシュデータCD12の定義解釈結果D4から取得する。
ステップS63にて、他の入力項目が並び順を格納するキャッシュデータCD13に蓄積されているかをチェックする。蓄積されていなければエラーとする。なぜならば、依存される側の他の入力項目の並び順が先であるため、キャッシュデータCD13に既に蓄積されている必要があるからである。
その後、ステップS64にて、ステップS62で認識した依存関係に基づき入力項目を並び順にしてキャッシュデータCD13として格納する。
ステップS64の処理が完了後、新たな入力項目順に並んだ一つ一つの入力項目毎に、入力項目間の依存関係を示す入力支援プログラム用のパラメータを生成する。
ステップS65にて、キャッシュデータCD13に格納されている入力項目順に、キャッシュデータCD12内の読み込み定義情報D3における入力支援定義を取得する。
ステップS66にて、入力項目が、既に別のツールにて利用されているか否かを検証する。
ステップS67にて、既に別のツールで利用されている場合は、当該入力項目の入力支援定義をすべて破棄し、ステップS68にて、既に利用されているツールの入力項目の番号が配置されている列番号(入力項目位置情報)を取得し、値入力支援用のパラメータを生成する。その後、ステップS69に移行する。
ステップS66にて、入力項目が、既に別のツールにて利用されていないとする判定の場合、ステップS67及びS68を経由することなく、ステップS69において、入力項目支援の条件式や支援値内に含まれる入力項目に対し、新たに並び変えられた列の番号に置き換えを行い、それぞれの種別に応じた入力支援プログラム用のパラメータを生成する。
そして、ステップS70にて、ツールの入力項目間の依存関係に加え、値入力支援用のパラメータ及び入力支援プログラム用のパラメータを規定したレイアウト定義情報D5をキャッシュデータCD14として登録する。なお、キャッシュデータCD14内に読み込み定義情報D3を含ませても良い。
なお、図15において、ステップS62〜S64の処理は入力項目毎に繰り返し行われ、ステップS61b〜S64の処理はツール毎に繰り返し行われる。また、ステップS66〜S70の処理は入力項目単位及びツール毎に繰り返し行われる。
図16及び図17は、ユーザがツール出力手段6を起動し、出力用ツール情報D6を出力し、出力用ツール情報D6で規定される入力項目にユーザがデータを入力する動作を示すシーケンスである。
図16では、定義部2(記録装置13)に格納されている定義情報D2を読込み、出力用ツール情報D6を得るまでの動作シーケンスである。
図16を参照して、ステップS80にて、定義部2に格納されている定義情報D2から順序定義D23を読込む。
ステップS81にて、順序定義D23のツールの識別子を検索キーとして、定義部2に格納されている定義情報D2から構成定義D24を読込む。なお、ステップS80及びS81において、定義情報D2に代えて、キャッシュデータCD14内に読み込み定義情報D3が含まれる場合、キャッシュデータCD14の読み込み定義情報D3からから順序定義D23及び構成定義D24を読み込んでも良い。
ステップS82にて、キャッシュデータCD14内のレイアウト定義情報D5に基づき、順序定義D23のツール一つ一つに対して表示順に並べられた入力項目と入力支援用の種類並びにそのパラメータ(入力支援プログラム用のパラメータ,値入力支援用のパラメータ)を取得する。
ステップS83にて、入力項目の各フィールドにパラメータで示した内容が動的に実現可能な入力支援プログラムを埋め込む。その結果、入力項目を並べ且つ、入力項目におけるパラメータが規定する入力依存関係を動的に実現する入力支援プログラムを埋め込んだ出力用ツール情報D6を得ることができる。
この出力用ツール情報D6はデータ管理部7に保存・管理される。なお、入力支援プログラムとは、パラメータで指示された条件式及び支援値による処理等が自動的に実行されるように制御するプログラムを意味する。
なお、図16において、ステップS82〜S83の処理は入力項目毎に繰り返し行われ、ステップS81〜S83の処理はツール毎に繰り返し行われる。
図17では、ユーザが図16の得られた出力用ツール情報D6で規定される入力項目にデータを入力した時の動作シーケンスである。
図17を参照して、ステップS90にて、出力用ツール情報D6を読み出し、ユーザが所望の入力項目に入力可能な表示形態で出力用ツール情報D6の内容を表示する。この環境下でユーザが表示された出力用ツール情報D6に規定された入力項目に相当する領域にデータを入力する。
その後、ステップS91で、ツール出力手段6は、データが入力されたことを検知する。
そして、ステップS92にて、データが入力されたというイベントを入力支援プログラムがウォッチし、自身が依存する入力項目である場合、そのデータを取込み、そのデータに基づく入力支援プログラムが実行される。
以上のような実施の形態1に係る監視制御アプリケーション設計装置1によれば、定義部2に定義された定義情報D2におけるツールが構成する入力項目の入力支援定義D22から、入力項目が依存する他の入力項目を自動的に得ることができ、入力依存関係に従い、依存性の低い入力項目を左から右の順に並べ且つ、その並びに従った入力支援プログラムを動的に生成することができる。
したがって、利用するツールの順序や、ツールを構成する入力項目を変更した場合でも、ツールを構成する入力項目の入力支援定義D22の依存関係に従い、定義読込手段3、定義解釈手段4及びレイアウト定義手段5を動作させることにより、最終的に変更後のツールの出力用ツール情報D6を自動で決定することができる。また、ユーザが出力用ツール情報D6の表示状態時における入力項目に入力するデータの選択肢や入力できる範囲などの入力支援を他の入力項目に入れたデータに応じて動的に変えることにより、入力精度を向上させることができる。
このように、実施の形態1の監視制御アプリケーション設計装置1は、定義読込手段4による定義解釈処理、レイアウト定義手段5によるレイアウト定義処理を経て、最終的にツール出力手段6により、ツール単位に、入力項目を並べ且つ、入力項目に入力支援プログラムを埋め込んで得られる出力用ツール情報D6を得ることができる。
したがって、実施の形態1の監視制御アプリケーション設計装置1は、利用するツールの順序や、ツールを構成する入力項目を変更した場合でも、ツールを構成する入力項目の入力支援定義D22の依存関係に従い、ツールにおける入力項目を並べ順であるルールのレイアウトを自動で決定した出力用ツール情報D6を得ることができるため、監視制御アプリケーションを使用するユーザに対する負担を軽減することができる。
<実施の形態2>
実施の形態2に係る監視制御アプリケーション設計装置1のハードウェア構成及び機能ブロック構成は、実施の形態1に係る監視制御アプリケーション設計装置1のハードウェア構成及び機能ブロック構成とそれぞれ同じである。以下、本実施の形態に係る監視制御アプリケーション設計装置1のハードウェア構成、及び、機能ブロック構成において、実施の形態1と同一の部分には同一符号を付与し、以下においては実施の形態1と異なる部分を中心に説明する。
本実施の形態に係る監視制御アプリケーション設計装置1においては、定義解釈手段3は、キャッシュデータCD10(読み込み定義情報D3)に含まれていない入力項目があった場合、実施の形態1とは異なり、該当する入力項目を定義部2(記録装置13)に保存されている入力項目仕様定義D21及び入力支援定義D22から取得するようになっている。
図18は実施の形態2における定義解釈手段4による定義解釈処理を示すフローチャートである。本実施の形態に係る監視制御アプリケーション設計装置1の動作について図18を用いて説明する。
図18を参照して、実施の形態1で説明したステップS40,S41(図14)と同様の処理が行われる。
そして、ステップS42Aにて、入力項目支援の種類のすべての条件式に対して、入力項目が含まれていないかを解析し、ステップS43Cにおいて、解析によって得られた入力項目、条件式、種類をキャッシュデータCD11に登録する。
なお、条件式が指示する入力項目がキャッシュデータCD10に含まれておらず入力項目として認識されない場合、あるいは入力項目として認識されたが当該入力項目がキャッシュデータCD11に登録されていない場合の2つの場合のいずれかに該当する入力項目である不存在入力項目の発生時に、エラーを通知することなくステップS43Bに遷移する。ステップS43Bにて、不存在入力項目に該当する入力項目仕様定義D21及び入力支援定義D22を定義部2から検索する。検索した結果、該当する入力項目がない場合は、この時点でユーザにエラーを通知する。該当した場合は、該当した入力項目に対してS41,S42Aの処理を実行する。その後、ステップS43Cにて、ステップS43Bにおいて取得した入力項目がキャッシュデータCD11として登録される。
またステップS44Aにて、入力項目支援の種類すべての支援値に対して、入力項目が含まれていないかを解析し、解析によって入力項目があった場合は、ステップS45Cにおいて、入力項目、支援値、種類をキャッシュデータCD11に登録する。なお、入力項目として認識されたが、キャッシュデータCD11に登録されていない不存在入力項目の場合は、ユーザにエラーを通知することなくステップS44Bに遷移する。
ステップS44Bにて、不存在入力項目に該当する入力項目仕様定義D21及び入力支援定義D22を定義部2から検索する。検索した結果、該当する入力項目がない場合は、ユーザにエラーを通知する。該当した場合は、該当した入力項目に対し、ステップS41,S42A及びS44Aの処理を実行する。その後、ステップS45Cにて、ステップS44Bで取得した入力項目がキャッシュデータCD12に登録される。
なお、図18において、ステップS42A〜S45Cの処理はステップS41で選択された入力項目毎に繰り返し行われ、ステップS41〜S4C5の処理はツール毎に繰り返し行われる。
以上のような実施の形態2に係る監視制御アプリケーション設計装置1によれば、定義部2の構成定義D24として重要な入力項目のみを定義するだけで、定義解釈手段3が、定義部2から入力項目の入力支援定義D22の条件式や支援値に含まれる依存関係にも基づき、ツールを構成するために必要な入力項目を自動で見つけ出すことができる。これにより、ユーザは構成定義D24にツールを構成するすべての入力項目を定義しなくて良く、定義の手間を削減することができる。
このように、実施の形態2の監視制御アプリケーション設計装置1は、構成定義D24にツールを構成するすべての入力項目を定義しなくて良く、重要な入力項目のみを定義するだけで、定義解釈手段4によってツールを構成するために必要な入力項目を自動的に見いだされる結果、最終的に出力用ツール情報D6内の上記ツールのレイアウトを自動で決定することができる。したがって、ユーザによる構成定義D24を作成する手間の軽減を図ることができる。
<実施の形態3>
実施の形態3に係る監視制御アプリケーション設計装置のハードウェア構成及び機能ブロック構成は、実施の形態2に係る監視制御アプリケーション設計装置1のハードウェア構成及び機能ブロック構成とそれぞれ同じである。以下、本実施の形態に係る監視制御アプリケーション設計装置1のハードウェア構成、及び、機能ブロック構成において、実施の形態1、実施の形態2と同一の部分には同一符号を付与し、以下においては実施の形態1、実施の形態2と異なる部分を中心に説明する。
実施の形態3に係る監視制御アプリケーション設計装置1においては、ツール出力手段6は、ツール出力手段6が出力中の全ツールの入力項目以外の項目を新たに追加しようとした場合、実施の形態1とは異なり、新たに追加する入力項目を定義部2に保存されている入力項目仕様定義D21及び入力支援定義D22から取得すると同時に、当該入力項目を配置するツールを要変更ツールとして選択することができる。そして、実施の形態3のツール出力手段6は、当該要変更ツールに関し、新たに追加された状態を反映した入力項目の並び順及び入力支援プログラムの再構築と指定する要変更ツール指定機能を有している。
図19は、ツール出力手段6による要変更ツール指定機能の動作シーケンスを示すフローチャートである。この要変更ツール指定機能は、実施の形態1あるいは実施の形態2の全ステップを実行後、ツール出力手段6による要変更ツール指定機能を起動させることにより実行される。
同図を参照して、ステップS100では、定義部2(記憶装置13)に格納されているすべての入力項目のうち、ツール出力手段6で未使用な入力項目を取得する。
その後、ステップS101で、ユーザは、該当する入力項目を選択する。
ステップS102で、定義部2に格納されている順序定義D23を取得し、ユーザは、新たに選択した入力項目を追加するツールを選択する。
その後、ステップS103で、ユーザはツールの再構築処理を実行させる。すなわち、実施の形態1の図13〜図17(図14に代えて図18でも可)で示した定義読込手段3、定義解釈手段4及びレイアウト定義手段5による定義読み込み処理、定義解釈処理及びレイアウト定義処理を順に再実行させる。
その後、ステップS104にて、新たに得られたレイアウト定義手段5からのキャッシュデータCD14等に基づき、新たに挿入された入力項目の位置を検出し、挿入された位置に前に配置された入力項目に関する情報が格納されていれば、この古い情報を適切な入力項目が配置された列へと移動する入力項目に関する情報の配置転換処理を行い、変更されたツールに適合した新たな出力用ツール情報D6を生成する。
そして、ステップS105において、新たに挿入された入力項目に関する情報を定義情報D2の構成定義D24内に含める書き換え処理を行う。
なお、ステップS100の処理を本処理はツール出力手段6から呼び出すことが可能である。
以上のような実施の形態3に係る監視制御アプリケーション設計装置1によれば、追加した入力項目の仕様に基づき変更の必要のなるツールに対し、入力項目の並び替え且つ、入力支援プログラムの再埋め込みを行えるので、ユーザが表示状態の出力用ツール情報D6における入力項目へのデータの投入最中又は投入後でも、新たに入力項目を追加することが可能となる。
また、この応用例として、入力項目へのデータの投入最中又は投入後でも、ツール出力手段6が既に構成している入力項目の入力項目支援定義の条件式や支援値を変更することもできる。
このように、実施の形態3の監視制御アプリケーション設計装置1は、ツール出力手段6に要変更ツール指定機能を持たせることにより、追加した入力項目の仕様に基づき、要変更ツールに関し、入力項目の並び替え且つ、入力支援プログラムの再埋め込みを行った後の出力用ツール情報D6を得ることができる。このため、ツールを構成する入力項目へのデータの投入最中又は投入後でも、新たに入力項目を追加することが可能となる。
<実施の形態4>
実施の形態4に係る監視制御アプリケーション設計装置のハードウェア構成及び機能ブロック構成は、実施の形態2、実施の形態3に係る監視制御アプリケーション設計装置1のハードウェア構成及び機能ブロック構成とそれぞれ同じである。以下、本実施の形態に係る監視制御アプリケーション設計装置1のハードウェア構成、及び、機能ブロック構成において、実施の形態1〜実施の形態3と同一の部分には同一符号を付与し、以下においては実施の形態1〜実施の形態3と異なる部分を中心に説明する。
実施の形態4のツール出力手段6は、出力用ツール情報D6内に入力項目支援定義に定義された条件値や支援値に従いデータが適切に入力されているかを最終チェックするデータ検証処理が実行可能である。
図20は実施の形態4によるツール出力手段6によるデータ検証処理を示すフローチャートである。
次に、本実施の形態に係る監視制御アプリケーション設計装置1の動作について図20を用いて説明する。
ステップS130にて、ユーザがツール出力手段6にある検証ボタンをクリックし、データ検証処理を開始する。
ステップS131にて、ツール出力手段6で登録された出力用ツール情報D6で規定される全ての入力項目の読み込みを実行する。
ステップS132にて、ステップS131で読み込んだ全ての入力項目について入力支援定義を取得し、ステップS133にて、条件式及び支援値に含まれている他の入力項目の値を取得する。
ステップS134にて、取得した他の入力項目の値を用いて条件式や支援値を実行する。すなわち、データ検証処理は入力支援プログラムの代わりに、他の入力項目の値を用いて条件式や支援値を実行する入力支援実行機能を有している。
その後、ステップS135にて、ステップS131で読み込んだ全ての入力項目に関し、該当結果が入力結果と合致しているかを検証する。合致していない場合は、ステップS136にて、該当箇所をキャッシュデータCD15に記録する。全処理完了後ステップS137にて、キャッシュデータCD15に含まれているエラー結果をユーザに通知する。
以上のような実施の形態4に係る監視制御アプリケーション設計装置1によれば、入力支援プログラムを使用しない又は使用できない環境においても、ツール出力手段6のデータ検証処理を実行させることにより、出力用ツール情報D6で規定される全ての入力項目へのデータ登録が適切になされているかを自動で再チェックすることができる。
<実施の形態5>
実施の形態5に係る監視制御アプリケーション設計装置のハードウェア構成及び機能ブロック構成は、実施の形態2、実施の形態3に係る監視制御アプリケーション設計装置1のハードウェア構成及び機能ブロック構成とそれぞれ同じである。以下、本実施の形態に係る監視制御アプリケーション設計装置1のハードウェア構成、及び、機能ブロック構成において、実施の形態1〜実施の形態3と同一の部分には同一符号を付与し、以下においては実施の形態1〜実施の形態3と異なる部分を中心に説明する。
定義部2において、入力支援定義D22の条件式または支援値に使用している文字列、例えば「連結OP :: '||' | ‘&&’」における「||」を「又は」や「&&」を「且つ」のように、人間が可読できる表現のマッピングテーブルを保持することにより、ツール出力手段6が出力用ツール情報D6を出力している表示形態における入力項目に関する仕様を、ツールを利用するユーザが可読できるドキュメントに変換することができる。
図21は実施の形態5のツール出力手段6による仕様内容表現変換機能を示すフローチャートである。
次に、本実施の形態に係る監視制御アプリケーション設計装置1の動作について図21を用いて説明する。なお、定義部2に、マッピングテーブルを管理させることと、図12のステップS2を改良し、ステップS2Aでは、入力項目仕様定義D21、入力支援定義D22、順序定義D23、構成定義D24、マッピングテーブルの内、どの定義を追加、変更、削除、検索等するかを選択する。
図21を参照して、ステップS110にて、ツール出力手段6が出力中の出力用ツール情報D6におけるツールに関する定義情報D2(順序定義D23、構成定義D24、入力項目仕様定義D21、入力支援定義D22)を取得する。
ステップS111にて、マッピングテーブルを定義部2(記憶装置13)から取得する。
ステップS112にて、入力支援定義D22の条件式や支援値に含まれる当初表示用語に対応するマッピングテーブルに含まれる変換対象用語を検索する。
ステップS113にて、該当する変換対象用語がある場合は、当初表示用語を変換対象用語に置換する。例えば、当初表示用語が‘&&’の場合、変換対象用語の「且つ」に置換する。
ステップS114にて、置換後の条件式及び支援値を規定した出力用ツール情報D6をキャッシュデータCD16として格納する。すべての処理完了後、ステップS115にて、キャッシュデータCD16に格納されている情報を、電子ファイル等に保存する。
なお、図21において、ステップS111〜S114の処理はツール毎に繰り返し行うことができる。
以上のような本実施の形態に係る監視制御アプリケーション設計装置1によれば、出力用ツール情報D6を出力している表示形態の入力項目にデータを入力するユーザが、条件式の内容等、可読できるデータ入力仕様書を自動生成することができる。
すなわち、実施の形態5の監視制御アプリケーション設計装置1のツール出力手段6は仕様内容表現変換機能を有しているため、出力用ツール情報D6で規定される入力項目にデータを入力するユーザが、可読できる仕様書(入力項目の仕様内容)を自動生成することができる。
<実施の形態6>
実施の形態6に係る監視制御アプリケーション設計装置のハードウェア構成及び機能ブロック構成は、実施の形態2、実施の形態3に係る監視制御アプリケーション設計装置1のハードウェア構成及び機能ブロック構成とそれぞれ同じである。以下、本実施の形態に係る監視制御アプリケーション設計装置1のハードウェア構成、及び、機能ブロック構成において、実施の形態1〜実施の形態3と同一の部分には同一符号を付与し、以下においては実施の形態1〜実施の形態3と異なる部分を中心に説明する。
定義部2において、入力仕様定義の属性に変換ロジック205を新たに追加し、出力用ツール情報D6で規定されるツールに入力したデータを外部のファイルやシステムに投入する際、変換ロジック205に定義されたロジックにて入力されたデータを変換することができる。例えば日付フォーマットがその一例であり、「yyyyMMdd」形式で入力されたデータを、「dd/MM/yyyy」という形式に変換する場合に利用する。
図22は実施の形態6のツール出力手段6による表現形式変換機能を示すフローチャートである。
次に、本実施の形態に係る監視制御アプリケーション設計装置1及びプログラムの動作について図22を用いて説明する。
ステップS120にて、ユーザがツール出力手段6にある表示変換ボタンをクリックし、表現形式変換処理を開始する。
ステップS121にて、ツール出力手段6で登録された出力用ツール情報D6で規定される入力項目に入力された全データの読み込みを実行する。
ステップS122にて、入力項目の表示形式仕様に変換ロジックが設定されているものに関しては、変換ロジックに従い、入力項目内のデータを変換する。
ステップS123にて、データ変換後の出力用ツール情報D6をキャッシュデータCD17として格納する。すべての処理が完了後、ステップS124にて、キャッシュデータC17に格納したデータ変換後の出力用ツール情報D6を電子ファイルまたは外部システム等に保存または投入する。
なお、図22において、ステップS122〜S123の処理は入力項目毎に繰り返し行われる。
以上のような本実施の形態6に係る監視制御アプリケーション設計装置1によれば、ツールに入力するデータの表現形式と、他のツールや監視制御アプリケーション設計装置及びプログラムやアプリケーションが読み込むデータの表現形式が異なる場合、その形式適した形に変換したデータを生成することで、変換作業の無駄を削減することができる。
このように、実施の形態6の監視制御アプリケーション設計装置1のツール出力手段6は、出力用ツール情報D6における入力項目の表現形式を他の装置が処理可能な表現形式に変換する表現形式変換機能を有している。このため、出力用ツール情報D6で規定されたツールの入力項目に入力するデータの表現形式と、他のツールや監視制御アプリケーション設計装置及びプログラムやアプリケーションが読み込むデータの表現形式が異なる場合、その形式に適した表現形式に変換したデータ仕様の入力項目を規定した出力用ツール情報D6を生成することにより、変換作業の無駄を削減することができる。
<プログラムへの応用>
実施の形態1〜実施の形態6で示した監視制御アプリケーション設計装置1のうち、定義読込手段3、定義解釈手段4、レイアウト定義手段5及びツール出力手段6による処理をコンピュータ実行可能なプログラム(監視制御アプリケーション設計支援プログラム)として記述することができる。
したがって、上記したプログラムをコンピュータに実行させることにより、実施の形態1〜実施の形態6で示し監視制御アプリケーション設計装置1と同様な効果を得ることができる。
<その他>
以上、本発明の実施の形態を詳細に開示し記述したが、以上の記述は本発明の適用可能な局面を例示したものにすぎず、本発明はこれに限定されるものではない。すなわち、記述した局面に対応する様々な例を、この発明の範囲から逸脱すること無い範囲内で考えることが可能となる。
1 監視制御アプリケーション設計装置、2 定義部、3 定義読込手段、4 定義解釈手段、5 レイアウト定義手段、6 ツール出力手段、7 データ管理部。

Claims (7)

  1. 複数のデバイスの入出力点におけるデータを監視制御するアプリケーションを設計するための出力用ツール情報をツール単位に生成する監視制御システム設計装置であって、
    デバイスの入力点の仕様を構成する入力項目仕様定義と、他の入力項目に入力されたデータに応じて入力項目の仕様を変化させる入力支援定義と、どのツール順に設計を進めていくかを定めた順序定義と、ツールを構成する入力項目の構成定義とを規定する定義情報を格納する定義部と、
    前記定義情報に基づき、前記順序定義で規定された順序で、ツールを構成する入力項目における前記入力項目仕様定義及び前記入力支援定義を読み込んで読み込み定義情報を得る定義読込手段と、
    前記定義読込手段が読み込んだ前記読み込み定義情報に基づき、前記入力項目の仕様に含まれる他の前記入力項目との依存関係を解釈する定義解釈処理を実行して定義解釈結果を得る定義解釈手段と、
    前記読み込み定義情報及び前記定義解釈結果に基づいて、ツールを構成する入力項目の並び順、及び各入力項目の入力依存関係を示すパラメータを規定するレイアウト定義情報を決定するレイアウト定義処理を実行するレイアウト定義手段と、
    前記レイアウト定義情報に基づき、ツール単位に、前記入力項目を並べ且つ、前記入力項目における前記パラメータが規定する入力依存関係を実現する入力支援プログラムを埋め込んで得られる前記出力用ツール情報を出力するツール出力処理を実行するツール出力手段と、
    前記出力用ツール情報を保存するデータ管理部とを備える、
    監視制御アプリケーション設計装置。
  2. 請求項1記載の監視制御アプリケーション設計装置であって、
    前記定義解釈手段は、前記定義解釈処理の実行中に、前記入力項目仕様定義に含まれる前記入力項目が依存する他の前記入力項目が前記読み込み定義情報内に含まれていない不存在入力項目が存在する場合、前記定義部の前記定義情報から、前記不存在入力項目の仕様を取得する、
    監視制御アプリケーション設計装置。

  3. 請求項1あるいは請求項2記載の監視制御アプリケーション設計装置であって、
    前記ツール出力手段は、新たに入力項目を追加してツール内容を変更する要変更ツール指定機能を有し、前記要変更ツール指定機能によって指定された要変更ツールに関し、前記定義解釈手段及び前記レイアウト定義手段に前記定義解釈処理及び前記レイアウト定義処理を実行させた後、前記ツール出力処理を再び実行して、変更された前記出力用ツール情報を得る、
    監視制御アプリケーション設計装置。
  4. 請求項1ないし請求項3のうち、いずれか1項に記載の監視制御アプリケーション設計装置であって、
    前記ツール出力手段は、出力用ツール情報で規定された前記入力項目それぞれにおける前記パラメータが規定する入力依存関係に従いデータが入力されているかの成否を検証する検証機能を有する。
    監視制御アプリケーション設計装置。
  5. 請求項1ないし請求項3のうち、いずれか1項に記載の監視制御アプリケーション設計装置であって、
    前記ツール出力手段は、前記出力用ツール情報における前記入力項目の仕様内容の少なくとも一部をユーザが視覚認識可能な表現形式に変換する仕様内容表現変換機能を有する、
    監視制御アプリケーション設計装置。
  6. 請求項1ないし請求項3のうち、いずれか1項に記載の監視制御アプリケーション設計装置であって、
    前記ツール出力手段は、前記出力用ツール情報における前記入力項目の表現形式を他の装置が処理可能な表現形式に変換する表現形式変換機能を有する、
    監視制御アプリケーション設計装置。
  7. 請求項1記載の監視制御アプリケーション設計装置における前記定義読込手段、前記定義解釈手段、前記レイアウト定義手段及び前記ツール出力手段をコンピュータに実行させる、
    プログラム。
JP2011062030A 2011-03-22 2011-03-22 監視制御アプリケーション設計装置及びプログラム Active JP5404681B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011062030A JP5404681B2 (ja) 2011-03-22 2011-03-22 監視制御アプリケーション設計装置及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011062030A JP5404681B2 (ja) 2011-03-22 2011-03-22 監視制御アプリケーション設計装置及びプログラム

Publications (2)

Publication Number Publication Date
JP2012198743A JP2012198743A (ja) 2012-10-18
JP5404681B2 true JP5404681B2 (ja) 2014-02-05

Family

ID=47180896

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011062030A Active JP5404681B2 (ja) 2011-03-22 2011-03-22 監視制御アプリケーション設計装置及びプログラム

Country Status (1)

Country Link
JP (1) JP5404681B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6267971B2 (ja) * 2014-01-23 2018-01-24 株式会社エヌ・ティ・ティ・データ ソースコード解析支援装置、ソースコード解析支援方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005038244A (ja) * 2003-07-16 2005-02-10 Nippon Telegr & Teleph Corp <Ntt> プログラム自動生成装置
JP2007233957A (ja) * 2006-03-03 2007-09-13 Toshiba Corp プラント監視制御プログラム
JP2009187225A (ja) * 2008-02-05 2009-08-20 Canon Inc 情報処理装置、情報処理方法及びプログラム
JP2010134725A (ja) * 2008-12-05 2010-06-17 Hitachi Ltd 制御モデル自動生成装置

Also Published As

Publication number Publication date
JP2012198743A (ja) 2012-10-18

Similar Documents

Publication Publication Date Title
US20150222731A1 (en) Computer, guide information providing method and recording medium
US10963894B2 (en) Facilitating an error analysis of a product deficiency system and method
KR101791536B1 (ko) 규칙 기반의 업무 애플리케이션 작성 및 실행 시스템
US20010025287A1 (en) Document integrated management apparatus and method
KR101986476B1 (ko) 프로그램 작성 장치
US10678864B2 (en) Analysis model preparing system, programming apparatus, and analysis model preparing method
JPH09212353A (ja) 再利用設計支援方法および設計支援装置
CN101710275B (zh) 利用gui工具来编辑工作流逻辑和屏幕的方法和系统
JP5404681B2 (ja) 監視制御アプリケーション設計装置及びプログラム
WO2016207991A1 (ja) 三次元cadシステム装置、並びに三次元cadに用いられる知識管理方法
JP2006277127A (ja) 修正プログラムの比較方法
KR20060102188A (ko) 표준 데이터 관리 시스템
JP4939007B2 (ja) システム設計支援プログラム
JP6993573B2 (ja) プログラム解析方法、プログラム解析装置およびプログラム解析プログラム
JP6665637B2 (ja) プログラム作成支援システム
JP2000155714A (ja) アプリケーション開発支援方法および開発支援システム
KR101765324B1 (ko) Sql과 다이어그램을 이용하는 소스코드 생성 장치 및 그의 처리 방법
JP2021002126A (ja) 設計支援装置、設計支援方法及び設計支援プログラム
KR102340453B1 (ko) 정보 처리 장치, 정보 처리 방법 및 기록 매체에 저장된 정보 처리 프로그램
EP4261678A1 (en) Generation of a technical instruction
US11977866B2 (en) Application screen display program installing method
US20230025013A1 (en) Related Data Extraction Apparatus, Related Data Extraction System, Related Data Extraction Method, and Related Data Extraction Program
JP4361750B2 (ja) 情報提供装置
JP2017091027A (ja) システム開発支援システム
Schöberl et al. Documenting and Comparing OPC UA Information Models

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20121003

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130717

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130723

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130823

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20131001

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131029

R150 Certificate of patent or registration of utility model

Ref document number: 5404681

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250