以下に、本発明に係る歩進制御装置について図面に基づいて説明する。なお、本実施形態では、本発明に係る歩進制御装置を、弁の開度を制御する制御機器に適用した例を挙げて説明するが、本発明はこれに限定されない。
(実施形態)
図1は、本発明の実施の形態に係る歩進制御装置1のハードウエア構成を示すブロック図である。図1に示すように、本実施形態に係る歩進制御装置1は、被制御機器であるフィールド機器4A、4Bをそれぞれ制御するコントローラ3A、3Bに例えばLAN等のネットワーク2を介して接続される情報処理装置により構成される。
本実施形態において、情報処理装置は、例えばPC(パーソナルコンピュータ。いわゆるパソコン)により構成され、後述するように、CPU14が、制御プログラムに基づいて複数の制御ステップを歩進させてコントローラ3A(コントローラ1)、3B(コントローラ2)によるフィールド機器4A、4Bの制御を実行させる制御機能を有する。
図1に示すように、歩進制御装置1は、表示手段であるLCDモニタ11、入力手段であるキーボード12及びマウス13、主制御部であるCPU(中央処理装置)14、記憶手段であるハードディスク15、RAMやROM等から成るメモリ16、通信インタフェース部であるネットワークカード17を備えている。
歩進制御装置1において、CPU14は、制御プログラム(制御シーケンス)に基づく複数の制御ステップを自動歩進させる(自動運転)歩進制御機能を有するとともに、上記自動運転中に一連の制御ステップの実行順序や制御パラメータ等を変更する歩進修正制御機能を有する歩進制御部141を有する。
歩進制御装置1において、LCDモニタ11は、図2に示すような、歩進修正制御に用いる歩進制御テーブルを表示する画面(以下、歩進制御画面と呼称する。)20を表示する。キーボード12は、歩進制御画面20の複数の表示項目のうちの後述する変更設定ツール220を用いて各種歩進制御パラメータを入力する。マウス13は、歩進制御画面20の複数の表示項目のうちの後述する歩進管理ツール210の一つである押しボタン類(自動開始ボタン52、自動終了ボタン53等)を操作する。ハードディスク15は、ソフトウエア(歩進制御プログラム)及び歩進制御パラメータを記憶する。メモリ16は、CPU14とその中に歩進制御手段として設けられる歩進制御部141が歩進制御処理に用いる上記ソフトウエア、歩進制御パラメータ及び制御画面等をメモリ16の例えばRAMに展開する。
ネットワークカード17は、情報処置装置10とコントローラ3A、3Bとの間でネットワーク2による双方向の通信を行うための通信インタフェースの働きをする。具体的には、ネットワークカード17は、歩進制御画面20に表示される複数の制御項目を使ってキーボード12から設定される各種歩進制御パラメータの設定値をネットワーク2を介してコントローラ3A(コントローラ1)、3B(コントローラ2)に送信する。また、ネットワークカード17は、コントローラ3A、3Bからのデータをネットワーク2により受信し、歩進制御画面20に表示するためにCPU14へと送る。コントローラ3A、3Bは、それぞれ、フィールド機器4A、4Bの情報を上位機器である歩進制御装置1に送り、上位機器である歩進制御装置1からの情報を下位機器であるフィールド機器4A、4Bへと送る。
本実施形態の歩進制御装置1は、例えば10ステップから成る歩進制御テーブルの内容を表示する歩進制御画面20(図2参照)を基本として操作する。歩進制御装置1において、CPU14の歩進制御機能は、図示しない歩進タイマを基準として制御ステップを進める。歩進制御機能は、通常、制御プログラムに基づいて一連の制御ステップを順次自動的に歩進させる自動運転を行う。上記自動運転の実行中、例えばある制御ステップの開始前、操作者が、LCDモニタ11に表示されている歩進制御画面20上の開始ボタン(図2における自動開始ボタン52)を押すと、歩進タイマが設定され、歩進制御画面20を用いた歩進修正制御が開始される。その後、操作者が歩進制御画面20上の終了ボタン(同、自動終了ボタン53)を押すことで歩進制御画面20を用いた歩進修正制御から抜け出すことができる。
自動運転中にシームレスな手動介入を許容するために、歩進制御画面20には、複数の制御ステップの歩進の変更操作を行う歩進管理ツール210として、自動開始ボタン52、自動終了ボタン53の他、バックボタン54、一時停止ボタン55、再開ボタン56、スキップボタン57が設けられる。また、上記各制御ステップの進捗の管理を行う歩進管理ツール210としては、進捗率算出部60が設けられる。
歩進制御画面20の詳細構成について図2を参照して説明する。歩進制御装置1の歩進制御画面20は、図2に示すように、表示項目として、歩進制御テーブル名21、STEP(ステップ)22、プリステップ(前置ステップ)23、ステップ番号24、工程名25、STEP TIMER(ステップタイマ)26、ステップタイマ設定値27、進捗表示項目271、進捗表示欄275、Direct Control(直接制御項目)28、弁1開度%(直接制御項目1)29、弁1開度設定値%30、弁2開度%(直接制御項目2)31、弁2開度設定値%32、Action Control(ネットワーク経由制御項目)33、Tact=0sec34、Tact=4sec35、Tact=8sec36、Tact=12sec37、Tact=16sec38、1:ACTION 1(39)、2:ACTION 2(40)、3:ACTION 3(41)、4:ACTION 4(42)、Flow Control(フローコントロール)43、GOTO欄44、飛び先ステップ番号45、REPEAT(リピート欄)46、繰り返し回数47、CONDITION(コンデション欄)48、条件コード49、ACTION CODE 一覧50、CONDITION CODE 一覧51、自動開始ボタン52、自動終了ボタン53、バックボタン54、一時停止ボタン55、再開ボタン56、スキップボタン57、スキップロックボタン58、スキップロック解除ボタン59の各表示項目を有している。
上記表示項目のうち、自動開始ボタン52は歩進制御の開始を指示するボタンであり、自動終了ボタン53は歩進制御の終了を指示するボタンである。バックボタン54は制御ステップを戻す(後退させる)ことを指示する後退ボタンであり、スキップボタン57は制御ステップを進める(スキップする)ことを指示する前進ボタンである。一時停止ボタン55は制御ステップの一時停止を指示するボタンであり、再開ボタン56は一時停止されている制御ステップの再開を指示するボタンである。スキップロックボタン58はスキップボタン57による制御ステップのスキップが行えないようにスキップロックを行うボタンであり、スキップロック解除ボタン59は、スキップロックを解除するボタンである。
このように、歩進制御画面20において、自動開始ボタン52、自動終了ボタン53、バックボタン54、一時停止ボタン55、再開ボタン56、スキップボタン57、スキップロックボタン58、スキップロック解除ボタン59は、制御プログラムの自動運転時の制御ステップの歩進の変更を指示する、すなわち、上記各ボタンは、制御ステップの歩進の管理を行う歩進管理ツール210として機能する。
また、図2に示す歩進制御画面20においては、上記ボタン以外の歩進管理ツール210として、各制御ステップの進捗の管理を行う進捗率算出部60が設けられる。進捗率算出部60は、歩進制御画面20上の複数の制御ステップごとに当該各制御ステップの進捗率を算出する。進捗率算出部60により算出された各制御ステップの進捗率は、歩進制御画面20上に設けられる進捗表示項目271の各制御ステップごとに設けられる進捗表示欄275に例えば棒グラフによって表示される。
歩進制御画面20において、複数の制御ステップ間の制御ステップの歩進の変更及び進捗の管理を行う歩進管理ツール210の右側に位置する各表示項目を図2の左側から順に説明する。第1の項目はステップ番号24であり、ステップ番号24の前にはプリステップ23がある。プリステップ23は、ステップ番号24で識別される該当するステップが開始されてから数秒間留まる。プリステップ中は、該当するプリステップ23の欄が点灯状態となり、バックボタン54およびスキップボタン57で1〜10の各ステップ番号24に対応するプリステップ1から10までを動くことができる。プリステップの時点ではステップの歩進制御は開始されていないのでフィールド機器4A、4Bは動作しない。プリステップが1のステップに留まりタイムアウトした後に該当ステップが開始され、ステップタイマ26のステップタイマ設定値27が設定される。
第2の項目は工程名25であり、該当するステップの工程名を記入する。この工程名25は、マウス13でクリックすることでキーボード12から変更することができると共に、ハードディスク15に保存することができ、読み出すこともできる。
第3の項目は、ステップタイマ設定値27であり、該当するプリステップ23がタイムアウトしてステップが開始された時にこのステップタイマ設定値27がステップタイマ26に設定される。このステップタイマ設定値27は、該当するステップが開始されていなければ、いつでも訂正変更でき、ハードディスク15に書き込み及び読み出しできる。
第4および第5の項目は、直接制御項目28であり、ネットワーク2を介さずに制御指令を発行可能なフィールド機器4A、4Bのグループを制御する。直接制御項目28の項目数は、直接制御項目1(弁1開度%29)と直接制御項目2(弁2開度%31)の2項目とは限らない。例えば、弁開度0〜100%を実数で設定でき、変更可能であり、ハードディスク15に読み書きできる。
なお、歩進制御画面20のステップタイマ26と直接制御項目28の直接制御項目1との間には、進捗表示項目271が設けられる。進捗表示項目271は、複数の制御ステップにそれぞれ対応して設けられて当該各制御ステップの進捗率を表示する進捗表示欄275を有する。進捗表示欄275には、歩進管理ツール210の一つである進捗率算出部60により算出された各制御ステップの進捗率が、当該各制御ステップに対応して表示される。進捗率算出部60による進捗率の算出処理については後で図4のS210の説明に関連して詳述する。
第6の項目は、ネットワーク経由制御項目33の例えば4つの項目のうちの最初の項目であるTact=0sec34である。Tact=0sec34は、該当ステップ開始直後のタイミングに直接制御項目28の機器動作指令を発行するものであり、通常は他のアクションコードを設定しない。
第7の項目は、上記Tact=0sec34の次の項目に当たるTact=4sec35である。Tact=4sec35は、該当ステップ開始から例えば4秒後のタイミングに発行する機器動作指令のためのアクションコードが設定される。第8の項目は、上記Tact=4sec35の次の項目に当たるTact=8sec36である。Tact=8sec36は、該当ステップ開始から例えば8秒後のタイミングで発行する機器動作指令のためのアクションコードが設定される。
第9の項目は、上記Tact=8sec36の次の項目に当たるTact=12sec37である。Tact=12sec37は、該当ステップ開始から例えば12秒後のタイミングで発行する機器動作指令のためのアクションコードが設定される。第10の項目は、上記Tact=12sec37の次の項目に当たるTact=16sec38である。Tact=16sec38は、該当ステップ開始から例えば16秒後のタイミングで発行する機器動作指令のためのアクションコードが設定される。
上述したアクションコードは、1:ACTION 1、2:ACTION 2、のような書式で表記される。上記アクションコードを設定するためにキーボード12から数字の1を入力すると、1:ACTION 1と表示される。同様に、キーボード12から数字の2を入力すると2:ACTION 2と表示される。アクションコードを設定しない場合は数字の0を入力すると0:**と表示してNOP(ノンオペレイション)を表す。ここで設定したアクションコードは、ハードディスク15で読み書きできる。
このように、歩進制御画面20は、ステップ番号24で識別されるステップに対応して設けられ制御動作を定義する制御動作定義枠(1:ACTION 1(39)〜4:ACTION 4(42)をそれぞれ入力するエリア)に予め定められた数字を入力することで、当該数字がメモリ16に記憶されると同時に、該制御動作定義枠内に当該数字に対応する制御動作指令名が表示されるようになっている。
これを実現するために、歩進制御装置1では、数字から始まる制御動作指令名を予めメモリ16に記憶しておき、歩進制御部141が、制御動作定義枠に対して数字の入力を受け付け、該入力された数字の冒頭がメモリ16に記憶される制御動作指令に対応する数字の冒頭の数字に一致する場合に、メモリ16に記憶されている当該数字から始まる制御動作指令名をメモリ16から読み出して制御動作定義枠に表示する構成となっている。これにより、数字の冒頭が入力されることにより、該冒頭の数字が入力された数字に一致する制御動作指令名を制御動作定義枠に表示することができる。また、歩進制御部141は、上記制御動作定義枠に制御動作指令名が表示されている状態で、この制御動作指令に基づくコントローラ3A、3B、またはフィールド機器4A、4Bの制御動作を実行可能に構成されている。
第11の項目は、フローコントロール43のGOTO欄44であり、飛び先が記入してある。フローコントロールとはプログラムの流れを制御することを言う。第12の項目はフローコントロール43のリピート欄46であり、該当ステップの繰り返し回数47が記入される。第13の項目は、フローコントロール43のコンデション欄48であり、その欄に記入されているコンディションコード(条件コード49)の条件が成立した時に次のステップに進むようになっている。
第11の項目は、フローコントロール43のGOTO欄44に対する飛び先の設定方法であり、例えば、最終ステップ+1の飛び先を指定(記入)すると、上記最終ステップの終了後、次の新たな歩進制御画面20を呼び出して、その第1ステップにジャンプする。この機能を使うと多くの歩進制御画面20を結合することができる。
この歩進制御画面20を利用することで、例えば、ネットワーク経由制御項目33のTact=4sec35、Tact=8sec36、Tact=12sec37、Tact=16sec38にそれぞれアクションコードを設定して例えば4秒間隔でフィールド機器4A、4Bに対する制御動作指令を発行することで、電力負荷の集中を避けることができる。また、フィールド機器4A、4Bの突入電流の重複を避けノイズ発生を抑制することができ、ネットワーク経由の制御動作指令の重複発行を回避して通信負荷を平準化する、などの効果も期待できる。
上述したように、歩進制御画面20において、ステップタイマ26のステップタイマ設定値27、直接制御項目28の直接制御項目1(29)及び直接制御項目2(31)、ネットワーク経由制御項目33のTact=0sec34〜Tact=16sec38、フローコントロール43のGOTO欄44、リピート欄46及びコンデション欄48等の各項目は、複数の制御項目の設定値をそれぞれ変更設定する複数の変更設定ツール220として機能する。
この他、歩進制御画面20は、現在実行中の制御ステップの運転ガイドメッセージを表示するメッセージ表示欄65を有する。歩進制御部141は、現在実行中の制御ステップに対応する運転ガイドメッセージをメッセージ表示欄65に表示する表示制御機能を有する。図2の例では、歩進制御画面20のメッセージ表示欄65に現在実行中の制御ステップ例えば5の運転ガイドメッセージが表示されている。
この例のメッセージ表示欄65では、複数の行から成る運転ガイドメッセージを、各行ごとにメッセージ種別に応じて例えば黒色、緑色、赤色の各色で表示している。上記各色とメッセージ種別との関係については、例えば、黒色のメッセージはコンピュータの動作に関するメッセージ、緑色のメッセージはコメント内容、赤色のメッセージはオペレータが行うべき操作を表わすというような設定が可能である。
次に、図2の歩進制御画面20の操作例について説明する。図1の歩進制御装置1において、フィールド機器4A、4Bをコントローラ3A、3Bを介して制御する制御システム(制御プログラム)が起動すると、歩進制御部141によってLCDモニタ11上に歩進制御画面20が表示される。歩進制御画面20上で歩進制御テーブル名21をキーボード12から入力すると該歩進制御テーブル名21に対応した歩進制御テーブルが呼び出され、歩進制御画面20として表示される。
歩進制御画面20上で自動開始ボタン52を押すと、ステップ1のプリステップ23が彩色されて強調表示される。プリステップ23が強調表示されて数秒以内の間はバックボタン54又はスキップボタン57でプリステップ1から10の間を移動できる。このように、プリステップ23がステップ動作より数秒先行して移動することで、自動運転中に次のステップが実行される前に移動先を確認することができる。
プリステップの移動停止から数秒後にステップ番号1が彩色されて強調表示されると共に、ステップ1のタイマが動作を開始する。タイマ動作は一時停止ボタン55で一時停止し、再開ボタン56で続行する。このように、自動運転の一時停止ボタン55、再開を指示する再開ボタン56を有することで、自動運転の一時停止中に手動介入が可能となる。
タイマ動作開始と同時に、直接制御項目28の弁1開度%29と弁2開度%31を設定する。タイマ動作開始から例えば4秒後に1:ACTION 1(39)が指令され、8秒後に2:ACTION 2(40)が指令され、12秒後に3:ACTION 3(41)が指令され、16秒後に4:ACTION 4(42)が指令される。この時、アクションコードが設定されているにも関わらずスキップロックボタン58が押された場合は、スキップボタン57は作動しないようにスキップロックされる。
ここで、スキップロックされているにも関わらずスキップボタン57を有効にしたい場合は、スキップロック解除ボタン59を押してスキップロックを解除する。スキップロックは、自動制御中にACTION CODE一覧50によって操作できる。
ステップタイマ26がステップタイマ設定値27に達すると、フローコントロール43がチェックされる。GOTO欄44の数値(飛び先ステップ番号45)が0ならば、何もせずに次のステップに移る。GOTO欄44の数値(飛び先ステップ番号45)が2ならば2ステップに移動し、3ならば3ステップに移動する。GOTO欄44の数値(飛び先ステップ番号45)が1ならば1ステップに戻り、1ステップを繰り返す。
この時、リピート欄46に繰り返し回数47が設定されていれば、1ステップを設定回数まで繰り返した後に次のステップに移動する。また、コンデション欄48に条件コード49が設定されて、かつ、当該設定された条件コード49に合致する条件が成立すれば次のステップに移動する。条件が成立しなければ、GOTO欄44の飛び先に移動する。
このように、本実施形態の歩進制御画面20においては、ステップタイマ設定値27は、ステップ開始から終了までの設定時間を表し、直接制御項目28は、コントローラ3A、3Bの配下にあるフィールド機器4A、4Bを制御し、ネットワーク経由制御項目33は、ネットワーク2を介した、コントローラ3A、3Bは以下の複数のフィールド機器4A、4Bを1ステップの間に数秒間隔に時間を空けて制御し、フロー制御項目(フローコントロール43)は、例えば無条件ジャンプ、条件付きジャンプ、リピート、などのステップの流れを制御し、これにより、系全体として電力の集中を抑え、ノイズ及び通信障害を抑えるように構成されている。
次に、図3を参照してステップ1の歩進変更処理の詳細を説明する。図2の補正制御画面20において自動開始ボタン52が押されると、図3のフローチャートに示されるステップ1の歩進変更処理が開始され、初期化(S101)からSTEP1(S107)でプリステップタイマをセットし、TIME UP?(S103)でタイムアップ待ちとなり、タイムアップでなければBACK STEP?(S104)、SKIP?(S105)、AUT?(S106)でバックステップ、スキップ、自動停止、の何れが押されたかを検出して各押しボタンに対応した処理を行う。
TIME UP?(S103)でタイムアップした場合は、STEP1 TIMER SET(S108)でステップ1タイマを設定する。次に、STEP1 TIMER UP?(S109)でタイムアップチェックしてタイムアップでなければCAL STEP1 PROGRESS(S110)でステップ1タイマの値を読み取る。
ここに記されていない別の通信プログラムでは、ステップ1タイマの値が0秒、4秒、8秒、12秒、16秒の時点で、それぞれ図2の歩進制御画面20上の直接制御項目28、1:ACTION 1(39)、2:ACTION 2(40)、3:ACTION 3(41)、4:ACTION 4(42)の指令を発行する。
ここで、上記直接制御項目28の指令発行処理についてより詳しく説明する。この指令発行処理に対し、上述した別の通信プログラムでは、ステップ1タイマの設定後(図3のS108参照)、計時を開始し、現在の計時値(F_CURRENT_TIMER)を4で除算した値(I_TIMER_INDEX_TEMP)をインデックスとして用い、I_TIMER_INDEX_TEMPが0(零)の時は図2の歩進制御画面20上のアクションコントロール33中、Tact=0sec34の欄に記入されているACTION CODEを送出する。同様に、上記別の通信プログラムでは、I_TIMER_INDEX_TEMPが1、2、3及び4の時は、それぞれ、図2の歩進制御画面20上のネットワーク経由制御項目33中、Tact=4sec35、Tact=8sec36、Tact=12sec37、Tact=16sec38の欄に記入されているACTION CODEを送出する。
STEP1 TIMER UP?(S109)でステップ1タイマがタイムアップした場合は、図2の歩進制御画面20上のフローコントロール43の処理に移る。GOTO DATA=0?(S114)は、図2の歩進制御画面20上のGOTO欄44のデータ(飛び先ステップ番号45)が0ならステップ2に移動する。
図2の歩進制御画面20上のリピート欄46のデータ(繰り返し回数47)が0でなければREPEAT=0?(S115)を実行する。図2の歩進制御画面20上のリピート欄46のデータ(繰り返し回数47)が0ならGET CONDITION INDEX(S120)を実行する。図2の歩進制御画面20上のリピート欄46のデータ(繰り返し回数47)が0でなく99ならS117に進む。
S116で図2の歩進制御画面20上の上記繰り返し回数47が99でなく0でないなら、図2の歩進制御画面20上の繰り返し回数47から1を引いて繰り返し回数47に戻す(S118)。REPEAT=0?(S119)で、ステップを1回実行する毎に1を引いた繰り返し回数47が0になったらステップ2に進む。
S119で繰り返し回数47が0でなければ、GET CONDITION INDEX(S120)に進み、コンデション欄48の数値(条件コード49)をインデックスとして、インデックスが0ならGOTO飛び先判定に進み、インデックスが0でないならCONDITION CODE一覧51のテーブル変数からCONDITION CODEに対する条件フラグ(条件コード)を読み出し、CONDITION FLUG=0?(S122)で条件フラグが0ならステップ2に進み、そうでなければ、GOTO飛び先判定に進む。
GOTO DATA=1?(S123)からGOTO DATA=10?(S132)までは飛び先が判定される。GOTO DATA=10?(S132)でデータ(45)が10でなければ、即ち11以上なら、TRIGGER NEXT TABLE(S133)の処理で次の歩進制御テーブルを表示する歩進制御画面20が呼び出される。S106、S111でAUTでなければ、即ち図2の歩進制御画面20上の自動終了ボタン53が押された時はCLOSE AUT(S134)で自動終了処理が成され自動制御が終了する。
図4は、歩進制御装置1でのステップ2の歩進変更処理を示すフローチャートである。図4に示すように、ステップ2の歩進変更処理については、S202、S208、S209、S210、S205、S212以外は、図3と同様である。
ここでS210の処理についてより詳しく説明する。図4に示すステップ2の歩進変更処理においては、S203からS207でプリステップタイマをセットし、TIME UP?(S203)でタイムアップ待ちとなり、タイムアップでなければBACK STEP?(S204)、SKIP?(S205)、AUT?(S206)でバックステップ、スキップ、自動停止、の何れが押されたかを検出して各押しボタンに対応した処理を行う。
TIME UP?(S203)でタイムアップした場合は、STEP2 TIMER SET(S208)でステップ2タイマを設定する。次に、STEP2 TIMER UP?(S209)でタイムアップチェックしてタイムアップでなければCAL STEP1 PROGRESS(S210)に進む。
S210における"CAL STEP2 PROGRESS"という処理は、"ステップ2の進捗率を算出する"処理である。図4のS210において、進捗率算出部60は、現在実行中のステップ2を開始してからの計時時間が当該ステップ2のタイムアップの時間に対して何パーセントに相当するかを計算する。次に、進捗率算出部60は、その計算結果から歩進制御画面20の進捗表示項目271を構成する進捗表示欄275に表示する棒グラフの長さを計算し、その長さを有する棒グラフを当該ステップ2に対応する進捗表示欄275に表示する。
なお、図4に示すステップ2の歩進変更処理では、短いプリステップタイマがタイムアップ(S203)した後にステップ2タイマがセットされてS210の状態となるため、処理がS210に留まる確率が高く、自動運転中のステップの歩進変更は、S210の待ち状態中に実行される確率が高くなる。実際の歩進制御は、実行前なら何時でも変更することができるが、本実施形態では、変更中に時間が過ぎて思わぬ動作が実行されることを防ぐために、通常の操作では、一時停止ボタン55を操作して一時停止した状態で変更し、変更作業終了後に再開ボタン56を操作して処理を再開できるようになっている。この点は、図3に示すステップ1の歩進変更処理、図5に示すステップ10の歩進変更処理においても同様である。
図5は、歩進制御装置1でのステップ10の歩進変更処理を示すフローチャートである。図5に示すように、ステップ10の歩進変更処理については、S1002、S1008、S1009、S1010、S1004、S1005、S1012、S1013以外は図3と同様である。図5のS1010、及び図3のS110においても、図4のS210と同様、進捗率算出部60が当該ステップ1、10の進捗率を算出し、当該ステップ1、10にそれぞれ対応する進捗表示欄275にその算出した進捗率を棒グラフで表示する処理("CAL STEPn PROGRESS")が行われる。
次に、図6に示すタイムチャートを参照して歩進制御装置1の歩進制御結果について説明する。
図2の歩進制御画面20の自動開始ボタン52が押された(T1)と同時にPRE−STEP1(前置ステップ1モード)(T2)が開始する。T2の間は図2の歩進制御画面20のバックボタン54およびスキップボタン57を操作することでPRE−STEP1からPRE−STEP10までを制御を開始せずに移動することができる。
例えば、ステップ5から制御を開始したい場合は、予め一時停止ボタン55を押しておいて自動開始ボタン52を押して、次にスキップボタン57を押してプリステップ5まで進めて再開ボタン56を押すとステップ5から制御を開始する。
プリステップ1(T2)が終了するとステップ1(T3)が開始されると同時にステップ1タイマが図2のステップタイマ設定値27の数値にセットされる。アクションタイミングTact(T15)は、図3のS110により、タイマ1のセットと同時にカウントされ、0、4、8、12、16秒のタイミングが設定される。ステップ1(T3)中では、この5個のタイミングT6、T7、T8、T9、T10でフィールド機器4A、4Bの制御動作指令が発行される。ステップタイマ(T4)がタイムアップした時点でFlow Control(T11)が図3のS114以降で実行される。
次に、図3のS114以降のFlow Control(T11)の結果について説明する。図3の歩進制御画面20のGOTO欄44、リピート欄46、コンデション欄48に設定されている数値(飛び先ステップ番号45)、(繰り返し回数47)、(条件コード49)が、0、0、0、の場合は、次のステップに移動する。
GOTO欄44、リピート欄46、コンデション欄48に設定されている数値(飛び先ステップ番号45)、(繰り返し回数47)、(条件コード49)が、1、0、0、の場合は、ステップ1を永久に繰り返す。GOTO欄44、リピート欄46、コンデション欄48に設定されている数値(飛び先ステップ番号45)、(繰り返し回数47)、(条件コード49)が、0、0、0、の場合は、次のステップに移動する。GOTO欄44、リピート欄46、コンデション欄48に設定されている数値(飛び先ステップ番号45)、(繰り返し回数47)、(条件コード49)が、1、1、0、の場合は、ステップ1終了後に(47)を−1(1を減算)してもう一度、ステップ1を繰り返して次のステップに移動する。
ステップ3で、GOTO欄44、リピート欄46、コンデション欄48に設定されている数値(飛び先ステップ番号45)、(繰り返し回数47)、(条件コード49)が、1、1、0、の場合は、ステップ3終了後に数値(繰り返し回数47)を−1(1を減算)してもう一度、ステップ1から繰り返してステップ3を終了して次のステップに移動する。GOTO欄44、リピート欄46、コンデション欄48に設定されている数値(飛び先ステップ番号45)、(繰り返し回数47)、(条件コード49)が、1、2、0、の場合は、ステップ1を2回繰り返して次のステップに移動する。GOTO欄44、リピート欄46、コンデション欄48に設定されている数値(飛び先ステップ番号45)、(繰り返し回数47)、(条件コード49)が、1、0、1、の場合は、図2の1:CONDITION1(51)が成立するまでステップ1を繰り返す。
図3のS132において、GOTO欄44の値(飛び先ステップ番号45)が10でない場合、つまり、GOTO欄44の値(飛び先ステップ番号45)が11の場合は、次の歩進制御テーブルを呼び出して歩進制御画面20上に表示し、次の新たな歩進制御テーブルのステップ1に移動する。
上述したように、本実施形態の歩進制御装置1は、制御プログラムの複数の制御ステップごとに、複数の制御項目の設定値を変更設定する変更設定ツール220を有するとともに、複数の制御ステップ間の歩進の変更及び進捗の管理を行う歩進管理ツール210を有する歩進制御画面20をLCDモニタ11に表示し、制御プログラムの各制御ステップを自動歩進させる自動運転の実行中、歩進管理ツール210(進捗率算出部60以外のツール)による制御ステップの歩進の変更指示を受け付けるとともに、変更設定ツール220による設定値の変更設定を受け付け、制御ステップの歩進の変更と制御項目の設定値の変更設定を行う歩進制御部141を備えている。
この構成によれば、試行錯誤を繰り返しながらシステム開発を行う場合には、制御シーケンスが誰にでも直感的に理解できてその変更が容易である他、自動運転中にシームレスに手動介入することで自動運転中に制御手順を容易に変更できる。
また、歩進制御装置1は、歩進管理ツール210として、歩進制御の開始を指示する自動開始ボタン52、歩進制御の終了を指示する自動終了ボタン53を有し、歩進制御部141は、自動開始ボタン52が操作されることにより、自動運転から、歩進制御画面20の上記歩進管理ツール210による制御ステップの歩進の変更指示を受け付ける手動運転に移行し、自動終了ボタン53が操作されることにより手動運転を終了する。
この構成によれば、プログラム変更は専門のプログラマを必要とせず、自動運転中でも容易に変更可能であり、費用と時間を大幅に節約できる。
また、歩進制御装置1は、歩進管理ツール210として、制御ステップの一時停止を指示する一時停止ボタン55と、一時停止された制御ステップの再開を指示する再開ボタン56をさらに有し、歩進制御部141は、いずれかの制御ステップにおいて一時停止ボタン55が操作されることにより制御ステップを一時的に停止し、再開ボタン56が操作されることにより制御ステップを再開する。
この構成によれば、必要に応じて自動運転を一時停止し、その間に手動介入により制御ステップの変更等が行える。
また、歩進制御装置1は、歩進管理ツール210として、制御ステップを進めることを指示するスキップボタン57、制御ステップを戻すことを指示するバックボタン54をさらに有し、歩進制御部141は、一時停止ボタン55の操作により制御ステップが一時的に停止された状態でスキップボタン57またはバックボタン54が操作されるとそれぞれ制御ステップを前進または後退させ、再開ボタン56が操作されることにより移動先の制御ステップを再開する。
この構成によれば、必要に応じて自動運転を一時停止し、その間に手動介入により他の制御ステップへの変更が容易に行える。
また、歩進制御装置1は、歩進管理ツール210として、複数の制御ステップごとに当該各制御ステップの進捗率を算出する進捗率算出部60を有し、歩進制御画面20は、複数の制御ステップにそれぞれ対応して設けられ、当該各制御ステップの進捗率を表示する進捗表示欄275を有し、LCDモニタ11には、進捗率算出部60により算出された各制御ステップの進捗率が当該各制御ステップに対応する進捗表示欄275に表示される。
この構成によれば、各制御ステップごとにその制御ステップの進捗状況を容易に把握でき、他の歩進管理ツール210であるバックボタン54、一時停止ボタン55、スキップボタン57等を用いた歩進変更指示のタイミングが計り易くなる。
なお、本実施の形態では、進捗率算出部60を、歩進制御画面20の歩進管理ツール210の領域内に操作者が目視可能な態様で設けた例を挙げたが、この例に限るものではない。例えば、進捗率算出部60をボタンの形態で設け、マウス13により選択したり選択解除することでその機能をオン、オフする構成としても良い。また、進捗率算出部60を、歩進制御部141の機能の一部として設けても良い。また、歩進管理ツール210の種別についても、進捗率算出部60、上述した各種ボタン類の他の種別のものを追加して設けても良い。
また、歩進制御装置1においては、歩進制御画面20は、複数の制御ステップにそれぞれ対応して設けられ、対応する制御ステップの開始前であることを表示するプリステップ(前置ステップ)23の表示項目を有し、歩進制御部141は、自動運転による制御ステップの実行前にプリステップ23の表示項目に対応する制御ステップが開始前であることを表示する。
この構成によれば、プリステップ23が、対応する制御ステップより数秒先に移動することで、自動運転中に次の制御ステップが実行される前に移動先を確認することができる。
また、歩進制御装置1においては、歩進制御画面20は、変更設定ツール220として、複数の制御ステップごとに、制御ステップの開始から終了までの設定時間であるステップタイマ設定値27、フィールド機器4A、4Bを直接制御するための直接制御項目28、フィールド機器4A、4Bをネットワーク2経由で制御するためのネットワーク経由制御項目33、フィールド機器4A、4Bのフロー制御の流れを制御するフローコントロール43の各設定項目をさらに有し、歩進制御部141は、キーボード12から制御ステップに対する各変更設定ツール220による設定値(歩進制御パラメータ)の入力を受け付け、制御ステップの実行開始前に設定値を直ちに設定する。
この構成によれば、ステップタイマ設定値27、直接制御項目28、ネットワーク経由制御項目33、フローコントロール43等の各設定項目の設定値をキーボード12から変更設定でき、制御ステップの実行開始前の変更は直ちに設定に反映させることができる。また、ネットワーク経由制御項目33等の設定次第では、数秒毎に一連の制御動作指令を発行し、同時に複数の制御動作指令を発行させないようにすることができ、これにより、消費電力の集中回避、ネットワークの安定動作、ノイズの抑制を図ることができる。
また、歩進制御装置1においては、歩進制御画面20は、複数の制御ステップにそれぞれ対応する制御動作を定義する制御動作定義枠を有し、メモリ16には数字から始まる制御動作指令名を予め記憶しておき、歩進制御部141は、キーボード12からの制御動作定義枠に対する数字の入力を受け付け、該入力された数字の冒頭がメモリ16に記憶される制御動作指令に対応する数字の冒頭の数字に一致する場合に、メモリ16に記憶されている数字から始まる制御動作指令名を上記制御動作定義枠に表示する。
この構成によれば、予め数字から始まる制御動作指令を登録しておき、制御ステップの操作時間帯を表わす定義枠内に制御動作指令名の冒頭の数字を入力することにより、該制御動作指令名を表示することができ、また制御を実行することができる。
また、歩進制御装置1においては、歩進制御画面20は、現在実行中の制御ステップの運転ガイドメッセージを表示するメッセージ表示欄をさらに有し、歩進制御部141は、現在実行中の制御ステップに対応する運転ガイドメッセージをメッセージ表示欄に表示する。
この構成によれば、現在の歩進制御ステップの運転ガイドメッセージを表示することができ、その運転ガイドメッセージを見ながら次の変更先の制御ステップを決定することができる。
このように、本実施形態の歩進制御装置1の構成によれば、オペレータが自らフィールド機器4A、4Bの制御動作を変更することが可能となり、無駄な時間と費用を削減できる。従来の制御機器では、プログラマとオペレータは高度に分業化されており、オペレータがプログラムの変更を望んだ場合はプログラマに依頼する必要があった。プログラマとオペレータが各々別の会社であることもあり、プログラム変更に時間と軽費がかかることが常であった。
また、本実施形態の歩進制御装置1によれば、自動運転中においても実行前の制御ステップであれば軽微な変更は直ちに変更でき、時間と無駄を省くことができる。従来の制御機器では、プログラム開発モードと実行モードが明確に分離されているので、仮にオペレータとプログラマの両者のスキルを持つ技術者がプログラムの変更を試みても運転を停止する等の必要が生じるので、現在実行中の自動運転の仕様を運転中に変更することは不可能または非常に困難であった。
また、本実施形態の歩進制御装置1によれば、フィールド機器4A、4Bの消費電力を平準化することができ省電力に寄与できる。本発明に係る歩進制御装置は、1制御ステップの間に例えば4秒間隔で制御機器の動作指令を発行するので、必然的に同時に多くの機器が投入されることがないので、多くの制御機器にありがちな誘導負荷による突入電流が重なることがない。
また、本実施形態の歩進制御装置1によれば、ネットワーク通信を介して動作指令を発行する制御システムにおいて通信障害による誤動作を回避し、システムを安定に稼動することができ、無駄を省くことができる。本実施形態の歩進制御装置1では、例えば4秒間隔でフィールド機器4A、4Bの動作指令を発行するので、通信の重複による誤動作ならびにフィールド機器4A、4Bの突入電流によって生じるノイズによる通信障害を回避することができる。
以上、本実施形態の歩進制御装置1によれば、試行錯誤を繰り返しながらシステム開発を行う場合において大きな、省力化、省電力化、省労力化が期待できる。
なお、試行錯誤を繰り返しながらシステム開発を行う場合には、制御シーケンスが誰にでも直感的に理解できてその変更が容易であること、ならびに、自動運転中にシームレスに手動介入が可能であること、ならびに、自動運転中に制御手順を変更できること等が要求される。
こうした要求に対して、本実施形態では、図2に示すように、複数の制御ステップごとに、ステップタイマ設定値27等の変更設定ツール220を有し、かつ、自動開始ボタン52、自動終了ボタン53、バックボタン54、スキップボタン57、一時停止ボタン55、再開ボタン56などの歩進管理ツール210を有する歩進制御画面20を用いるため、操作者は、上記歩進管理ツール210を用いて制御ステップの停止や移動等を指示することができるとともに、変更設定ツールからのステップタイマ設定値27の変更設定等を指示することができ、手動介入が容易となる。
特に、本実施形態の歩進制御装置1では、特定の制御動作と関連づけされたステップ番号の実行が開始される前にプリステップ(前置ステップ)23を設けて、プリステップ期間中は制御動作を実行せずに、バックステップ(後退)、スキップ(実行飛び越し、または前進)でプリステップ間を自由に移動できて、プリステップタイマがタイムアウトした時点でステップ制御動作を開始させることができる。プリステップタイマおよびステップタイマは、一時停止55、再開ボタン56で制御することができ、直感的な操作が行える。
試行錯誤を繰り返しながらのシステム開発においては、さらに、ネットワーク経由で発行される被制御機器の制御動作指令を平準化する(集中を避ける)ことで、ネットワーク2の安定動作を確保する必要がある。本実施形態に係る電力制御システム(図1参照)であれば、フィールド機器4A、4Bの電源負荷が平準化されバックアップ電源の安定動作を確保し、フィールド機器4A、4Bの電源の突入電流によるノイズを抑制し、システムの安定動作を確保する必要がある。
この点について、本実施形態に係る歩進制御装置1では、歩進制御画面20における各制御ステップのステップ番号24に関連付けられた制御動作は、数秒毎に発行される一連の制御動作指令から構成され(図2におけるネットワーク経由制御項目33参照)、同時に複数の制御動作指令を発行しないような構成とされている。この構成によって、ネットワークの安定動作、消費電力の集中回避、ノイズの抑制を図ることができる。
なお、歩進制御画面20については、現在実行中の制御ステップの運転ガイドメッセージを表示するメッセージ表示欄を設けた構成としても良い。この場合、歩進制御部141は、現在実行中の制御ステップで発行された制御動作指令によって稼働されているフィールド機器4A、4Bからその運転状況(運転状況を示す情報)をコントローラ3A、3Bを通じて収集し、該収集した運転状況を示す運転ガイドメッセージを上記メッセージ表示欄に表示する機能構成とすればよい。