エンジニアリングシステム
【課題】 本発明は、コントローラ機器に依存せず、プロセスアプリケーションの階層構造に従って、ワークフレーム設計の支援を図る。
【解決手段】 ワークフレーム生成部1が、書込可能なワークフレームを生成し、ワークフレーム記憶部2には、ワークフレーム生成部により生成されたワークフレームD1 〜Dj ,DC,B1 〜Bk ,BC,DM1 〜DMn ,DMC,U1〜Um ,UC,S,Cが夫々記憶され、ポインタpが、ワークフレーム生成部により生成されたワークフレームをワークフレーム記憶部内の他のワークフレームに上位/下位の階層関係をもたせてリンクさせ、オブジェクト書込部3が、ワークフレーム記憶部内の各ワークフレーム毎に、プログラム、データ又はその両者からなるオブジェクトを書込むことにより、ワークフレームの階層構造を実現できるエンジニアリングシステム。
【解決手段】 ワークフレーム生成部1が、書込可能なワークフレームを生成し、ワークフレーム記憶部2には、ワークフレーム生成部により生成されたワークフレームD1 〜Dj ,DC,B1 〜Bk ,BC,DM1 〜DMn ,DMC,U1〜Um ,UC,S,Cが夫々記憶され、ポインタpが、ワークフレーム生成部により生成されたワークフレームをワークフレーム記憶部内の他のワークフレームに上位/下位の階層関係をもたせてリンクさせ、オブジェクト書込部3が、ワークフレーム記憶部内の各ワークフレーム毎に、プログラム、データ又はその両者からなるオブジェクトを書込むことにより、ワークフレームの階層構造を実現できるエンジニアリングシステム。
【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ハードウェアとソフトウェアとを同時に開発し得るエンジニアリングシステムに関する。
【0002】
【従来の技術】従来、複数のプロセス機器とそれを制御するコントローラからなるプロセスを制御するための制御プログラムを作成する場合、プログラミングを支援するための複数のプログラミングツールが各コントローラ個別に存在している。また、各プログラミングツールは、制御ソフトウェア、信号定義などの機能毎にも個別に存在している。
【0003】このため、プログラミングは、コントローラ毎にプロセス管理範囲や機能分担が決定された後、対応するプログラミングツールを用いて実行される。また、機器の仕様などは、各プログラミングツールとは別のドキュメントツールなどを用いて記録される。
【0004】
【発明が解決しようとする課題】しかしながら以上のようなエンジニアリングシステムでは、複数のプログラミングツールがコントローラ個別に存在するために、コントローラ機器の変更に伴い、多くの場合、プログラムの再利用が不可となってしまう問題がある。
【0005】また、各プログラミングツールとドキュメントツールとが個別に存在するので、制御プログラムなどのソフトウェア情報と、機器の仕様などのドキュメント情報とを共有して連携させることが困難である。
【0006】本発明は上記実情を考慮してなされたもので、コントローラ機器に依存せず、プロセスアプリケーションの階層構造に従って、ワークフレーム設計を支援し得るエンジニアリングシステムを提供することを目的とする。
【0007】また、本発明の他の目的は、仕様書作成、デバイスインターフェース、制御プログラム設計が統合され、プロセスインターフェースなどの共有情報を共有しながら並行して設計を支援可能なエンジニアリングシステムを提供することにある。
【0008】
【課題を解決するための手段】本発明の骨子は、図10に示すように、制御プログラム、登録パラメータ又はドキュメント等のオブジェクトが記述される複数のワークフレームW1 〜W3 を互いに上位、下位の関係で結合して各ワークフレームW1 〜W3 からなる階層構造を生成することにより、ソフトウェア構築や、ソフトウェアと文書の統合管理を行なうエンジニアリングシステムを実現することにある。
【0009】ここで、ワークフレームW1 〜W3 は、作業領域を意味し、それ自体がオブジェクト(プログラムとデータ)である。各ワークフレームW1 〜W3 間はポインタ(スロット)pによりリンクされる。よって、ワークフレームW1 は、他のワークフレームW2 〜W3 を包含できるが、インタフェースは下位のワークフレームが公開するデータ内容又はサービス内容に限定される。
【0010】エンジニアリングシステムでは、ワークフレームW1 〜W3 を図面になぞらえて、制御プログラムや登録パラメータが定義される領域がワークフレームW1 〜W3 として位置付けされる。各ワークフレームW1 〜W3 は、互いを組合せた積層構造により、各種システム制御用のソフトウェア構築を可能としている。
【0011】なお、大規模システムは階層及び水平構造の両者が共に大きく、小規模システムはその両者が共に小さいが、規模の大小に関わらず、必要な制御プログラムがある。そこで、ワークフレームとしては、特定の分野に対して必要なものが予め設けられる。すなわち、ユーザに対しては、予め設けられたワークフレームと、独自に定義されたワークフレームとをポインタで自由に組合せることにより、所望の機能を構築可能としている。また、構築過程において、ワークフレーム単位で再利用を可能としている。ワークフレームは、下位になるほど基本的で再利用の価値が高い。
【0012】階層構造を自由に発生させる方式としては、例えばファイルマネージャ(マイクロソフト社、Windows システム)などが適用可能である。但し、本発明は、ホルダやファイルを自由に発生させるのではなく、ワークフレームという自由な作業領域を発生させる点が重要となっている。すなわち、本発明のポイントは、ワークフレームで記述される内容がプログラムや各種定義、ドキュメントなどのエンジニアリング成果物である点と、自由に組替可能な階層構造をワークフレームに適用してエンジニアリングシステムに応用した点である。
【0013】次に、本発明に係るエンジニアリングシステムをプロセス制御の分野に適用した場合について簡単に述べる。ワークフレームとしては、各プロセス機器毎にデバイスフレームを設け、個別に各プロセス機器を定義する。各プロセス機器に対応するデバイスフレームの集合は、個別にポインタを介して上位のデバイスコレクションフレームで管理される。
【0014】入力、出力、パラメータ等を用いる制御演算や論理演算は、それぞれ関数により示され、各関数毎にブロックフレームにて定義される。各関数に対応するブロックフレームの集合は、ポインタを介して上位のブロックコレクションフレームで管理される。
【0015】これらデバイスコレクションフレーム及びブロックコレクションフレームの上位には、ユニットフレームがリンクされる。ユニットフレームは、各プロセス機器(デバイスフレーム)に対し、それらの入力側又は出力側に関数(ブロックフレーム)を接続することにより、1つの単位のプロセス制御を定義する。
【0016】複数の単位の各プロセス制御に対応するユニットフレームの集合は、ユニットコレクションフレームで管理される。本発明では、このようにしてプロセス用ソフトウェアを構築するため、コントローラ固有の情報が不要であり、アプリケーション主体、対象プロセス主体の構築が可能となる。また、コントローラ機種に依存しない段階で、制御プログラム等を再利用可能である。
【0017】以上の考え方は、コントローラのソフトウェアの構築に限らず、プログラムとドキュメントとを統合して管理する方法をも提供する。すなわち、ドキュメントフレームと、ドキュメントコレクションフレームとを設け、ドキュメントフレームに仕様を記述し、ドキュメントフレームの集合をドキュメントコレクションフレームで管理し、ドキュメントコレクションフレームをポインタを介してユニットフレームにリンクさせることにより、ドキュメントをユニットフレームから検索可能としている。
【0018】なお一般に、プログラムとドキュメントとは、別々のツールで作成され、別々の管理を強いられている。しかしながら本発明では、システム構築上、ユニットを説明するドキュメントという意味でプログラムとドキュメントとを一元管理するので、保守性の向上を期待できる。
【0019】また、ユニットコレクションフレームの上位には、シミュレータフレーム及びコンバータフレームが夫々リンクされる。シミュレータフレームは、ユニットコレクションフレームを介してユニットフレームの集合により示される制御プログラムを解釈・実行し、その制御動作をシミュレーションする。
【0020】コンバータフレームは、シミュレータフレームによるシミュレーションの後、ユニットコレクションフレームを介してユニットフレームの集合により示される制御プログラムを実際のコントローラに理解可能なバイナリ構造(例えば言語など)へ変換する。
【0021】さて、以上のような本発明の骨子に基づいて、具体的には以下のような手段が講じられる。請求項1に対応する発明は、書込可能なワークフレームを生成するためのワークフレーム生成手段と、前記ワークフレーム生成手段により生成されたワークフレームが夫々記憶されるワークフレーム記憶手段と、前記ワークフレーム生成手段により生成されたワークフレームを前記ワークフレーム記憶手段内の他のワークフレームに上位/下位の階層関係をもたせてリンクさせるリンク手段と、前記ワークフレーム記憶手段内の各ワークフレーム毎に、プログラム、データ又はその両者からなるオブジェクトを書込むオブジェクト書込手段とを備えたエンジニアリングシステムである。
【0022】また、請求項2に対応する発明は、請求項1に対応するエンジニアリングシステムにおいて、前記リンク手段が各ワークフレーム間のリンク関係をポインタで定義するエンジニアリングシステムである。
【0023】さらに、請求項3に対応する発明は、請求項1又は請求項2に対応するエンジニアリングシステムにおいて、前記ワークフレーム生成手段としては、前記ワークフレーム記憶手段内のワークフレームが複写指定されたとき、当該ワークフレームと同一のワークフレームを生成するエンジニアリングシステムである。
【0024】また、請求項4に対応する発明は、請求項1乃至請求項3のいずれか1項に対応するエンジニアリングシステムにおいて、前記ワークフレーム記憶手段としては、各プロセス機器毎に機器データがデバイスクラスとして定義される複数のデバイスフレームと、前記各デバイスフレームの上位にリンクされて前記各デバイスクラスの集合を管理するためのオブジェクトがデバイスコレクションクラスとして定義されるデバイスコレクションフレームとを備えたエンジニアリングシステムである。
【0025】さらに、請求項5に対応する発明は、請求項4に対応するエンジニアリングシステムにおいて、前記ワークフレーム記憶手段としては、各演算処理毎に関数がブロッククラスとして定義される複数のブロックフレームと、前記各ブロックフレームの上位にリンクされて前記各ブロッククラスの集合を管理するためのオブジェクトがブロックコレクションクラスとして定義されるブロックコレクションフレームと、前記ブロックコレクションフレーム及び前記デバイスコレクションフレームの上位にリンクされて各コレクションクラスを管理するためのオブジェクトがユニットクラスとして定義されるユニットフレームと、前記ユニットフレームの上位にリンクされて前記ユニットクラスの集合を管理するためのオブジェクトがユニットコレクションクラスとして定義されるユニットコレクションフレームとを備えたエンジニアリングシステムである。
【0026】また、請求項6に対応する発明は、請求項5に対応するエンジニアリングシステムにおいて、前記各デバイスフレームは前記各プロセス機器が接続されるコントローラのキーデータを有し、前記各ブロックフレームは自己の関数の用途データを備え、前記各ブロックフレーム内の用途データに基づいて、当該ブロックフレームを対応するデバイスフレーム内のキーデータに対応付けるブロック配置手段を設けたエンジニアリングシステムである。
【0027】さらに、請求項7に対応する発明は、請求項5又は請求項6に対応するエンジニアリングシステムにおいて、前記ワークフレーム記憶手段としては、文書データがドキュメントクラスとして定義されるドキュメントフレームと、前記ドキュメントフレームの上位及び前記ユニットフレームの下位にリンクされて前記ドキュメントクラスを管理するためのオブジェクトがドキュメントコレクションクラスとして定義されるドキュメントコレクションフレームとを備えたエンジニアリングシステムである。
【0028】また、請求項8に対応する発明は、請求項5乃至請求項7のいずれか1項に対応するエンジニアリングシステムにおいて、前記ワークフレーム記憶手段としては、前記ユニットコレクションフレームの上位にリンクされ、前記ユニットフレームにて得られる制御プログラムを各プロセス機器で理解可能なバイナリ構造へ変換するためのオブジェクトがコンバータクラスとして定義されるコンバータフレームを備えたエンジニアリングシステムである。
【0029】さらに、請求項9に対応する発明は、請求項8に対応するエンジニアリングシステムにおいて、前記ワークフレーム記憶手段としては、前記ユニットコレクションフレームの上位にリンクされ、前記ユニットフレームにて得られる制御プログラムの内容をシミュレーションするためのオブジェクトがシミュレーションクラスとして定義されるシミュレーションフレームを備えたエンジニアリングシステムである。
(作用)従って、請求項1に対応する発明は以上のような手段を講じたことにより、ワークフレーム生成手段が、書込可能なワークフレームを生成し、ワークフレーム記憶手段には、ワークフレーム生成手段により生成されたワークフレームが夫々記憶され、リンク手段が、ワークフレーム生成手段により生成されたワークフレームをワークフレーム記憶手段内の他のワークフレームに上位/下位の階層関係をもたせてリンクさせ、オブジェクト書込手段が、ワークフレーム記憶手段内の各ワークフレーム毎に、プログラム、データ又はその両者からなるオブジェクトを書込むことにより、ワークフレームの階層構造を実現できるため、コントローラ機器に依存せず、プロセスアプリケーションの階層構造に従って、ワークフレーム設計を支援することができる。
【0030】また、請求項2に対応する発明は、リンク手段が各ワークフレーム間のリンク関係をポインタで定義するので、請求項1に対応する作用を容易且つ確実に奏することができる。
【0031】さらに、請求項3に対応する発明は、ワークフレーム生成手段が、ワークフレーム記憶手段内のワークフレームが複写指定されたとき、当該ワークフレームと同一のワークフレームを生成することにより、ワークフレームを再利用できるので、請求項1又は請求項2に対応する作用に加え、プログラミングに要する労力の低減を図ることができる。
【0032】また、請求項4に対応する発明は、ワークフレーム記憶手段内にて、各プロセス機器毎に機器データがデバイスクラスとして定義される複数のデバイスフレームと、各デバイスフレームの上位にリンクされてデバイスクラスの集合を管理するためのオブジェクトがデバイスコレクションクラスとして定義される各デバイスコレクションフレームとを備えたことにより、請求項1乃至請求項3のいずれかに対応する作用に加え、各デバイスフレーム及びデバイスコレクションフレームをプロセスデータベースとして利用でき、プロセスデータベースにより、共通情報を提供することができる。
【0033】さらに、請求項5に対応する発明は、ワークフレーム記憶手段としては、各演算処理毎に関数がブロッククラスとして定義される複数のブロックフレームと、各ブロッククラスの集合を管理するためのオブジェクトがブロックコレクションクラスとして定義されるブロックコレクションフレームと、ブロックコレクションフレーム及びデバイスコレクションフレームを管理するためのオブジェクトがユニットクラスとして定義されるユニットフレームと、ユニットクラスの集合を管理するためのオブジェクトがユニットコレクションクラスとして定義されるユニットコレクションフレームとを備えたことにより、各デバイスフレームと各ブロックフレームとがユニットフレームにてリンクされるので、請求項4に対応する作用に加え、各デバイスフレーム内の機器データと、各ブロックフレーム内の関数とを適切に接続し、プログラミングを実行することができる。
【0034】また、請求項6に対応する発明は、各デバイスフレームとしては各プロセス機器が接続されるコントローラのキーデータを有し、各ブロックフレームは自己の関数の用途データを備え、ブロック配置手段が、各ブロックフレーム内の用途データに基づいて、当該ブロックフレームを対応するデバイスフレーム内のキーデータに対応付けるので、請求項5に対応する作用に加え、制御のための関数を実際のコントローラへ容易に配置することができる。
【0035】さらに、請求項7に対応する発明は、ワークフレーム記憶手段としては、文書データがドキュメントクラスとして定義されるドキュメントフレームと、ドキュメントフレームの上位及びユニットフレームの下位にリンクされてドキュメントクラスを管理するためのオブジェクトがドキュメントコレクションクラスとして定義されるドキュメントコレクションフレームとを備えたことにより、請求項5又は請求項6に対応する作用に加え、仕様書作成、デバイスインターフェース、制御プログラム設計が統合され、プロセスインターフェースなどの共有情報を共有しながら並行して設計を支援することができる。
【0036】また、請求項8に対応する発明は、ワークフレーム記憶手段としては、ユニットコレクションフレームの上位にリンクされ、コンバータクラスのオブジェクトが定義されるコンバータフレームを備えたことにより、請求項5乃至請求項7のいずれかの作用に加え、ユニットフレームにて得られる制御プログラムを各プロセス機器で理解可能なバイナリ構造へ変換することができる。
【0037】さらに、請求項9に対応する発明は、ワークフレーム記憶手段としては、ユニットコレクションフレームの上位にリンクされ、シミュレーションクラスのオブジェクトが定義されるシミュレーションフレームを備えたことにより、請求項8に対応する作用に加え、ユニットフレームにて得られる制御プログラムの内容をシミュレーションすることができる。
【0038】
【発明の実施の形態】以下、本発明に係る各実施形態について図面を参照しながら説明する。
(第1の実施形態)図1は本発明の第1の実施形態に係るエンジニアリングシステムの概略構成を示す模式図である。このエンジニアリングシステムは、書込可能なワークフレームを生成するワークフレーム生成部1と、ワークフレーム生成部1により生成されたワークフレームが夫々記憶されるワークフレーム記憶部2と、ワークフレーム記憶部2内の各ワークフレーム毎に、プログラム、データ又はその両者からなるオブジェクトを書込むオブジェクト書込部3と、ワークフレーム記憶部2内のワークフレームの削除、編集、起動などのためのワークフレーム編集部4とを備えている。
【0039】ここで、ワークフレーム生成部1は、前述した生成機能に加え、ワークフレーム記憶部2内のワークフレームが複写指定されたとき、当該ワークフレームと同一のワークフレームを生成する複写(コピー)機能をもっている。なお、この複写機能は、既存のワークフレームを再利用する観点から好ましい。
【0040】ワークフレーム記憶部2は、複数のワークフレームがポインタpを介してリンクされてなる階層構造が記憶されている。各ワークフレームとしては、デバイスフレームD1 〜Dj 、デバイスコレクションフレームDC、ブロックフレームB1 〜Bk 、ブロックコレクションフレームBC、ドキュメントフレームDM1 〜DMn 、ドキュメントコレクションフレームDMC、ユニットフレームU1 〜Um 、ユニットコレクションフレームUC、シミュレータフレームS、コンバータフレームCがあり、夫々再利用可能となっている。なお、添字のi,k,m,nは任意の数である。
【0041】ここで、デバイスフレームD1 〜Dj は、夫々1つのプロセス機器毎に設けられ、各プロセス機器の属性を示す機器データがデバイスクラスとして定義されており、上位のデバイスコレクションフレームDCにポインタpを介してリンクされている。プロセス機器としては、例えば、センサ、伝送器、バルブ、モータ、バーコードリーダ、分析計、搬送機などがある。機器データは、例えば、ID番号、測定範囲、インタフェース条件などがあり、個々の値によって、特定のプロセス機器を表現する。
【0042】デバイスコレクションフレームDCは、下位の各(デバイスフレームD1 〜Dj の)デバイスクラスのオブジェクトインスタンス(複製)の集合を管理するためのオブジェクトがデバイスコレクションクラスとして定義されるものであり、所定単位の下位の各デバイスフレームD1 〜Dj にポインタpを介してリンクする一方、上位のユニットフレームU1 にポインタpを介してリンクし、ID番号などをキーにしてデバイスフレームD1 〜Dj 内の機器データについて、外部に対し、追加、削除、検索などのサービスを提供可能としている。このデバイスコレクションフレームDCは、共通のプロセス機器のデータベースとしても使用可能である。
【0043】一方、ブロックフレームB1 〜Bk は、制御プログラムを実行するための1つの関数(入力、出力、パラメータを用いる制御演算や論理演算)と、主に入力処理又は出力処理に用いられる旨を示す用途データとの組が部品クラスとして定義され、上位のブロックコレクションフレームBCにポインタpを介してリンクされている。
【0044】ブロックコレクションフレームBCは、下位の各(ブロックフレームB1 〜Bk の)ブロッククラスのオブジェクトインスタンス(複製)の集合を管理するためのオブジェクトがブロックコレクションクラスとして定義され、上位のユニットフレームU1 にポインタpを介してリンクされている。
【0045】また一方、ドキュメントフレームDM1 〜DMn は、プロセス制御の仕様がドキュメントクラスとして定義され、上位のドキュメントコレクションフレームDMCにポインタpを介してリンクされている。
【0046】ドキュメントコレクションフレームDMCは、下位の各(ドキュメントフレームDM1 〜DMn の)ドキュメントクラスのオブジェクトインスタンス(複製)の集合を管理するためのオブジェクトがドキュメントコレクションクラスとして定義され、上位のユニットフレームU1 にポインタpを介してリンクされている。
【0047】ユニットフレームU1 は、デバイスコレクションフレームDC及びブロックコレクションフレームBCを介し、各デバイスフレームD1 〜Dj と、各ブロックフレームB1 〜Bk とを接続することにより、各プロセス機器(各デバイスフレーム)の入力側又は出力側に各関数(各ブロックフレームB1 〜Bk )を適宜接続してなる1つの単位のプロセス制御を定義するものであり、上位のユニットコレクションフレームUCにポインタpを介して接続されている。なお、プロセス制御単位は、各プロセス機器と各関数との接続関係に対応し、全体として所望の制御演算を行なう。また、ユニットフレームU1 〜Um は、ワークフレームであるため、オブジェクトとして再利用可能である。
【0048】ユニットコレクションフレームUCは、下位の各ユニットフレーム(各プロセス制御単位)U1 〜Um の集合を管理するものであり、各プロセス制御の階層構造を定義するものであって、上位のシミュレータフレームS及びコンバータフレームCにポインタpを介して個別に接続されている。
【0049】シミュレータフレームSは、ワークフレーム編集部4により起動されたとき、ユニットコレクションフレームUCを介してユニットフレームU1 〜Um の集合により示される制御プログラムを解釈・実行し、その制御動作をシミュレーションするものである。このシミュレーションは、機種に依存しない仮想設計段階での論理の正否を事前判断を可能とし得るものである。
【0050】コンバータフレームCは、ワークフレーム編集部4により起動されたとき、ユニットコレクションフレームUCを介してユニットフレームU1 〜Um の集合により示される制御プログラムを実際のコントローラに理解可能なバイナリ構造(例えば言語など)へ変換するものである。なお、コンバータフレームCの起動は、少なくともシミュレータフレームSによるシミュレーションを済ませた後が好ましい。
【0051】ワークフレーム編集部4は、前述したワークフレーム記憶部2内の各ワークフレームの削除、編集、起動などの機能に加え、実際のコントローラのキー番号がデバイスフレームD1 〜Dj に登録されると、ブロックフレームB1 〜Bk 内の用途データに基づいて、2つのデバイスフレームD間の当該ブロックフレームBを前後いずれかのデバイスフレームD側に自動的に配置する機能と、操作者の操作により、この配置結果を修正する機能とをもっている。
【0052】次に、以上のようなエンジニアリングシステムの作用について説明する。ワークフレーム生成部1は、書込可能なワークフレームを生成する。このワークフレームは、ワークフレーム記憶部2に記憶され、ポインタを介してワークフレーム記憶部2内の他のワークフレームに上位/下位の階層関係をもたせてリンクされる。なお、ポインタpは各ワークフレーム間をポインタpでリンクさせるので、各ワークフレーム間は容易且つ確実にリンクされる。
【0053】ここで、オブジェクト書込部3は、操作者の操作に基づいて、ワークフレーム記憶部2内の各ワークフレーム毎に、プログラム、データ又はその両者からなるオブジェクトを書込む。これにより、ワークフレームの階層構造を実現できるため、コントローラ機器に依存せず、プロセスアプリケーションの階層構造に従って、ワークフレーム設計を支援することができる。
【0054】また、ワークフレーム生成部1は、操作者の操作により、ワークフレーム記憶部2内のワークフレームが複写指定されたとき、当該ワークフレームと同一のワークフレームを生成する。すなわち、ワークフレーム生成部1により、ワークフレームを再利用できるので、プログラミングに要する労力の低減を図ることができる。
【0055】また、ワークフレーム記憶部2内にて、各デバイスフレームD1 〜Dj にて各プロセス機器毎に機器データが定義され、デバイスコレクションフレームDCにて各デバイスフレームD1 〜Dj の集合が管理されるので、各デバイスフレームD1 〜Dj 及びデバイスコレクションフレームDCをプロセスデータベースとして利用することができる。また、このプロセスデータベースは、各プロセス機器に関する共通情報を提供することができる。
【0056】さらに、ワークフレーム記憶部2にて、各ブロックフレームB1 〜Bk にて各演算処理毎に関数が定義され、ブロックコレクションフレームBCにて各ブロッククラスの集合が管理される。また、ユニットフレームU1 にてブロックコレクションフレームBC及びデバイスコレクションフレームBCが管理される。
【0057】すなわち、各デバイスフレームD1 〜Dj と各ブロックフレームB1 〜Bk とが各コレクションフレームBC,DCを介してユニットフレームU1 にてリンクされるので、各デバイスフレームD1 〜Dj 内の機器データと、各ブロックフレームB1 〜Bk 内の関数とを適切に接続し、個々の単位の制御プログラムのプログラミングを実行することができる。
【0058】また、ユニットコレクションフレームUCにてユニットフレームU1 〜Um の集合が管理されるので、各単位の制御プログラムの集合からなるプロセス制御全体の制御プログラムのプログラミングを実行することができる。
【0059】また、各デバイスフレームD1 〜Dj には各プロセス機器が接続されるコントローラのキーデータが登録され、各ブロックフレームB1 〜Bk が自己の関数の用途データが登録されたとする。ワークフレーム編集部4は、各ブロックフレームB1 〜Bk 内の用途データに基づいて、当該ブロックフレームBを対応するデバイスフレームD内のキーデータに対応付けするので、制御のための関数を実際のコントローラへ容易に配置することができる。
【0060】なお、この配置処理について補足的に説明する。ユニットフレームU1 〜Um は、オブジェクトで定義されたアプリケーションが実際のコントローラから独立して定義されたため、実際には複数のコントローラに処理を分配する場合がある。コントローラに処理を分配する方法としては、以下のものがある。
【0061】ユニットフレームU1 〜Um はデバイスフレームD1 〜Dj よりも上位である。デバイスフレームD1 〜Dj は、最終的には、接続される実際のコントローラのキー番号の登録を必要とする。キー番号の登録が予め済んでいれば、例えばユニットフレームU1 は、図2R>2に示すように、ロジックが各コントローラ( Station 1〜 3)に分散されるように分割される。このとき、2つのデバイスフレームD間を接続するブロックフレームBをどのコントローラに配置するか、が重要である。
【0062】そこで、ブロックフレームB1 〜Bk には主に入力処理用か、出力処理用かを示す用途データを付与する。これにより、ワークフレーム編集部4は、入力処理用のブロックフレームB1 であれば、入力用のプロセス機器の管理されるコントローラへ、逆に出力処理用のブロックフレームBk であれば、出力用のプロセス機器の管理されるコントローラへ配置するように、ブロックフレームB1 〜Bkの配置を一次決定する。なお、この配置は、適宜設計者により、修正することができるが、大部分はこの一次決定で多くの作業量を低減することができる。
【0063】さらに、ワークフレーム記憶部2にて、文書データからなるドキュメントクラスが定義されるドキュメントフレームDM1 〜DMn と、ドキュメントフレームDM1 〜DMn の上位及びユニットフレームU1 の下位にリンクされてドキュメントクラスを管理するためのオブジェクトがドキュメントコレクションクラスとして定義されるドキュメントコレクションフレームDMCとを備えたことにより、仕様書作成、デバイスインターフェース、制御プログラム設計が統合され、プロセスインターフェースなどの共有情報を共有しながら並行して設計を支援することができる。
【0064】また、設計が終了し、制御プログラムがユニットコレクションフレームUCを介して各ユニットフレームU1 〜Um から得られるようになったとする。しかしながら、この設計終了後の制御プログラムは、コントローラの理解可能なバイナリ構造ではなく、翻訳する必要がある。この場合、ワークフレーム編集部4は、操作者の操作により、コンバータフレームCを起動する。コンバータフレームCは、起動されると、設計終了後の制御プログラムを各プロセス機器で理解可能なバイナリ構造へ変換する。これにより、始めて、制御プログラムは、各コントローラで直接理解できる構造になる。
【0065】また、設計が終了したが、コンバータフレームによる変換の前に制御プログラムの動作を確認したいとする。このとき、ワークフレーム編集部4は、操作者の操作により、シミュレーションフレームSを起動する。シミュレーションフレームSは、起動されると、設計終了後の制御プログラムの内容をシミュレーションする。これにより、コンバータフレームCによる変換前に、制御プログラムの動作を確認することができ、信頼性を向上させることができる。
【0066】上述したように本実施形態によれば、書込可能なワークフレームを階層構造にして設け、各ワークフレームに個別にオブジェクトを書込むことにより、コントローラ機器に依存せず、プロセスアプリケーションの階層構造に従って、ワークフレーム設計を支援することができる。
【0067】また、各ワークフレーム間は、ポインタpでリンクされるので、容易かつ確実に動作させることができる。さらに、ワークフレーム生成部1の複写機能により、ワークフレームを再利用できるので、プログラミングに要する労力の低減を図ることができる。
【0068】さらに、各プロセス機器を定義する各デバイスフレームD1 〜Dj 及びデバイスコレクションフレームDCを備えたことにより、各デバイスフレームD1 〜Dj 及びデバイスコレクションフレームDCをプロセスデータベースとして利用でき、プロセスデータベースにより、共通情報を提供することができる。また、ハードウェア(各プロセス機器)の設定をデバイスフレームD1 〜Dj で実現し、ソフトウェアの構築をユニットフレームU1 〜Um で実現するので、ハードウェアとソフトウェアとを独立に記述してプログラミングでき、もって、ハードウエアとソフトウェアとを同時に開発することができる。
【0069】また、各関数を示す各ブロックフレームB1 〜Bk 及びそれらを管理するブロックコレクションフレームBCを設けたので、各デバイスフレームD1 〜Dj 内の機器データと、各ブロックフレームB1 〜Bk 内の関数とを適切に接続することにより、プログラミングを実行することができる。
【0070】さらに、各ブロックフレームB1 〜Bk 内の用途データに基づいて、当該ブロックフレームB1 〜Bk を対応するデバイスフレームD1 〜Dj 内のキーデータに対応付けるので、制御のための関数を実際のコントローラへ容易に配置することができる。
【0071】また、ドキュメントフレームDM1 〜DMn とドキュメントコレクションフレームDCMにより、仕様書作成、デバイスインターフェース、制御プログラム設計が統合され、プロセスインターフェースなどの共有情報を共有しながら並行して設計を支援することができる。
【0072】さらに、コンバータフレームCにより、ユニットフレームU1 〜Um にて得られる制御プログラムを各プロセス機器で理解可能なバイナリ構造へ変換することができる。
【0073】また、シミュレーションフレームSにより、ユニットフレームU1 〜Um にて得られる制御プログラムの内容をシミュレーションできるので、信頼性を向上させることができる。
(第2の実施形態)図3は本発明の第2の実施形態に係るエンジニアリングシステムの概略構成を示す模式図であり、図1と同一部分には同一符号を付し、類似部分にはaの添字を付してその詳しい説明は省略し、ここでは異なる部分についてのみ述べる。
【0074】すなわち、本実施形態は、第1の実施形態の変形形態であり、プログラミング前のシステム設計に関する種々の支援機能を設け、ドキュメントの生成の容易化を図るものである。なお、各用語はIEC1131−3の規格に準拠している。また、詳細は省略するが、本実施形態にて生成されるドキュメントは、テキスト、表、絵などのファイルを1つのファイル内にまとめて取り扱う複合ドキュメント構造を有している。
【0075】具体的には図3に示すように、ワークフレーム編集部4aが、プロダクトビュアーPD、プロセスビュアーPC、コントロールシステムビュアーCS及びコンフィグレーションビュアーCFを備えて構成されている。
【0076】ここで、プロダクトビュアーPDは、操作者の操作に基づいて、全てのドキュメントフレームの一覧表示、編集及び各ビュアーへの展開を行なう機能をもっている。
【0077】プロセスビュアーPCは、ワークフレーム記憶部2内のドキュメントフレームDMにおけるデバイスリストDM1 とデバイスDM2 とに基づいて、ドキュメントフレームDM内のプロセス構成図DM3 の作成を支援するものであり、このプロセス構成図DM3 をグラフィックに表示・編集する機能をもっている。なお、ドキュメントフレームDMにおけるデバイスリストDM1 はデバイス名及びベンダ名等のオブジェクトが定義され、デバイスDM2 は機種名、インタフェース条件等のオブジェクトが定義されている。
【0078】コントロールシステムビュアーCSは、アセンブルアシスタントAA、レイアウトアシスタントLA及びワイヤリングアシスタントWAを備え、ワークフレーム記憶部2内のドキュメントフレームDMにおけるステーションリストDM4 及びモジュールリストDM6 に基づいて、ドキュメントフレームDM内のコントロールシステム構成図DM5 、ステーション構成図DM7 、部品配置図DM8 及び端子台接続図DM9 の作成を支援するものであり、これらコントロールシステム構成図DM5 、ステーション構成図DM7 、部品配置図DM8 及び端子台接続図DM9 をグラフィックに表示・編集する機能をもっている。なお、ドキュメントフレームDMにおけるステーションリストDM4 は、ステーション名、ベンダ名、機種名及びアドレス等のオブジェクトが定義され、モジュールリストDM6 は、モジュール名、機種名、アドレス、パラメータ等のオブジェクトが定義されている。
【0079】アセンブルアシスタントAAは、ワークフレーム記憶部2内にて、デバイスリストDM1 に基づいて、プロセスのデバイスの種類と数が与えられると、モジュールリストDM6 から適合するインタフェースモジュールを自動的に選択し、ステーション構成図DM7 上にて、モジュールを組上げてステーションを構成するステーション構成図DM7 の作成支援機能をもっている。
【0080】レイアウトアシスタントLAは、ステーションに用いられる各モジュールが選択済のとき、部品配置図DM8 上にて、各モジュールを標準盤に対して自動的にレイアウトする部品配置図DM8 の作成支援機能をもっている。
【0081】ワイヤリングアシスタントWAは、ステーションに用いられる各モジュールが選択済のとき、デバイスリストDM1 に基づいて、プロセスのデバイスを与えると、端子台接続図DM9 上にて、デバイスに対して自動的にI/O割付を行なう端子台接続図DM9 の作成支援機能をもっている。
【0082】なお、これら各アシスタントAA,LA,WAは、予め設計者の論理を設定し、その設定内容に基づいて支援処理を実行してもよい。コンフィグレーションビュアーCFは、コンフィグレーションに関するドキュメントDM10〜DM17の内容を表示、編集する機能をもっている。これらドキュメントDM10〜DM17の内容は、図3及び図4に示すように、コンフィグレーション定義(名称、コンテナハードウェア等)、グローバル変数定義(名称、タイプ、値、単位、コメント等)、リソース定義(名称、コンテナハードウェア等)、グローバル変数定義、タスク定義(名称、タスク属性、間隔、優先度等)、プログラム定義(名称、タスク名、クラス名、パラメータ等)、クラス定義(名称、クラスタイプ、パラメータ等)、アクセスパス定義(名称、伝送変数、タイプ、方向等)などがある。
【0083】次に、このようなエンジニアリングツールの作用について述べる。ワークフレーム記憶部2内のドキュメントフレームDMにおいては、デバイスリストDM1 、デバイスDM2 、モジュールリストDM6 の如き、システム設計に必要なプロセス機器のリストは、全て外部からインポート(入力)されて登録済であるとする。
【0084】いま、ワークフレーム編集部4aにおいては、操作者の操作により、プロダクトビュアーPDが起動されたとする。プロダクトビュアーPDは、操作者の操作に基づいて、図5に示すように、全てのドキュメントフレームDMの一覧表示を行なう。
【0085】ここで、操作者の操作により、図示しないプロセス構成図が選択されると、プロダクトビュアーPDに代えて、プロセスビュアーPCが展開される。プロセスビュアーPCは、図6に示されるように、ドキュメントDMのプロセス構成図DM3 を表示し、操作者の操作により、デバイスリストDM1 及びデバイスDM2を参照してその内容をプロセス構成図DM3 に組合せる。これにより、プロセス構成図DM3 の作成を支援することができる。
【0086】また、図5の一覧表示において、操作者の操作により、図示しないコントロールシステム構成図が選択されると、前述同様にコントロールシステムビュアーCSが展開される。コントロールシステムビュアーCSは、図7に示すように、ドキュメントDMのコントロールシステム構成図DM5 を表示し、操作者の操作により、ステーションリストDM4 を参照してその内容をコントロールシステム構成図DM5 に組合せる。これにより、コントロールシステム構成図DM5 の作成を支援することができる。
【0087】また、図5の一覧表示において、操作者の操作により、図示しないステーション構成図が選択されると、前述同様にコントロールシステムビュアーCSが展開される。コントロールシステムビュアーCSにおいては、図8に示すように、ドキュメントDMのステーション構成図DM7 を表示し、アセンブルアシスタントAAにより、モジュールリストDM6 を参照してその内容をステーション構成図DM7 に半自動的に組合せる。これにより、コントロールシステム構成図DM7の作成を支援することができる。また、半自動的に作成されたコントロールシステム構成図DM7 は、操作者の操作により、適宜修正される。
【0088】また同様に、図5の一覧表示において、操作者の操作により、図示しない部品配置図が選択されると、前述同様にコントロールシステムビュアーCSが展開される。コントロールシステムビュアーCSにおいては、図8に示すように、ドキュメントDMの部品配置図DM8 を表示し、レイアウトアシスタントLAにより、モジュールリストDM6 を参照してその内容を部品配置図DM8 に半自動的に組合せる。これにより、部品配置図DM8 の作成を支援することができる。半自動的に作成された部品配置図DM8 は、操作者の操作により、適宜修正される。
【0089】さらにまた、図5の一覧表示において、操作者の操作により、図示しない端子台接続図が選択されると、前述同様にコントロールシステムビュアーCSが展開される。コントロールシステムビュアーCSにおいては、図9に示すように、ドキュメントDMの端子台接続図DM9 を表示し、ワイヤリングアシスタントWAにより、デバイスリストDM1 を参照してその内容を端子台接続図DM9 に半自動的に組合せる。これにより、端子台接続図DM9 の作成を支援することができる。半自動的に作成された端子台接続図DM9 は、操作者の操作により、適宜修正される。
【0090】また一方、図5の一覧表示において、操作者の操作により、コンフィグレーションCFが選択されると、コンフィグレーションビュアーCFが展開される。コンフィグレーションビュアーCFにおいては、図4R>4に示したうちのコンフィグレーション定義のドキュメントDM10を表示し、操作者の操作により、適宜書込みを行なう。これにより、コンフィグレーション定義の設定を支援することができる。なお、図4中の他の各定義についても同様に設定を支援することができる。
【0091】上述したように本実施形態によれば、第1の実施形態の効果に加え、ワークフレーム編集部4aにおいて、作成したいシステムの図面に応じて予め論理設計された各種のビュアーPC,CS,CFを用い、デバイスリストDM1 やモジュールリストDM6 などを参照しながら各種の構成や配置、接続などを図面上に行なってこれら構成図等の作成を支援するので、プログラミング前のシステム設計に要する労力と費用とを低減することができる。
(他の実施形態)なお、上記実施形態に記載した手法は、コンピュータに実行させることのできるプログラムとして、磁気ディスク(フロッピーディスク、ハードディスクなど)、光ディスク(CD−ROM,DVDなど)、半導体メモリなどの記憶媒体に格納して頒布することもできる。その他、本発明はその要旨を逸脱しない範囲で種々変形して実施できる。
【0092】
【発明の効果】以上説明したように本発明によれば、コントローラ機器に依存せず、プロセスアプリケーションの階層構造に従って、ワークフレーム設計を支援できるエンジニアリングシステムを提供できる。
【0093】また、仕様書作成、デバイスインターフェース、制御プログラム設計が統合され、プロセスインターフェースなどの共有情報を共有しながら並行して設計を支援できるエンジニアリングシステムを提供できる。
【図面の簡単な説明】
【図1】本発明の第1の実施形態に係るエンジニアリングシステムの概略構成を示す模式図
【図2】同実施の形態における動作を説明するための模式図
【図3】本発明の第2の実施形態に係るエンジニアリングシステムの概略構成を示す模式図
【図4】同実施の形態におけるコンフィグレーションドキュメントの概略構成を示す模式図
【図5】同実施の形態における一覧表示画面を示す模式図
【図6】同実施の形態における動作を説明するための模式図
【図7】同実施の形態における動作を説明するための模式図
【図8】同実施の形態における動作を説明するための模式図
【図9】同実施の形態における動作を説明するための模式図
【図10】本発明の骨子を説明するための模式図
【符号の説明】
1…ワークフレーム生成部
2…ワークフレーム記憶部
3…オブジェクト書込部
4,4a…ワークフレーム編集部
p…ポインタ
D1 〜Dj …デバイスフレーム
DC…デバイスコレクションフレーム
B1 〜Bk …ブロックフレーム
BC…ブロックコレクションフレーム
DM1 〜DMn …ドキュメントフレーム
DMC…ドキュメントコレクションフレーム
U1 〜Um …ユニットフレーム
UC…ユニットコレクションフレーム
S…シミュレータフレーム
C…コンバータフレーム
PD…プロダクトビュアー
PC…プロセスビュアー
CS…コントロールシステムビュアー
CF…コンフィグレーションビュアー
AA…アセンブルアシスタント
LA…レイアウトアシスタント
WA…ワイヤリングアシスタント
W1 〜W3 …ワークフレーム
【0001】
【発明の属する技術分野】本発明は、ハードウェアとソフトウェアとを同時に開発し得るエンジニアリングシステムに関する。
【0002】
【従来の技術】従来、複数のプロセス機器とそれを制御するコントローラからなるプロセスを制御するための制御プログラムを作成する場合、プログラミングを支援するための複数のプログラミングツールが各コントローラ個別に存在している。また、各プログラミングツールは、制御ソフトウェア、信号定義などの機能毎にも個別に存在している。
【0003】このため、プログラミングは、コントローラ毎にプロセス管理範囲や機能分担が決定された後、対応するプログラミングツールを用いて実行される。また、機器の仕様などは、各プログラミングツールとは別のドキュメントツールなどを用いて記録される。
【0004】
【発明が解決しようとする課題】しかしながら以上のようなエンジニアリングシステムでは、複数のプログラミングツールがコントローラ個別に存在するために、コントローラ機器の変更に伴い、多くの場合、プログラムの再利用が不可となってしまう問題がある。
【0005】また、各プログラミングツールとドキュメントツールとが個別に存在するので、制御プログラムなどのソフトウェア情報と、機器の仕様などのドキュメント情報とを共有して連携させることが困難である。
【0006】本発明は上記実情を考慮してなされたもので、コントローラ機器に依存せず、プロセスアプリケーションの階層構造に従って、ワークフレーム設計を支援し得るエンジニアリングシステムを提供することを目的とする。
【0007】また、本発明の他の目的は、仕様書作成、デバイスインターフェース、制御プログラム設計が統合され、プロセスインターフェースなどの共有情報を共有しながら並行して設計を支援可能なエンジニアリングシステムを提供することにある。
【0008】
【課題を解決するための手段】本発明の骨子は、図10に示すように、制御プログラム、登録パラメータ又はドキュメント等のオブジェクトが記述される複数のワークフレームW1 〜W3 を互いに上位、下位の関係で結合して各ワークフレームW1 〜W3 からなる階層構造を生成することにより、ソフトウェア構築や、ソフトウェアと文書の統合管理を行なうエンジニアリングシステムを実現することにある。
【0009】ここで、ワークフレームW1 〜W3 は、作業領域を意味し、それ自体がオブジェクト(プログラムとデータ)である。各ワークフレームW1 〜W3 間はポインタ(スロット)pによりリンクされる。よって、ワークフレームW1 は、他のワークフレームW2 〜W3 を包含できるが、インタフェースは下位のワークフレームが公開するデータ内容又はサービス内容に限定される。
【0010】エンジニアリングシステムでは、ワークフレームW1 〜W3 を図面になぞらえて、制御プログラムや登録パラメータが定義される領域がワークフレームW1 〜W3 として位置付けされる。各ワークフレームW1 〜W3 は、互いを組合せた積層構造により、各種システム制御用のソフトウェア構築を可能としている。
【0011】なお、大規模システムは階層及び水平構造の両者が共に大きく、小規模システムはその両者が共に小さいが、規模の大小に関わらず、必要な制御プログラムがある。そこで、ワークフレームとしては、特定の分野に対して必要なものが予め設けられる。すなわち、ユーザに対しては、予め設けられたワークフレームと、独自に定義されたワークフレームとをポインタで自由に組合せることにより、所望の機能を構築可能としている。また、構築過程において、ワークフレーム単位で再利用を可能としている。ワークフレームは、下位になるほど基本的で再利用の価値が高い。
【0012】階層構造を自由に発生させる方式としては、例えばファイルマネージャ(マイクロソフト社、Windows システム)などが適用可能である。但し、本発明は、ホルダやファイルを自由に発生させるのではなく、ワークフレームという自由な作業領域を発生させる点が重要となっている。すなわち、本発明のポイントは、ワークフレームで記述される内容がプログラムや各種定義、ドキュメントなどのエンジニアリング成果物である点と、自由に組替可能な階層構造をワークフレームに適用してエンジニアリングシステムに応用した点である。
【0013】次に、本発明に係るエンジニアリングシステムをプロセス制御の分野に適用した場合について簡単に述べる。ワークフレームとしては、各プロセス機器毎にデバイスフレームを設け、個別に各プロセス機器を定義する。各プロセス機器に対応するデバイスフレームの集合は、個別にポインタを介して上位のデバイスコレクションフレームで管理される。
【0014】入力、出力、パラメータ等を用いる制御演算や論理演算は、それぞれ関数により示され、各関数毎にブロックフレームにて定義される。各関数に対応するブロックフレームの集合は、ポインタを介して上位のブロックコレクションフレームで管理される。
【0015】これらデバイスコレクションフレーム及びブロックコレクションフレームの上位には、ユニットフレームがリンクされる。ユニットフレームは、各プロセス機器(デバイスフレーム)に対し、それらの入力側又は出力側に関数(ブロックフレーム)を接続することにより、1つの単位のプロセス制御を定義する。
【0016】複数の単位の各プロセス制御に対応するユニットフレームの集合は、ユニットコレクションフレームで管理される。本発明では、このようにしてプロセス用ソフトウェアを構築するため、コントローラ固有の情報が不要であり、アプリケーション主体、対象プロセス主体の構築が可能となる。また、コントローラ機種に依存しない段階で、制御プログラム等を再利用可能である。
【0017】以上の考え方は、コントローラのソフトウェアの構築に限らず、プログラムとドキュメントとを統合して管理する方法をも提供する。すなわち、ドキュメントフレームと、ドキュメントコレクションフレームとを設け、ドキュメントフレームに仕様を記述し、ドキュメントフレームの集合をドキュメントコレクションフレームで管理し、ドキュメントコレクションフレームをポインタを介してユニットフレームにリンクさせることにより、ドキュメントをユニットフレームから検索可能としている。
【0018】なお一般に、プログラムとドキュメントとは、別々のツールで作成され、別々の管理を強いられている。しかしながら本発明では、システム構築上、ユニットを説明するドキュメントという意味でプログラムとドキュメントとを一元管理するので、保守性の向上を期待できる。
【0019】また、ユニットコレクションフレームの上位には、シミュレータフレーム及びコンバータフレームが夫々リンクされる。シミュレータフレームは、ユニットコレクションフレームを介してユニットフレームの集合により示される制御プログラムを解釈・実行し、その制御動作をシミュレーションする。
【0020】コンバータフレームは、シミュレータフレームによるシミュレーションの後、ユニットコレクションフレームを介してユニットフレームの集合により示される制御プログラムを実際のコントローラに理解可能なバイナリ構造(例えば言語など)へ変換する。
【0021】さて、以上のような本発明の骨子に基づいて、具体的には以下のような手段が講じられる。請求項1に対応する発明は、書込可能なワークフレームを生成するためのワークフレーム生成手段と、前記ワークフレーム生成手段により生成されたワークフレームが夫々記憶されるワークフレーム記憶手段と、前記ワークフレーム生成手段により生成されたワークフレームを前記ワークフレーム記憶手段内の他のワークフレームに上位/下位の階層関係をもたせてリンクさせるリンク手段と、前記ワークフレーム記憶手段内の各ワークフレーム毎に、プログラム、データ又はその両者からなるオブジェクトを書込むオブジェクト書込手段とを備えたエンジニアリングシステムである。
【0022】また、請求項2に対応する発明は、請求項1に対応するエンジニアリングシステムにおいて、前記リンク手段が各ワークフレーム間のリンク関係をポインタで定義するエンジニアリングシステムである。
【0023】さらに、請求項3に対応する発明は、請求項1又は請求項2に対応するエンジニアリングシステムにおいて、前記ワークフレーム生成手段としては、前記ワークフレーム記憶手段内のワークフレームが複写指定されたとき、当該ワークフレームと同一のワークフレームを生成するエンジニアリングシステムである。
【0024】また、請求項4に対応する発明は、請求項1乃至請求項3のいずれか1項に対応するエンジニアリングシステムにおいて、前記ワークフレーム記憶手段としては、各プロセス機器毎に機器データがデバイスクラスとして定義される複数のデバイスフレームと、前記各デバイスフレームの上位にリンクされて前記各デバイスクラスの集合を管理するためのオブジェクトがデバイスコレクションクラスとして定義されるデバイスコレクションフレームとを備えたエンジニアリングシステムである。
【0025】さらに、請求項5に対応する発明は、請求項4に対応するエンジニアリングシステムにおいて、前記ワークフレーム記憶手段としては、各演算処理毎に関数がブロッククラスとして定義される複数のブロックフレームと、前記各ブロックフレームの上位にリンクされて前記各ブロッククラスの集合を管理するためのオブジェクトがブロックコレクションクラスとして定義されるブロックコレクションフレームと、前記ブロックコレクションフレーム及び前記デバイスコレクションフレームの上位にリンクされて各コレクションクラスを管理するためのオブジェクトがユニットクラスとして定義されるユニットフレームと、前記ユニットフレームの上位にリンクされて前記ユニットクラスの集合を管理するためのオブジェクトがユニットコレクションクラスとして定義されるユニットコレクションフレームとを備えたエンジニアリングシステムである。
【0026】また、請求項6に対応する発明は、請求項5に対応するエンジニアリングシステムにおいて、前記各デバイスフレームは前記各プロセス機器が接続されるコントローラのキーデータを有し、前記各ブロックフレームは自己の関数の用途データを備え、前記各ブロックフレーム内の用途データに基づいて、当該ブロックフレームを対応するデバイスフレーム内のキーデータに対応付けるブロック配置手段を設けたエンジニアリングシステムである。
【0027】さらに、請求項7に対応する発明は、請求項5又は請求項6に対応するエンジニアリングシステムにおいて、前記ワークフレーム記憶手段としては、文書データがドキュメントクラスとして定義されるドキュメントフレームと、前記ドキュメントフレームの上位及び前記ユニットフレームの下位にリンクされて前記ドキュメントクラスを管理するためのオブジェクトがドキュメントコレクションクラスとして定義されるドキュメントコレクションフレームとを備えたエンジニアリングシステムである。
【0028】また、請求項8に対応する発明は、請求項5乃至請求項7のいずれか1項に対応するエンジニアリングシステムにおいて、前記ワークフレーム記憶手段としては、前記ユニットコレクションフレームの上位にリンクされ、前記ユニットフレームにて得られる制御プログラムを各プロセス機器で理解可能なバイナリ構造へ変換するためのオブジェクトがコンバータクラスとして定義されるコンバータフレームを備えたエンジニアリングシステムである。
【0029】さらに、請求項9に対応する発明は、請求項8に対応するエンジニアリングシステムにおいて、前記ワークフレーム記憶手段としては、前記ユニットコレクションフレームの上位にリンクされ、前記ユニットフレームにて得られる制御プログラムの内容をシミュレーションするためのオブジェクトがシミュレーションクラスとして定義されるシミュレーションフレームを備えたエンジニアリングシステムである。
(作用)従って、請求項1に対応する発明は以上のような手段を講じたことにより、ワークフレーム生成手段が、書込可能なワークフレームを生成し、ワークフレーム記憶手段には、ワークフレーム生成手段により生成されたワークフレームが夫々記憶され、リンク手段が、ワークフレーム生成手段により生成されたワークフレームをワークフレーム記憶手段内の他のワークフレームに上位/下位の階層関係をもたせてリンクさせ、オブジェクト書込手段が、ワークフレーム記憶手段内の各ワークフレーム毎に、プログラム、データ又はその両者からなるオブジェクトを書込むことにより、ワークフレームの階層構造を実現できるため、コントローラ機器に依存せず、プロセスアプリケーションの階層構造に従って、ワークフレーム設計を支援することができる。
【0030】また、請求項2に対応する発明は、リンク手段が各ワークフレーム間のリンク関係をポインタで定義するので、請求項1に対応する作用を容易且つ確実に奏することができる。
【0031】さらに、請求項3に対応する発明は、ワークフレーム生成手段が、ワークフレーム記憶手段内のワークフレームが複写指定されたとき、当該ワークフレームと同一のワークフレームを生成することにより、ワークフレームを再利用できるので、請求項1又は請求項2に対応する作用に加え、プログラミングに要する労力の低減を図ることができる。
【0032】また、請求項4に対応する発明は、ワークフレーム記憶手段内にて、各プロセス機器毎に機器データがデバイスクラスとして定義される複数のデバイスフレームと、各デバイスフレームの上位にリンクされてデバイスクラスの集合を管理するためのオブジェクトがデバイスコレクションクラスとして定義される各デバイスコレクションフレームとを備えたことにより、請求項1乃至請求項3のいずれかに対応する作用に加え、各デバイスフレーム及びデバイスコレクションフレームをプロセスデータベースとして利用でき、プロセスデータベースにより、共通情報を提供することができる。
【0033】さらに、請求項5に対応する発明は、ワークフレーム記憶手段としては、各演算処理毎に関数がブロッククラスとして定義される複数のブロックフレームと、各ブロッククラスの集合を管理するためのオブジェクトがブロックコレクションクラスとして定義されるブロックコレクションフレームと、ブロックコレクションフレーム及びデバイスコレクションフレームを管理するためのオブジェクトがユニットクラスとして定義されるユニットフレームと、ユニットクラスの集合を管理するためのオブジェクトがユニットコレクションクラスとして定義されるユニットコレクションフレームとを備えたことにより、各デバイスフレームと各ブロックフレームとがユニットフレームにてリンクされるので、請求項4に対応する作用に加え、各デバイスフレーム内の機器データと、各ブロックフレーム内の関数とを適切に接続し、プログラミングを実行することができる。
【0034】また、請求項6に対応する発明は、各デバイスフレームとしては各プロセス機器が接続されるコントローラのキーデータを有し、各ブロックフレームは自己の関数の用途データを備え、ブロック配置手段が、各ブロックフレーム内の用途データに基づいて、当該ブロックフレームを対応するデバイスフレーム内のキーデータに対応付けるので、請求項5に対応する作用に加え、制御のための関数を実際のコントローラへ容易に配置することができる。
【0035】さらに、請求項7に対応する発明は、ワークフレーム記憶手段としては、文書データがドキュメントクラスとして定義されるドキュメントフレームと、ドキュメントフレームの上位及びユニットフレームの下位にリンクされてドキュメントクラスを管理するためのオブジェクトがドキュメントコレクションクラスとして定義されるドキュメントコレクションフレームとを備えたことにより、請求項5又は請求項6に対応する作用に加え、仕様書作成、デバイスインターフェース、制御プログラム設計が統合され、プロセスインターフェースなどの共有情報を共有しながら並行して設計を支援することができる。
【0036】また、請求項8に対応する発明は、ワークフレーム記憶手段としては、ユニットコレクションフレームの上位にリンクされ、コンバータクラスのオブジェクトが定義されるコンバータフレームを備えたことにより、請求項5乃至請求項7のいずれかの作用に加え、ユニットフレームにて得られる制御プログラムを各プロセス機器で理解可能なバイナリ構造へ変換することができる。
【0037】さらに、請求項9に対応する発明は、ワークフレーム記憶手段としては、ユニットコレクションフレームの上位にリンクされ、シミュレーションクラスのオブジェクトが定義されるシミュレーションフレームを備えたことにより、請求項8に対応する作用に加え、ユニットフレームにて得られる制御プログラムの内容をシミュレーションすることができる。
【0038】
【発明の実施の形態】以下、本発明に係る各実施形態について図面を参照しながら説明する。
(第1の実施形態)図1は本発明の第1の実施形態に係るエンジニアリングシステムの概略構成を示す模式図である。このエンジニアリングシステムは、書込可能なワークフレームを生成するワークフレーム生成部1と、ワークフレーム生成部1により生成されたワークフレームが夫々記憶されるワークフレーム記憶部2と、ワークフレーム記憶部2内の各ワークフレーム毎に、プログラム、データ又はその両者からなるオブジェクトを書込むオブジェクト書込部3と、ワークフレーム記憶部2内のワークフレームの削除、編集、起動などのためのワークフレーム編集部4とを備えている。
【0039】ここで、ワークフレーム生成部1は、前述した生成機能に加え、ワークフレーム記憶部2内のワークフレームが複写指定されたとき、当該ワークフレームと同一のワークフレームを生成する複写(コピー)機能をもっている。なお、この複写機能は、既存のワークフレームを再利用する観点から好ましい。
【0040】ワークフレーム記憶部2は、複数のワークフレームがポインタpを介してリンクされてなる階層構造が記憶されている。各ワークフレームとしては、デバイスフレームD1 〜Dj 、デバイスコレクションフレームDC、ブロックフレームB1 〜Bk 、ブロックコレクションフレームBC、ドキュメントフレームDM1 〜DMn 、ドキュメントコレクションフレームDMC、ユニットフレームU1 〜Um 、ユニットコレクションフレームUC、シミュレータフレームS、コンバータフレームCがあり、夫々再利用可能となっている。なお、添字のi,k,m,nは任意の数である。
【0041】ここで、デバイスフレームD1 〜Dj は、夫々1つのプロセス機器毎に設けられ、各プロセス機器の属性を示す機器データがデバイスクラスとして定義されており、上位のデバイスコレクションフレームDCにポインタpを介してリンクされている。プロセス機器としては、例えば、センサ、伝送器、バルブ、モータ、バーコードリーダ、分析計、搬送機などがある。機器データは、例えば、ID番号、測定範囲、インタフェース条件などがあり、個々の値によって、特定のプロセス機器を表現する。
【0042】デバイスコレクションフレームDCは、下位の各(デバイスフレームD1 〜Dj の)デバイスクラスのオブジェクトインスタンス(複製)の集合を管理するためのオブジェクトがデバイスコレクションクラスとして定義されるものであり、所定単位の下位の各デバイスフレームD1 〜Dj にポインタpを介してリンクする一方、上位のユニットフレームU1 にポインタpを介してリンクし、ID番号などをキーにしてデバイスフレームD1 〜Dj 内の機器データについて、外部に対し、追加、削除、検索などのサービスを提供可能としている。このデバイスコレクションフレームDCは、共通のプロセス機器のデータベースとしても使用可能である。
【0043】一方、ブロックフレームB1 〜Bk は、制御プログラムを実行するための1つの関数(入力、出力、パラメータを用いる制御演算や論理演算)と、主に入力処理又は出力処理に用いられる旨を示す用途データとの組が部品クラスとして定義され、上位のブロックコレクションフレームBCにポインタpを介してリンクされている。
【0044】ブロックコレクションフレームBCは、下位の各(ブロックフレームB1 〜Bk の)ブロッククラスのオブジェクトインスタンス(複製)の集合を管理するためのオブジェクトがブロックコレクションクラスとして定義され、上位のユニットフレームU1 にポインタpを介してリンクされている。
【0045】また一方、ドキュメントフレームDM1 〜DMn は、プロセス制御の仕様がドキュメントクラスとして定義され、上位のドキュメントコレクションフレームDMCにポインタpを介してリンクされている。
【0046】ドキュメントコレクションフレームDMCは、下位の各(ドキュメントフレームDM1 〜DMn の)ドキュメントクラスのオブジェクトインスタンス(複製)の集合を管理するためのオブジェクトがドキュメントコレクションクラスとして定義され、上位のユニットフレームU1 にポインタpを介してリンクされている。
【0047】ユニットフレームU1 は、デバイスコレクションフレームDC及びブロックコレクションフレームBCを介し、各デバイスフレームD1 〜Dj と、各ブロックフレームB1 〜Bk とを接続することにより、各プロセス機器(各デバイスフレーム)の入力側又は出力側に各関数(各ブロックフレームB1 〜Bk )を適宜接続してなる1つの単位のプロセス制御を定義するものであり、上位のユニットコレクションフレームUCにポインタpを介して接続されている。なお、プロセス制御単位は、各プロセス機器と各関数との接続関係に対応し、全体として所望の制御演算を行なう。また、ユニットフレームU1 〜Um は、ワークフレームであるため、オブジェクトとして再利用可能である。
【0048】ユニットコレクションフレームUCは、下位の各ユニットフレーム(各プロセス制御単位)U1 〜Um の集合を管理するものであり、各プロセス制御の階層構造を定義するものであって、上位のシミュレータフレームS及びコンバータフレームCにポインタpを介して個別に接続されている。
【0049】シミュレータフレームSは、ワークフレーム編集部4により起動されたとき、ユニットコレクションフレームUCを介してユニットフレームU1 〜Um の集合により示される制御プログラムを解釈・実行し、その制御動作をシミュレーションするものである。このシミュレーションは、機種に依存しない仮想設計段階での論理の正否を事前判断を可能とし得るものである。
【0050】コンバータフレームCは、ワークフレーム編集部4により起動されたとき、ユニットコレクションフレームUCを介してユニットフレームU1 〜Um の集合により示される制御プログラムを実際のコントローラに理解可能なバイナリ構造(例えば言語など)へ変換するものである。なお、コンバータフレームCの起動は、少なくともシミュレータフレームSによるシミュレーションを済ませた後が好ましい。
【0051】ワークフレーム編集部4は、前述したワークフレーム記憶部2内の各ワークフレームの削除、編集、起動などの機能に加え、実際のコントローラのキー番号がデバイスフレームD1 〜Dj に登録されると、ブロックフレームB1 〜Bk 内の用途データに基づいて、2つのデバイスフレームD間の当該ブロックフレームBを前後いずれかのデバイスフレームD側に自動的に配置する機能と、操作者の操作により、この配置結果を修正する機能とをもっている。
【0052】次に、以上のようなエンジニアリングシステムの作用について説明する。ワークフレーム生成部1は、書込可能なワークフレームを生成する。このワークフレームは、ワークフレーム記憶部2に記憶され、ポインタを介してワークフレーム記憶部2内の他のワークフレームに上位/下位の階層関係をもたせてリンクされる。なお、ポインタpは各ワークフレーム間をポインタpでリンクさせるので、各ワークフレーム間は容易且つ確実にリンクされる。
【0053】ここで、オブジェクト書込部3は、操作者の操作に基づいて、ワークフレーム記憶部2内の各ワークフレーム毎に、プログラム、データ又はその両者からなるオブジェクトを書込む。これにより、ワークフレームの階層構造を実現できるため、コントローラ機器に依存せず、プロセスアプリケーションの階層構造に従って、ワークフレーム設計を支援することができる。
【0054】また、ワークフレーム生成部1は、操作者の操作により、ワークフレーム記憶部2内のワークフレームが複写指定されたとき、当該ワークフレームと同一のワークフレームを生成する。すなわち、ワークフレーム生成部1により、ワークフレームを再利用できるので、プログラミングに要する労力の低減を図ることができる。
【0055】また、ワークフレーム記憶部2内にて、各デバイスフレームD1 〜Dj にて各プロセス機器毎に機器データが定義され、デバイスコレクションフレームDCにて各デバイスフレームD1 〜Dj の集合が管理されるので、各デバイスフレームD1 〜Dj 及びデバイスコレクションフレームDCをプロセスデータベースとして利用することができる。また、このプロセスデータベースは、各プロセス機器に関する共通情報を提供することができる。
【0056】さらに、ワークフレーム記憶部2にて、各ブロックフレームB1 〜Bk にて各演算処理毎に関数が定義され、ブロックコレクションフレームBCにて各ブロッククラスの集合が管理される。また、ユニットフレームU1 にてブロックコレクションフレームBC及びデバイスコレクションフレームBCが管理される。
【0057】すなわち、各デバイスフレームD1 〜Dj と各ブロックフレームB1 〜Bk とが各コレクションフレームBC,DCを介してユニットフレームU1 にてリンクされるので、各デバイスフレームD1 〜Dj 内の機器データと、各ブロックフレームB1 〜Bk 内の関数とを適切に接続し、個々の単位の制御プログラムのプログラミングを実行することができる。
【0058】また、ユニットコレクションフレームUCにてユニットフレームU1 〜Um の集合が管理されるので、各単位の制御プログラムの集合からなるプロセス制御全体の制御プログラムのプログラミングを実行することができる。
【0059】また、各デバイスフレームD1 〜Dj には各プロセス機器が接続されるコントローラのキーデータが登録され、各ブロックフレームB1 〜Bk が自己の関数の用途データが登録されたとする。ワークフレーム編集部4は、各ブロックフレームB1 〜Bk 内の用途データに基づいて、当該ブロックフレームBを対応するデバイスフレームD内のキーデータに対応付けするので、制御のための関数を実際のコントローラへ容易に配置することができる。
【0060】なお、この配置処理について補足的に説明する。ユニットフレームU1 〜Um は、オブジェクトで定義されたアプリケーションが実際のコントローラから独立して定義されたため、実際には複数のコントローラに処理を分配する場合がある。コントローラに処理を分配する方法としては、以下のものがある。
【0061】ユニットフレームU1 〜Um はデバイスフレームD1 〜Dj よりも上位である。デバイスフレームD1 〜Dj は、最終的には、接続される実際のコントローラのキー番号の登録を必要とする。キー番号の登録が予め済んでいれば、例えばユニットフレームU1 は、図2R>2に示すように、ロジックが各コントローラ( Station 1〜 3)に分散されるように分割される。このとき、2つのデバイスフレームD間を接続するブロックフレームBをどのコントローラに配置するか、が重要である。
【0062】そこで、ブロックフレームB1 〜Bk には主に入力処理用か、出力処理用かを示す用途データを付与する。これにより、ワークフレーム編集部4は、入力処理用のブロックフレームB1 であれば、入力用のプロセス機器の管理されるコントローラへ、逆に出力処理用のブロックフレームBk であれば、出力用のプロセス機器の管理されるコントローラへ配置するように、ブロックフレームB1 〜Bkの配置を一次決定する。なお、この配置は、適宜設計者により、修正することができるが、大部分はこの一次決定で多くの作業量を低減することができる。
【0063】さらに、ワークフレーム記憶部2にて、文書データからなるドキュメントクラスが定義されるドキュメントフレームDM1 〜DMn と、ドキュメントフレームDM1 〜DMn の上位及びユニットフレームU1 の下位にリンクされてドキュメントクラスを管理するためのオブジェクトがドキュメントコレクションクラスとして定義されるドキュメントコレクションフレームDMCとを備えたことにより、仕様書作成、デバイスインターフェース、制御プログラム設計が統合され、プロセスインターフェースなどの共有情報を共有しながら並行して設計を支援することができる。
【0064】また、設計が終了し、制御プログラムがユニットコレクションフレームUCを介して各ユニットフレームU1 〜Um から得られるようになったとする。しかしながら、この設計終了後の制御プログラムは、コントローラの理解可能なバイナリ構造ではなく、翻訳する必要がある。この場合、ワークフレーム編集部4は、操作者の操作により、コンバータフレームCを起動する。コンバータフレームCは、起動されると、設計終了後の制御プログラムを各プロセス機器で理解可能なバイナリ構造へ変換する。これにより、始めて、制御プログラムは、各コントローラで直接理解できる構造になる。
【0065】また、設計が終了したが、コンバータフレームによる変換の前に制御プログラムの動作を確認したいとする。このとき、ワークフレーム編集部4は、操作者の操作により、シミュレーションフレームSを起動する。シミュレーションフレームSは、起動されると、設計終了後の制御プログラムの内容をシミュレーションする。これにより、コンバータフレームCによる変換前に、制御プログラムの動作を確認することができ、信頼性を向上させることができる。
【0066】上述したように本実施形態によれば、書込可能なワークフレームを階層構造にして設け、各ワークフレームに個別にオブジェクトを書込むことにより、コントローラ機器に依存せず、プロセスアプリケーションの階層構造に従って、ワークフレーム設計を支援することができる。
【0067】また、各ワークフレーム間は、ポインタpでリンクされるので、容易かつ確実に動作させることができる。さらに、ワークフレーム生成部1の複写機能により、ワークフレームを再利用できるので、プログラミングに要する労力の低減を図ることができる。
【0068】さらに、各プロセス機器を定義する各デバイスフレームD1 〜Dj 及びデバイスコレクションフレームDCを備えたことにより、各デバイスフレームD1 〜Dj 及びデバイスコレクションフレームDCをプロセスデータベースとして利用でき、プロセスデータベースにより、共通情報を提供することができる。また、ハードウェア(各プロセス機器)の設定をデバイスフレームD1 〜Dj で実現し、ソフトウェアの構築をユニットフレームU1 〜Um で実現するので、ハードウェアとソフトウェアとを独立に記述してプログラミングでき、もって、ハードウエアとソフトウェアとを同時に開発することができる。
【0069】また、各関数を示す各ブロックフレームB1 〜Bk 及びそれらを管理するブロックコレクションフレームBCを設けたので、各デバイスフレームD1 〜Dj 内の機器データと、各ブロックフレームB1 〜Bk 内の関数とを適切に接続することにより、プログラミングを実行することができる。
【0070】さらに、各ブロックフレームB1 〜Bk 内の用途データに基づいて、当該ブロックフレームB1 〜Bk を対応するデバイスフレームD1 〜Dj 内のキーデータに対応付けるので、制御のための関数を実際のコントローラへ容易に配置することができる。
【0071】また、ドキュメントフレームDM1 〜DMn とドキュメントコレクションフレームDCMにより、仕様書作成、デバイスインターフェース、制御プログラム設計が統合され、プロセスインターフェースなどの共有情報を共有しながら並行して設計を支援することができる。
【0072】さらに、コンバータフレームCにより、ユニットフレームU1 〜Um にて得られる制御プログラムを各プロセス機器で理解可能なバイナリ構造へ変換することができる。
【0073】また、シミュレーションフレームSにより、ユニットフレームU1 〜Um にて得られる制御プログラムの内容をシミュレーションできるので、信頼性を向上させることができる。
(第2の実施形態)図3は本発明の第2の実施形態に係るエンジニアリングシステムの概略構成を示す模式図であり、図1と同一部分には同一符号を付し、類似部分にはaの添字を付してその詳しい説明は省略し、ここでは異なる部分についてのみ述べる。
【0074】すなわち、本実施形態は、第1の実施形態の変形形態であり、プログラミング前のシステム設計に関する種々の支援機能を設け、ドキュメントの生成の容易化を図るものである。なお、各用語はIEC1131−3の規格に準拠している。また、詳細は省略するが、本実施形態にて生成されるドキュメントは、テキスト、表、絵などのファイルを1つのファイル内にまとめて取り扱う複合ドキュメント構造を有している。
【0075】具体的には図3に示すように、ワークフレーム編集部4aが、プロダクトビュアーPD、プロセスビュアーPC、コントロールシステムビュアーCS及びコンフィグレーションビュアーCFを備えて構成されている。
【0076】ここで、プロダクトビュアーPDは、操作者の操作に基づいて、全てのドキュメントフレームの一覧表示、編集及び各ビュアーへの展開を行なう機能をもっている。
【0077】プロセスビュアーPCは、ワークフレーム記憶部2内のドキュメントフレームDMにおけるデバイスリストDM1 とデバイスDM2 とに基づいて、ドキュメントフレームDM内のプロセス構成図DM3 の作成を支援するものであり、このプロセス構成図DM3 をグラフィックに表示・編集する機能をもっている。なお、ドキュメントフレームDMにおけるデバイスリストDM1 はデバイス名及びベンダ名等のオブジェクトが定義され、デバイスDM2 は機種名、インタフェース条件等のオブジェクトが定義されている。
【0078】コントロールシステムビュアーCSは、アセンブルアシスタントAA、レイアウトアシスタントLA及びワイヤリングアシスタントWAを備え、ワークフレーム記憶部2内のドキュメントフレームDMにおけるステーションリストDM4 及びモジュールリストDM6 に基づいて、ドキュメントフレームDM内のコントロールシステム構成図DM5 、ステーション構成図DM7 、部品配置図DM8 及び端子台接続図DM9 の作成を支援するものであり、これらコントロールシステム構成図DM5 、ステーション構成図DM7 、部品配置図DM8 及び端子台接続図DM9 をグラフィックに表示・編集する機能をもっている。なお、ドキュメントフレームDMにおけるステーションリストDM4 は、ステーション名、ベンダ名、機種名及びアドレス等のオブジェクトが定義され、モジュールリストDM6 は、モジュール名、機種名、アドレス、パラメータ等のオブジェクトが定義されている。
【0079】アセンブルアシスタントAAは、ワークフレーム記憶部2内にて、デバイスリストDM1 に基づいて、プロセスのデバイスの種類と数が与えられると、モジュールリストDM6 から適合するインタフェースモジュールを自動的に選択し、ステーション構成図DM7 上にて、モジュールを組上げてステーションを構成するステーション構成図DM7 の作成支援機能をもっている。
【0080】レイアウトアシスタントLAは、ステーションに用いられる各モジュールが選択済のとき、部品配置図DM8 上にて、各モジュールを標準盤に対して自動的にレイアウトする部品配置図DM8 の作成支援機能をもっている。
【0081】ワイヤリングアシスタントWAは、ステーションに用いられる各モジュールが選択済のとき、デバイスリストDM1 に基づいて、プロセスのデバイスを与えると、端子台接続図DM9 上にて、デバイスに対して自動的にI/O割付を行なう端子台接続図DM9 の作成支援機能をもっている。
【0082】なお、これら各アシスタントAA,LA,WAは、予め設計者の論理を設定し、その設定内容に基づいて支援処理を実行してもよい。コンフィグレーションビュアーCFは、コンフィグレーションに関するドキュメントDM10〜DM17の内容を表示、編集する機能をもっている。これらドキュメントDM10〜DM17の内容は、図3及び図4に示すように、コンフィグレーション定義(名称、コンテナハードウェア等)、グローバル変数定義(名称、タイプ、値、単位、コメント等)、リソース定義(名称、コンテナハードウェア等)、グローバル変数定義、タスク定義(名称、タスク属性、間隔、優先度等)、プログラム定義(名称、タスク名、クラス名、パラメータ等)、クラス定義(名称、クラスタイプ、パラメータ等)、アクセスパス定義(名称、伝送変数、タイプ、方向等)などがある。
【0083】次に、このようなエンジニアリングツールの作用について述べる。ワークフレーム記憶部2内のドキュメントフレームDMにおいては、デバイスリストDM1 、デバイスDM2 、モジュールリストDM6 の如き、システム設計に必要なプロセス機器のリストは、全て外部からインポート(入力)されて登録済であるとする。
【0084】いま、ワークフレーム編集部4aにおいては、操作者の操作により、プロダクトビュアーPDが起動されたとする。プロダクトビュアーPDは、操作者の操作に基づいて、図5に示すように、全てのドキュメントフレームDMの一覧表示を行なう。
【0085】ここで、操作者の操作により、図示しないプロセス構成図が選択されると、プロダクトビュアーPDに代えて、プロセスビュアーPCが展開される。プロセスビュアーPCは、図6に示されるように、ドキュメントDMのプロセス構成図DM3 を表示し、操作者の操作により、デバイスリストDM1 及びデバイスDM2を参照してその内容をプロセス構成図DM3 に組合せる。これにより、プロセス構成図DM3 の作成を支援することができる。
【0086】また、図5の一覧表示において、操作者の操作により、図示しないコントロールシステム構成図が選択されると、前述同様にコントロールシステムビュアーCSが展開される。コントロールシステムビュアーCSは、図7に示すように、ドキュメントDMのコントロールシステム構成図DM5 を表示し、操作者の操作により、ステーションリストDM4 を参照してその内容をコントロールシステム構成図DM5 に組合せる。これにより、コントロールシステム構成図DM5 の作成を支援することができる。
【0087】また、図5の一覧表示において、操作者の操作により、図示しないステーション構成図が選択されると、前述同様にコントロールシステムビュアーCSが展開される。コントロールシステムビュアーCSにおいては、図8に示すように、ドキュメントDMのステーション構成図DM7 を表示し、アセンブルアシスタントAAにより、モジュールリストDM6 を参照してその内容をステーション構成図DM7 に半自動的に組合せる。これにより、コントロールシステム構成図DM7の作成を支援することができる。また、半自動的に作成されたコントロールシステム構成図DM7 は、操作者の操作により、適宜修正される。
【0088】また同様に、図5の一覧表示において、操作者の操作により、図示しない部品配置図が選択されると、前述同様にコントロールシステムビュアーCSが展開される。コントロールシステムビュアーCSにおいては、図8に示すように、ドキュメントDMの部品配置図DM8 を表示し、レイアウトアシスタントLAにより、モジュールリストDM6 を参照してその内容を部品配置図DM8 に半自動的に組合せる。これにより、部品配置図DM8 の作成を支援することができる。半自動的に作成された部品配置図DM8 は、操作者の操作により、適宜修正される。
【0089】さらにまた、図5の一覧表示において、操作者の操作により、図示しない端子台接続図が選択されると、前述同様にコントロールシステムビュアーCSが展開される。コントロールシステムビュアーCSにおいては、図9に示すように、ドキュメントDMの端子台接続図DM9 を表示し、ワイヤリングアシスタントWAにより、デバイスリストDM1 を参照してその内容を端子台接続図DM9 に半自動的に組合せる。これにより、端子台接続図DM9 の作成を支援することができる。半自動的に作成された端子台接続図DM9 は、操作者の操作により、適宜修正される。
【0090】また一方、図5の一覧表示において、操作者の操作により、コンフィグレーションCFが選択されると、コンフィグレーションビュアーCFが展開される。コンフィグレーションビュアーCFにおいては、図4R>4に示したうちのコンフィグレーション定義のドキュメントDM10を表示し、操作者の操作により、適宜書込みを行なう。これにより、コンフィグレーション定義の設定を支援することができる。なお、図4中の他の各定義についても同様に設定を支援することができる。
【0091】上述したように本実施形態によれば、第1の実施形態の効果に加え、ワークフレーム編集部4aにおいて、作成したいシステムの図面に応じて予め論理設計された各種のビュアーPC,CS,CFを用い、デバイスリストDM1 やモジュールリストDM6 などを参照しながら各種の構成や配置、接続などを図面上に行なってこれら構成図等の作成を支援するので、プログラミング前のシステム設計に要する労力と費用とを低減することができる。
(他の実施形態)なお、上記実施形態に記載した手法は、コンピュータに実行させることのできるプログラムとして、磁気ディスク(フロッピーディスク、ハードディスクなど)、光ディスク(CD−ROM,DVDなど)、半導体メモリなどの記憶媒体に格納して頒布することもできる。その他、本発明はその要旨を逸脱しない範囲で種々変形して実施できる。
【0092】
【発明の効果】以上説明したように本発明によれば、コントローラ機器に依存せず、プロセスアプリケーションの階層構造に従って、ワークフレーム設計を支援できるエンジニアリングシステムを提供できる。
【0093】また、仕様書作成、デバイスインターフェース、制御プログラム設計が統合され、プロセスインターフェースなどの共有情報を共有しながら並行して設計を支援できるエンジニアリングシステムを提供できる。
【図面の簡単な説明】
【図1】本発明の第1の実施形態に係るエンジニアリングシステムの概略構成を示す模式図
【図2】同実施の形態における動作を説明するための模式図
【図3】本発明の第2の実施形態に係るエンジニアリングシステムの概略構成を示す模式図
【図4】同実施の形態におけるコンフィグレーションドキュメントの概略構成を示す模式図
【図5】同実施の形態における一覧表示画面を示す模式図
【図6】同実施の形態における動作を説明するための模式図
【図7】同実施の形態における動作を説明するための模式図
【図8】同実施の形態における動作を説明するための模式図
【図9】同実施の形態における動作を説明するための模式図
【図10】本発明の骨子を説明するための模式図
【符号の説明】
1…ワークフレーム生成部
2…ワークフレーム記憶部
3…オブジェクト書込部
4,4a…ワークフレーム編集部
p…ポインタ
D1 〜Dj …デバイスフレーム
DC…デバイスコレクションフレーム
B1 〜Bk …ブロックフレーム
BC…ブロックコレクションフレーム
DM1 〜DMn …ドキュメントフレーム
DMC…ドキュメントコレクションフレーム
U1 〜Um …ユニットフレーム
UC…ユニットコレクションフレーム
S…シミュレータフレーム
C…コンバータフレーム
PD…プロダクトビュアー
PC…プロセスビュアー
CS…コントロールシステムビュアー
CF…コンフィグレーションビュアー
AA…アセンブルアシスタント
LA…レイアウトアシスタント
WA…ワイヤリングアシスタント
W1 〜W3 …ワークフレーム
【特許請求の範囲】
【請求項1】 書込可能なワークフレームを生成するためのワークフレーム生成手段と、前記ワークフレーム生成手段により生成されたワークフレームが夫々記憶されるワークフレーム記憶手段と、前記ワークフレーム生成手段により生成されたワークフレームを前記ワークフレーム記憶手段内の他のワークフレームに上位/下位の階層関係をもたせてリンクさせるリンク手段と、前記ワークフレーム記憶手段内の各ワークフレーム毎に、プログラム、データ又はその両者からなるオブジェクトを書込むオブジェクト書込手段とを備えたことを特徴とするエンジニアリングシステム。
【請求項2】 請求項1に記載のエンジニアリングシステムにおいて、前記リンク手段は、各ワークフレーム間のリンク関係をポインタで定義することを特徴とするエンジニアリングシステム。
【請求項3】 請求項1又は請求項2に記載のエンジニアリングシステムにおいて、前記ワークフレーム生成手段は、前記ワークフレーム記憶手段内のワークフレームが複写指定されたとき、当該ワークフレームと同一のワークフレームを生成することを特徴とするエンジニアリングシステム。
【請求項4】 請求項1乃至請求項3のいずれか1項に記載のエンジニアリングシステムにおいて、前記ワークフレーム記憶手段は、各プロセス機器毎に機器データがデバイスクラスとして定義される複数のデバイスフレームと、前記各デバイスフレームの上位にリンクされて前記各デバイスクラスの集合を管理するためのオブジェクトがデバイスコレクションクラスとして定義されるデバイスコレクションフレームとを備えたことを特徴とするエンジニアリングシステム。
【請求項5】 請求項4に記載のエンジニアリングシステムにおいて、前記ワークフレーム記憶手段は、各演算処理毎に関数がブロッククラスとして定義される複数のブロックフレームと、前記各ブロックフレームの上位にリンクされて前記各ブロッククラスの集合を管理するためのオブジェクトがブロックコレクションクラスとして定義されるブロックコレクションフレームと、前記ブロックコレクションフレーム及び前記デバイスコレクションフレームの上位にリンクされて各コレクションクラスを管理するためのオブジェクトがユニットクラスとして定義されるユニットフレームと、前記ユニットフレームの上位にリンクされて前記ユニットクラスの集合を管理するためのオブジェクトがユニットコレクションクラスとして定義されるユニットコレクションフレームとを備えたことを特徴とするエンジニアリングシステム。
【請求項6】 請求項5に記載のエンジニアリングシステムにおいて、前記各デバイスフレームは前記各プロセス機器が接続されるコントローラのキーデータを有し、前記各ブロックフレームは自己の関数の用途データを備え、前記各ブロックフレーム内の用途データに基づいて、当該ブロックフレームを対応するデバイスフレーム内のキーデータに対応付けるブロック配置手段を設けたことを特徴とするエンジニアリングシステム。
【請求項7】 請求項5又は請求項6に記載のエンジニアリングシステムにおいて、前記ワークフレーム記憶手段は、文書データがドキュメントクラスとして定義されるドキュメントフレームと、前記ドキュメントフレームの上位及び前記ユニットフレームの下位にリンクされ、前記ドキュメントクラスを管理するためのオブジェクトがドキュメントコレクションクラスとして定義されるドキュメントコレクションフレームとを備えたことを特徴とするエンジニアリングシステム。
【請求項8】 請求項5乃至請求項7のいずれか1項に記載のエンジニアリングシステムにおいて、前記ワークフレーム記憶手段は、前記ユニットコレクションフレームの上位にリンクされ、前記ユニットフレームにて得られる制御プログラムを各プロセス機器で理解可能なバイナリ構造へ変換するためのオブジェクトがコンバータクラスとして定義されたコンバータフレームを備えたことを特徴とするエンジニアリングシステム。
【請求項9】 請求項8に記載のエンジニアリングシステムにおいて、前記ワークフレーム記憶手段は、前記ユニットコレクションフレームの上位にリンクされ、前記ユニットフレームにて得られる制御プログラムの内容をシミュレーションするためのオブジェクトがシミュレーションクラスとして定義されるシミュレーションフレームを備えたことを特徴とするエンジニアリングシステム。
【請求項1】 書込可能なワークフレームを生成するためのワークフレーム生成手段と、前記ワークフレーム生成手段により生成されたワークフレームが夫々記憶されるワークフレーム記憶手段と、前記ワークフレーム生成手段により生成されたワークフレームを前記ワークフレーム記憶手段内の他のワークフレームに上位/下位の階層関係をもたせてリンクさせるリンク手段と、前記ワークフレーム記憶手段内の各ワークフレーム毎に、プログラム、データ又はその両者からなるオブジェクトを書込むオブジェクト書込手段とを備えたことを特徴とするエンジニアリングシステム。
【請求項2】 請求項1に記載のエンジニアリングシステムにおいて、前記リンク手段は、各ワークフレーム間のリンク関係をポインタで定義することを特徴とするエンジニアリングシステム。
【請求項3】 請求項1又は請求項2に記載のエンジニアリングシステムにおいて、前記ワークフレーム生成手段は、前記ワークフレーム記憶手段内のワークフレームが複写指定されたとき、当該ワークフレームと同一のワークフレームを生成することを特徴とするエンジニアリングシステム。
【請求項4】 請求項1乃至請求項3のいずれか1項に記載のエンジニアリングシステムにおいて、前記ワークフレーム記憶手段は、各プロセス機器毎に機器データがデバイスクラスとして定義される複数のデバイスフレームと、前記各デバイスフレームの上位にリンクされて前記各デバイスクラスの集合を管理するためのオブジェクトがデバイスコレクションクラスとして定義されるデバイスコレクションフレームとを備えたことを特徴とするエンジニアリングシステム。
【請求項5】 請求項4に記載のエンジニアリングシステムにおいて、前記ワークフレーム記憶手段は、各演算処理毎に関数がブロッククラスとして定義される複数のブロックフレームと、前記各ブロックフレームの上位にリンクされて前記各ブロッククラスの集合を管理するためのオブジェクトがブロックコレクションクラスとして定義されるブロックコレクションフレームと、前記ブロックコレクションフレーム及び前記デバイスコレクションフレームの上位にリンクされて各コレクションクラスを管理するためのオブジェクトがユニットクラスとして定義されるユニットフレームと、前記ユニットフレームの上位にリンクされて前記ユニットクラスの集合を管理するためのオブジェクトがユニットコレクションクラスとして定義されるユニットコレクションフレームとを備えたことを特徴とするエンジニアリングシステム。
【請求項6】 請求項5に記載のエンジニアリングシステムにおいて、前記各デバイスフレームは前記各プロセス機器が接続されるコントローラのキーデータを有し、前記各ブロックフレームは自己の関数の用途データを備え、前記各ブロックフレーム内の用途データに基づいて、当該ブロックフレームを対応するデバイスフレーム内のキーデータに対応付けるブロック配置手段を設けたことを特徴とするエンジニアリングシステム。
【請求項7】 請求項5又は請求項6に記載のエンジニアリングシステムにおいて、前記ワークフレーム記憶手段は、文書データがドキュメントクラスとして定義されるドキュメントフレームと、前記ドキュメントフレームの上位及び前記ユニットフレームの下位にリンクされ、前記ドキュメントクラスを管理するためのオブジェクトがドキュメントコレクションクラスとして定義されるドキュメントコレクションフレームとを備えたことを特徴とするエンジニアリングシステム。
【請求項8】 請求項5乃至請求項7のいずれか1項に記載のエンジニアリングシステムにおいて、前記ワークフレーム記憶手段は、前記ユニットコレクションフレームの上位にリンクされ、前記ユニットフレームにて得られる制御プログラムを各プロセス機器で理解可能なバイナリ構造へ変換するためのオブジェクトがコンバータクラスとして定義されたコンバータフレームを備えたことを特徴とするエンジニアリングシステム。
【請求項9】 請求項8に記載のエンジニアリングシステムにおいて、前記ワークフレーム記憶手段は、前記ユニットコレクションフレームの上位にリンクされ、前記ユニットフレームにて得られる制御プログラムの内容をシミュレーションするためのオブジェクトがシミュレーションクラスとして定義されるシミュレーションフレームを備えたことを特徴とするエンジニアリングシステム。
【図1】
【図2】
【図4】
【図10】
【図3】
【図5】
【図9】
【図6】
【図7】
【図8】
【図2】
【図4】
【図10】
【図3】
【図5】
【図9】
【図6】
【図7】
【図8】
【公開番号】特開平11−85490
【公開日】平成11年(1999)3月30日
【国際特許分類】
【出願番号】特願平9−245344
【出願日】平成9年(1997)9月10日
【出願人】(000003078)株式会社東芝 (54,554)
【公開日】平成11年(1999)3月30日
【国際特許分類】
【出願日】平成9年(1997)9月10日
【出願人】(000003078)株式会社東芝 (54,554)
[ Back to top ]