(57)【特許請求の範囲】
【請求項１】
繰り返し動作を行う熱風炉を制御するための制御用ソフトウエアであって、
アクチュエータ又はセンサへの指令が階層フローに従って、該アクチュエータ又はセンサまで伝達されるように、
制御対象である熱風炉の状態の切替タイミングを決定する切替モードに応じたタイマ値、熱風炉の熱状態、及び送風機又は高炉の状態について、セット指令番号である機動サブセット番号と、モード条件、時間条件、シーケンス条件とで定義されるセット階層と、
セット指令番号毎に、ユニット起動可能条件と、サブセット指令番号である動作ユニット番号とが定義されることで、熱風炉の定常状態への移行過程における動作を定義し管理すると共に、熱風炉状態切替に動作させるアクチュエータ又はセンサを管理するサブセット階層と、
サブセット指令番号毎に、該サブセット階層の中で動作させるアクチュエータ又はセンサのパーツ番号とパーツ起動条件とが定義されるユニット階層と、
パーツ番号に対応したアクチュエータ又はセンサを動作させるパーツ階層と、から構成される制御システムを、
前記セット指令番号と、サブセット指令番号と、パーツ番号と、から前記階層の動作部位のトレースをするように機能させ、
且つ、前記階層において内部的に作り出されたセット状態信号とサブセット状態信号とユニット状態信号と、ハードウェアにつながり、パーツとして定義したプログラムを介して入出力が行われるパーツ信号と、ヒューマンマシンインタフェイス（ＨＭＩ）との間で入出力されるＨＭＩ信号と、を有する前記制御システムにおいて扱うシステム信号のうち、
各信号を事前に組み合わせて作成された補助的な信号であるプログラム内部信号に、前記ＨＭＩ信号を割り付けないように機能させるための制御用ソフトウエア。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、熱風炉制御用ソフトウエアに係り、特に、製鉄所における熱風炉制御システムに用いるのに好適な、基幹部のソフトウエアを容易に構築し、管理することが可能な、熱風炉制御用ソフトウエアに関する。
【０００２】
【従来の技術】
システムソフトウエアの開発においては、産業分野特有の機能設計がなされているが、ユーザ側のアクチュエータやセンサタイプ、運転方案要件に依存する形となり、機能は多岐にわたり、ソフトウエア作成は、機能仕様の決定後、行われることが多い。
【０００３】
熱風炉のように繰り返し動作を行う設備においては、運転方案的には自由度が少なく、一方で、実際に現場で動作するアクチュエータやセンサの仕様にばらつきがあるという特徴を持つ。このような設備に対するプログラム作成において、通常は、フィールド信号の仕様に合わせて実際に、プログラム内部信号として割付後、コーディングを進めている。
【０００４】
【発明が解決しようとする課題】
ソフトウエア作成後に信号仕様の変更が行われると、変更された信号を使用しているプログラムの検索や、変更による影響をプログラム全体を通して確認する必要が生じるが、従来は、一々手作業で確認する必要があり、大変な手間が掛かるだけでなく、洩れが発生する可能性もあった。
【０００５】
本発明は、前記従来の問題点を解決するべくなされたもので、熱風炉制御用ソフトウエアの作成及び解析や改造を容易にすることを課題とする。
【０００６】
【課題を解決するための手段】
本発明は、繰り返し動作を行う熱風炉を制御するための制御用ソフトウエアであって、
アクチュエータ又はセンサへの指令が階層フローに従って、該アクチュエータ又はセンサまで伝達されるように、制御対象である熱風炉の状態の切替タイミングを決定する切替モードに応じたタイマ値、熱風炉の熱状態、及び送風機又は高炉の状態について、セット指令番号である機動サブセット番号と、モード条件、時間条件、シーケンス条件とで定義されるセット階層と、セット指令番号毎に、ユニット起動可能条件と、サブセット指令番号である動作ユニット番号とが定義されることで、熱風炉の定常状態への移行過程における動作を定義し管理すると共に、熱風炉状態切替に動作させるアクチュエータ又はセンサを管理するサブセット階層と、サブセット指令番号毎に、該サブセット階層の中で動作させるアクチュエータ又はセンサのパーツ番号とパーツ起動条件とが定義されるユニット階層と、パーツ番号に対応したアクチュエータ又はセンサを動作させるパーツ階層と、から構成される制御システムを、前記セット指令番号と、サブセット指令番号と、パーツ番号と、から前記階層の動作部位のトレースをするように機能させ、且つ、前記階層において内部的に作り出されたセット状態信号とサブセット状態信号とユニット状態信号と、ハードウェアにつながり、パーツとして定義したプログラムを介して入出力が行われるパーツ信号と、ヒューマンマシンインタフェイス（ＨＭＩ）との間で入出力されるＨＭＩ信号と、を有する前記制御システムにおいて扱うシステム信号のうち、各信号を事前に組み合わせて作成された補助的な信号であるプログラム内部信号に、前記ＨＭＩ信号を割り付けないように機能させることで、前記課題を解決したものである。
【００１０】
制御システムのプログラムは、大きく、状態認識、動作指令、異常管理に大別されるが、本発明では、次の特徴を持ったプログラムスケルトンと開発環境を提案する。
【００１１】
（１）制御システム全体の構成を階層に分離し、各機器の指令は、階層フローに従って機器まで伝達される。
【００１２】
ここで、機器の状態情報及び各階層で定義されたプログラムの状態情報は、どの階層からでもアクセス可能とし、起動条件として取り込み可能とすることができる。
【００１３】
特に、熱風炉の切替システムとしては、４階層に階層化し、セット階層、サブセット階層、ユニット階層、パーツ階層として定義する。
【００１４】
（２）実際の制御システムと結合されたハードウエアに対する入出力情報及び画面から入力される情報、又、これらを組み合わせて作られる、機器の状態情報や定義されたプログラムの状態を示すシステム信号を、データベースとして管理し、各階層の定義体を生成する際に参照できる機能を持つ。
【００１５】
（３）上位階層として定義可能な雛形をリスト形式で持ち、上位階層からの指令がどの信号にリンクするか、又は、システム信号を使っている上位階層はどれに該当するのかを、検索できる機能を持つ。
【００１６】
（４）ヒューマンマシンインタフェイス（ＨＭＩ）部分にシステム信号データベースを持ち、制御プログラムとして必要な信号をそのまま入出力するのか、もしくは、事前加工を必要とするのかという情報を与えることで、新たに加工する必要があるシステム内信号のリストを生成する機能を持つ。
【００１７】
ここで、制御プログラムのシーケンスに関わる信号とＨＭＩを独立した形とするのは、一般に制御システムのＨＭＩの決定とタイミングがずれるため、整合性を取る必要があるからである。
【００１８】
このようにして、本信号割付を事前に確認し、それを雛型化されたドキュメント上でチェック可能とすることで、プログラムの作成及び解析、改造が容易になる。
【００１９】
即ち、プログラムを作成する際には、使用するアクチュエータタイプの仕様が未決定であっても、運転方案で動作させるアクチュエータの順番が決まっている場合には、設計をシステム信号レベルで行うことが可能となり、作成効率を向上できる。又、運転方案の変更により、一連の動作途中での割り込みを行う必要が発生した場合でも、対象となるユニットを分割することで、プログラムを容易に修正することができる。
【００２０】
又、プログラムの解析作業を行う場合には、関連するプログラムの記述がどこになされているのかを検索する際にも、実動作イメージでプログラムを階層化しているので、使用している項目番号（信号番号）を容易に検索することができ、影響する範囲を雛形で管理することができる。
【００２１】
以上のように、制御システムにおけるプログラムの作成を容易、且つ、一元管理することができるようになる。
【００２２】
【発明の実施の形態】
以下図面を参照して、本発明の実施形態を詳細に説明する。
【００２３】
本実施形態は、熱風炉切替制御に関し、図１に示すようなプログラムの階層化を行い、切替タイミングを判断する機能を有するセット階層１０、「送風」、「燃焼」、「休止」といった炉の定常状態の移行過程における動作を定義し管理する機能及び切替状態時に動作させる機器を管理する機能を有するサブセット階層１２、該サブセット階層１２の中で管理させ動作させる機器（アクチュエータ）を定義する機能を有するユニット階層１４、各機器を動作させる機能を有するパーツ階層１６の４階層にプログラムを大別する。
【００２４】
前記パーツ階層１６は、各アクチュエータタイプ毎、例えば電磁弁であるか電動弁であるかといった機種と、状態入力情報が開のみか閉のみか両方あるか等の仕様に応じて分類され、機器を手動単独で動作させるために必要なプログラムが記述される階層とする。
【００２５】
又、センサ情報の取り込み方式についても、センサのタイプ毎に、プログラムとして記述する必要があり、このプログラムもパーツ階層１６に相当する。
【００２６】
前記ユニット階層１４では、各アクチュエータの一連の動作順序を、タイマ値又は各アクチュエータの状態信号を条件として記述する。アクチュエータのタイプによらず、プロセスの切替に必要な状態移行で使用する機器の動作は、一般的に一連の動作を伴うことが多く、その最小単位をユニットと称する。本ユニット階層１４では、各アクチュエータの状態と、アクチュエータへ与える指令の状態、及び、タイマによって記述可能な一連の動作を記述するものとし、「圧力条件の成立」といった、プロセスに依存する条件が間に入る場合や、一連の動作の中で、一旦ある特定の状態維持を行う必要がある場合、もしくは、異常発生時の緊急的動作を記述する一連の動作部分は、ユニットを分けて定義する。
【００２７】
前記サブセット階層１２は、例えば「燃焼から休止」、「休止から送風」といった炉状態切替における各アクチュエータの一連の動作順序を、ユニットの集合体として記述する。本サブセット階層１２内にユニットの起動条件及びインターロック条件等を記述する。
【００２８】
前記セット階層１０は、サブセットに相当する切替開始タイミングを決定するロジックを決定するプログラムを条件記述する。セットに関する条件の内部には、切替モードに応じたタイマ値、熱風炉の熱状態、及び、送風機又は高炉の状態から決定するロジックを内包する。
【００２９】
以下、本発明によるプログラム開発支援環境について説明する。
【００３０】
制御システムが扱う、プログラム内での信号は、図２のように、ハードウエアとソフトウエア信号を大きく分離して分類する。この考え方は、ソフトウエアとハードウエアのインターフェイスを明確にする上で、実際に制御システムを構築する際に便利な考え方である。
【００３１】
ここでは、次のように用語を定義している。即ち、アクチュエータやセンサといったハードウエア的につながる信号は、パーツとして定義したプログラムを介して入出力が行われるため「パーツ（状態）信号」２０と称する。
【００３２】
又、ＨＭＩとの間で入出力される信号を「ＨＭＩ信号」２２と称する。
【００３３】
又、プログラム設計上で複雑な条件文を構成する場合、事前に各信号を組み合わせて補助的な信号を作成する必要があり、これを「プログラム内部信号」３０と称する。
【００３４】
又、前記のプログラムを階層化することで、内部的に作り出した信号を「セット状態信号」３２、「サブセット状態信号」３４、「ユニット状態信号」３６として区別する。
【００３５】
ここで、ＨＭＩ信号２２をプログラム内部信号として割り付けないのは、ＨＭＩへの表示項目に関しては、機能設計段階で決定が遅れる傾向があるからである。このようなシステムで扱う信号を総称して「システム信号」と称する。
【００３６】
図３に示す如く、条件と指令番号で記述されるセット、サブセットの雛形４２、４４、１つのパーツは、１つのユニットに内包されるように定義されたユニットの雛形４６、アクチュエータリスト５２とセンサリスト５４を含む機器リスト５０、プログラム作成時に処理を行う内部システム信号定義リスト６０、ＨＭＩ項目リスト６２を外部入力環境として定義する。
【００３７】
図３において、７０はセット雛型４２、サブセット雛型４４及びユニット雛型４６を含む内部信号データベース７２と、パーツ信号データベース７４を含むシステム信号データベース、７６はアクチュエータプログラムライブラリ、７８はセンサプログラムライブラリである。
【００３８】
セット階層からサブセット階層へ指令を行う定義は、図４にセット階層の定義雛型の例を示す如く、サブセット起動命令として管理され、その指令番号定義は、ユニークな符号（番号）管理が行われる。本定義は、予め用意された雛形に入力することで、データベースとして管理され、自動的に発番される機能を有する。サブセット階層からユニット階層に対する指令に関しても、図５にサブセット階層の定義雛型の例を示す如く、同様である。図６に、一般的な機器の連動動作とユニットの分け方の例を示し、図７にユニット階層の定義の例を示す。
【００３９】
パーツ階層に関しては、ユーザ側の要求後に雛形管理し、記述する方式ではなく、アクチュエータやセンサタイプ毎に記述されるプログラムは統一することが可能であるため、予めプログラムを作成し、パーツライブラリとして登録しておく。ユーザが使用する実際の機器を図８に示す如くリストに入力することで、ユニット階層とのインターフェイスは、タイプ毎に、プログラム記述上の項目名が、実際のアクチュエータの指令及び状態情報として、何を生成すべきか、本ライブラリを参照することで自動的に生成される。例えば、機器種類は、選択肢Ａから選ぶことにより、各機器種類毎のリスト定義を可能とし、機器使用は、選択肢Ｂから選ぶことにより、リスト定義を行うことができる。
【００４０】
選択肢Ａでは、例として、遮断弁、コントロール弁・・・電動機などの機器種類情報を、選択肢Ｂでは、これら機器情報の仕様が定義された中での詳細選択ができ、例えばソレノイドタイプの電磁弁回路であれば、ソレノイドバルブの型式、電圧、電流等を定義している情報の中からパターンＡ、パターンＢ、パターンＣ等のパターン選択肢を選ぶことにより、各タイプ毎に定義がなされ、これら機器番号と項目番号を合わせることで、システム信号番号が決定される。
【００４１】
このように、ユーザの使用する機器リストを入力することで、パーツを自動選択し、パーツ信号データベース７４を生成させる。上位階層の雛形においては、本システム信号データベース７０から生成されるリストを選択することで、判定条件項目を抽出することが可能となる。この過程の中で、判断条件として必要となるシステム信号がない場合には、内部システム信号として加工する必要があり、その信号の加工方法は、図９に示す如く、内部システム信号シート雛形に記述する方式をとる。即ち、必要なシステム信号は、ユーザ側から提供される機器仕様とプログラム作成時に必要な内部的信号、ＨＭＩの項目リストから生成されるデータベースで一元管理されるようにする。又、本システム信号データベース７０に書き込まれる信号は、プログラム資源の発散を防ぐために、図２に示すように、ＨＭＩ信号２２及びプログラム内部信号３０を、パーツ信号２０と１対１に対応するか否かをチェックする参照機能を持つ。
【００４２】
このような雛形及びデータベース管理を行うことで、例えばセット階層からの指令で、下位のサブセット階層、ユニット階層、パーツ階層のどの部位が動作するかを、順次ユニークに決められたセット指令番号、サブセット指令番号、パーツ番号でトレースできる機能が実現される。逆に、システム信号の番号を使用することで、そのシステム番号を指定しているユニット、サブセット、セットのトレースバックが可能となり、機器仕様変更が生じた場合でも、機能のどの部分に影響するのかを簡単に検索できる。
【００４４】
【発明の効果】
本発明によれば、ソフトウエア作成に際しては、使用するアクチュエータタイプの仕様が未決定であっても、運転方案で動作させるアクチュエータの順番が決まっている場合には、ユニットの定義に仮のアクチュエータタイプを記述しておくことで、制御プログラムを作成することが可能である。
【００４５】
又、運転方案の変更により、一連の動作途中での割り込みを行う設計の必要が発生した場合でも、対象となるユニットを分割することで、プログラムを容易に修正することができる。
【００４６】
更に、プログラムの解析作業を行う場合にも、関連するプログラムの記述がどこになされているのかを検索する際に、実動作イメージでプログラムを階層化しているので、使用している項目番号（信号番号）を容易に検索することができ、影響する範囲を雛形上管理することができる。
【００４７】
以上のように、制御システムにおけるプログラムの作成を容易且つ一元管理することができるようになる。
【図面の簡単な説明】
【図１】制御用ソフトウエアの階層化の概念を示す線図
【図２】本発明による制御システム内の信号分類を示す線図
【図３】本発明に係るプログラム作成装置の実施形態の構成を示すブロック図
【図４】前記実施形態におけるセット階層の定義雛形の例を示す線図
【図５】同じくサブセット階層の定義雛形の例を示す線図
【図６】同じく一般的な機器の連動動作とユニットの分け方の例を示す線図
【図７】同じくユニット階層の定義雛形の例を示す線図
【図８】同じく機器リストの入力のイメージを示す線図
【図９】同じくＨＭＩ項目リストの入力のイメージを示す線図
【図１０】同じくプログラム信号内部リストの入力のイメージを示す線図
【符号の説明】
１０…セット階層
１２…サブセット階層
１４…ユニット階層
１６…パーツ階層
２０…パーツ信号
２２…ＨＭＩ信号
３０…プログラム内部信号
３２…セット状態信号
３４…サブセット状態信号
３６…ユニット状態信号
４２、４４、４６…雛形
５０…機器リスト
５２…アクチュエータリスト
５４…センサリスト
６０…内部システム信号定義リスト
６２…ＨＭＩ項目リスト
７０…システム信号データベース
７２…内部信号データベース
７４…パーツ信号データベース
７６…アクチュエータプログラムライブラリ
７８…センサプログラムライブラリ
【図１】
0004032799.tif 000002
【図２】
0004032799.tif 000003
【図３】
0004032799.tif 000004
【図４】
0004032799.tif 000005
【図５】
0004032799.tif 000006
【図６】
0004032799.tif 000007
【図７】
0004032799.tif 000008
【図８】
0004032799.tif 000009
【図９】
0004032799.tif 000010
【図１０】
0004032799.tif 000011