(57)【要約】【課題】プログラマブルコントローラにおける出力信号の異常原因調査を容易にする。【解決手段】出力信号に異常が発生したとき、この出力信号を調査出力信号とする。調査出力信号を求める論理式の各接点に対する異常発生時の信号状態を入力する。出力信号を正常な状態に変化させることに影響を与えない接点、論理式を削除し、論理式を簡略化する(Ｓ１〜Ｓ６)。簡略化された調査出力信号の論理式に他の出力信号の接点の要素を含むときは、この他の出力信号を求める論理をも簡略化して、この論理を、簡略化された調査出力信号の論理式の対応接点に代入する(Ｓ７〜Ｓ１０)。簡略化された出力信号を求める論理式、又はそのラダー回路図を表示する(Ｓ１１)。調査対象の出力信号の論理式が異常原因の調査対象となる接点信号のみとなっているから、表示内容に基づく異常調査が容易となる。【選択図】図１０
2009122936.tif 000002
【特許請求の範囲】
【請求項１】
シーケンスプログラムを実行するプログラマブルコントローラに接続されるシーケンスプログラムモニタ装置であって、
シーケンスプログラム中の異常が発生した出力信号を選択する出力信号選択手段と、
前記出力信号の状態を決定するシーケンスプログラムのラダー回路を抽出する回路抽出手段と、
前記回路抽出手段によって抽出されたラダー回路を構成する接点を抽出する接点抽出手段と、
前記回路抽出手段によって抽出されたラダー回路から前記出力信号選択手段によって選択された出力信号の状態を決定する論理を作成する論理作成手段と、
前記接点抽出手段によって抽出された各接点の現在の信号状態を取得する信号状態取得手段と、
前記論理作成手段によって作成された論理と前記信号状態取得手段によって取得された信号状態から前記接点抽出手段によって抽出された接点の信号状態の変化が前記出力信号の状態変化に影響しない接点に関する論理を前記論理作成手段によって作成された論理から省略する論理簡略化手段と、
前記論理簡略化手段によって得られた簡略化された前記出力信号の状態を決定する論理を表示する表示手段と、
を有することを特徴とする異常調査用表示機能を備えたシーケンスプログラムモニタ装置。
【請求項２】
前記論理簡略化手段によって得られた論理をラダー回路に変換する手段を有し、前記表示手段は論理を表示する代わりに変換されたラダー回路の図を表示する請求項１に記載の異常調査用表示機能を備えたシーケンスプログラムモニタ装置。
【請求項３】
前記出力信号選択手段が選択する特定の出力信号は、ファンクションブロックの出力信号をも含み、前記回路抽出手段は、ファンクションブロックの回路内から前記出力信号の状態を決定するシーケンスプログラムのラダー回路も抽出することを特徴とする請求項１又は請求項２に記載の異常調査用表示機能を備えたシーケンスプログラムモニタ装置。
【請求項４】
前記論理簡略化手段は、
前記出力信号の現在の状態がオフの場合は、前記論理作成手段によって作成された論理において、論理和の演算対象のいずれかの接点の信号状態がオンである論理部分を、前記論理和の他方の演算対象の接点の信号状態によらず、前記信号状態がオンである接点に置き換えることと、
論理積の演算対象のいずれかの接点の信号状態がオンである論理部分を、前記論理積の他方の演算対象の接点の信号状態によらず、他方の演算対象の接点に置き換えること、
および
前記出力信号の現在の状態がオンの場合は、前記論理作成手段によって作成された論理において、論理積の演算対象のいずれかの接点の信号状態がオフである論理部分を、前記論理積の他方の演算対象の接点の信号状態によらず、前記信号状態がオフである接点に置き換えることと、
論理和の演算対象のいずれかの接点の信号状態がオフである論理部分を、前記論理和の他方の演算対象の接点の信号状態によらず、他方の演算対象の接点に置き換えること、
を特徴とする請求項１乃至３のいずれか１項に記載の異常調査用表示機能を備えたシーケンスプログラムモニタ装置。
【請求項５】
シーケンスプログラムを実行するプログラマブルコントローラであって、
シーケンスプログラム中の異常が発生した出力信号を選択する出力信号選択手段と、
前記出力信号の状態を決定するシーケンスプログラムのラダー回路を抽出する回路抽出手段と、
前記回路抽出手段によって抽出されたラダー回路を構成する接点を抽出する接点抽出手段と、
前記回路抽出手段によって抽出されたラダー回路から前記出力信号選択手段によって選択された出力信号の状態を決定する論理を作成する論理作成手段と、
前記接点抽出手段によって抽出された各接点の現在の信号状態を取得する信号状態取得手段と、
前記論理作成手段によって作成された論理と前記信号状態取得手段によって取得された信号状態から前記接点抽出手段によって抽出された接点の信号状態の変化が前記出力信号の状態変化に影響しない接点に関する論理を前記論理作成手段によって作成された論理から省略する論理簡略化手段と、
前記論理簡略化手段によって得られた簡略化された前記出力信号の状態を決定する論理を表示する表示手段と、
を有することを特徴とする異常調査用表示機能を備えたプログラマブルコントローラ。
【請求項６】
前記論理簡略化手段によって得られた論理をラダー回路に変換する手段を有し、前記表示手段は論理を表示する代わりに変換されたラダー回路の図を表示する請求項５に記載の異常調査用表示機能を備えたプログラマブルコントローラ。
【請求項７】
前記出力信号選択手段が選択する特定の出力信号は、ファンクションブロックの出力信号をも含み、前記回路抽出手段は、ファンクションブロックの回路内から前記出力信号の状態を決定するシーケンスプログラムのラダー回路も抽出することを特徴とする請求項５又は請求項６に記載の異常調査用表示機能を備えたプログラマブルコントローラ。
【請求項８】
前記論理簡略化手段は、
前記出力信号の現在の状態がオフの場合は、前記論理作成手段によって作成された論理において、論理和の演算対象のいずれかの接点の信号状態がオンである論理部分を、前記論理和の他方の演算対象の接点の信号状態によらず、前記信号状態がオンである接点に置き換えることと、
論理積の演算対象のいずれかの接点の信号状態がオンである論理部分を、前記論理積の他方の演算対象の接点の信号状態によらず、他方の演算対象の接点に置き換えること、
および
前記出力信号の現在の状態がオンの場合は、前記論理作成手段によって作成された論理において、論理積の演算対象のいずれかの接点の信号状態がオフである論理部分を、前記論理積の他方の演算対象の接点の信号状態によらず、前記信号状態がオフである接点に置き換えることと、
論理和の演算対象のいずれかの接点の信号状態がオフである論理部分を、前記論理和の他方の演算対象の接点の信号状態によらず、他方の演算対象の接点に置き換えること、
を特徴とする請求項５乃至７のいずれか１項に記載の異常調査用表示機能を備えたプログラマブルコントローラ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、機械をシーケンス制御するプログラマブルコントローラに接続されるシーケンスプログラムモニタ装置、および該モニタ装置の機能を備えたプログラマブルコントローラに関する。
【背景技術】
【０００２】
プログラマブルコントローラは、シーケンスプログラム（ラダープログラム）に基づいて機械をシーケンス制御する。このシーケンスプログラムの実行中において、出力信号（リレーや他の機器に出力する信号）が意図した通りにＯＮ又はＯＦＦせず、その原因を調査するときには、意図した通りにＯＮ／ＯＦＦしない出力信号を探し特定し、該出力信号のＯＮ／ＯＦＦに影響を与える接点（入力信号、内部リレー等）を調査し、さらに、該接点をＯＮ／ＯＦＦさせる出力信号（リレーや他の機器に出力する信号）の状態を調査する等操作を繰り返し実行して、当該出力信号が意図した通りにＯＮ／ＯＦＦしない原因を調査している。
【０００３】
例えば、特許文献１には、ラダープログラムの接点と出力信号（リレー）を全て抜き出し、同じアドレスの接点を使用している出力信号（リレー）毎にグループ化し、該グループの１サイクルにおける出力信号の変化を、該出力信号が遷移する状態であるステート毎に求めて基準となるステート毎の出力パターンデータとして記憶しておき、該基準出力パターンと、運転中にも求めたステート毎の出力信号のパターンと比較し不一致の場合、異常と判別するようにした発明が記載されている。
【０００４】
また、特許文献２には、前回のスキャン実行時の入力情報（接点の状態）と出力情報（リレーの状態）と、今回のスキャン実行時の入力情報と出力情報とを記憶しておき、出力情報が変化したとき、記憶している前回と今回のスキャン実行時の入力情報、出力情報を比較することによって、出力情報の変化の原因を探索するようにした発明が記載されている。
【０００５】
さらに、特許文献３には、制御対象の動作の状態の履歴を動作履歴情報として記憶しておき、標準となる動作状態の履歴と比較することによって、又は、動作履歴情報復元し解析することによって、制御対象の機械の状態、故障部位、故障原因を特定できるようにした発明が記載されている。
【０００６】
【特許文献１】特開平５−１３４７１８号公報
【特許文献２】特開２００６−３９７９９号公報
【特許文献３】特開２００４−３３４４２１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
出力信号が異常状態となったとき、すなわち、出力信号がＯＮすべきであるにも拘わらずＯＦＦの状態であるときや、ＯＦＦすべきであるにも拘わらずＯＮ状態であるとき、この原因を調査するために、従来は、上述したように、調査しようとする出力信号に関係する接点を調査する必要があり、その接点が多いときや、その接点が他の出力信号に基づいて変化するときは、この他の出力信号に関係する接点をも溯って調査する必要があり、意図しない出力信号のＯＮ／ＯＦＦの原因究明が難しいという問題がある。
【０００８】
そこで、本発明は、出力信号が正常でないＯＮ／ＯＦＦ状態となり異常となったとき、その異常原因究明の調査を容易にすることができるようにしたシーケンスプログラムモニタ装置およびプログラマブルコントローラを提供することにある。
【課題を解決するための手段】
【０００９】
本願請求項１乃至４に係る発明は、シーケンスプログラムを実行するプログラマブルコントローラに接続されるシーケンスプログラムモニタ装置であって、シーケンスプログラム中の異常が発生した出力信号を選択する出力信号選択手段と、前記出力信号の状態を決定するシーケンスプログラムのラダー回路を抽出する回路抽出手段と、前記回路抽出手段によって抽出されたラダー回路を構成する接点を抽出する接点抽出手段と、前記回路抽出手段によって抽出されたラダー回路から前記出力信号選択手段によって選択された出力信号の状態を決定する論理を作成する論理作成手段と、前記接点抽出手段によって抽出された各接点の現在の信号状態を取得する信号状態取得手段と、前記論理作成手段によって作成された論理と前記信号状態取得手段によって取得された信号状態から前記接点抽出手段によって抽出された接点の信号状態の変化が前記出力信号の状態変化に影響しない接点に関する論理を前記論理作成手段によって作成された論理から省略する論理簡略化手段と、前記論理簡略化手段によって得られた簡略化された前記出力信号の状態を決定する論理を表示する表示手段とを設けることによって、表示手段に簡略化された前記出力信号の状態を決定する論理を表示することによって、異常原因調査を容易にするものである。  
さらに、論理簡略化手段によって得られた論理をラダー回路に変換する手段を設けて、論理を表示する代わりに変換されたラダー回路の図を表示手段に表示するようにする。  
又、前記出力信号選択手段が選択する特定の出力信号は、ファンクションブロックの出力信号をも含むものとし、前記回路抽出手段は、ファンクションブロックの回路内から前記出力信号の状態を決定するシーケンスプログラムのラダー回路も抽出するものとしている。
特に、前記論理簡略化手段は、前記出力信号の現在の状態がオフの場合は、前記論理作成手段によって作成された論理において、論理和の演算対象のいずれかの接点の信号状態がオンである論理部分を、前記論理和の他方の演算対象の接点の信号状態によらず、前記信号状態がオンである接点に置き換えることと、論理積の演算対象のいずれかの接点の信号状態がオンである論理部分を、前記論理積の他方の演算対象の接点の信号状態によらず、他方の演算対象の接点に置き換えること、および、前記出力信号の現在の状態がオンの場合は、前記論理作成手段によって作成された論理において、論理積の演算対象のいずれかの接点の信号状態がオフである論理部分を、前記論理積の他方の演算対象の接点の信号状態によらず、前記信号状態がオフである接点に置き換えることと、論理和の演算対象のいずれかの接点の信号状態がオフである論理部分を、前記論理和の他方の演算対象の接点の信号状態によらず、他方の演算対象の接点に置き換えるものとした。
さらに、本願請求項５から請求項８に係る発明は、上述したシーケンスプログラムモニタ装置を内蔵するプログラマブルコントローラとしたものである。
【発明の効果】
【００１０】
出力信号に異常が発生したとき、該出力信号の状態を決定するラダー回路の論理において、正常な信号状態に変化させることに影響を与えないラダー回路の接点に関する論理を削除して、出力信号の状態を決定する論理を簡略化して、その論理又はその論理のラダー回路図を表示するから、調査すべき接点の信号状態や論理が少なくなり、異常発生の調査が容易となる。
【発明を実施するための最良の形態】
【００１１】
シーケンスプログラムを形成するラダー回路と論理式の関係を図１に示す。図１（ａ）は、接点（入力信号や内部リレーの状態を表す信号）Ａ及び接点Ｂが共にＯＮ（「１」）のとき、出力信号（リレーや他の機器へ出力する信号）がＯＮ（「１」）となる論理積（ＡＮＤ）を示すもので、論理式の「＆」は論理積（ＡＮＤ）を示す記号である。又、図１（ｂ）は、接点Ａ又は接点ＢのいずれかがＯＮ（「１」）のとき、出力信号がＯＮ（「１」）となる論理和（ＯＲ）を示すもので、論理式の「｜」は論理和（ＯＲ）を示す記号である。図１（ｃ）は、否定（ＮＯＴ）を説明するラダー回路と論理式の説明図であり、図１（ｃ）のラダー回路におけるＡ、Ｂはｂ接点を表すものであり出力信号Ａ、Ｂの状態と接点の状態がＯＮ／ＯＦＦ逆となることを表し、論理式において記号Ａ、Ｂの前の「~」は信号反転を表す記号である。
【００１２】
図１（ｄ）は、時間を計時するタイマの機能命令のラダー回路と論理式を示すものであり、説明に記載されているように、接点ＡがＯＮするとタイマ（ＴＭＲ）に設定されている時間が経過したとき出力信号ＢをＯＮするという機能命令のラダー回路と論理式である。
【００１３】
図１（ｅ）はカウンタの機能命令のラダー回路と論理式であり、接点ＣがＯＮすると、カウンタ（ＣＴＲ）により計数を開始し指定回数に達すると出力信号ＤをＯＮにするという機能命令である。
【００１４】
図２は、ラダー回路図で示されるシーケンスプログラム（ラダープログラム）の一例である。この図２にラダー回路図で示されるシーケンスプログラム（ラダープログラム）を論理式で表すと、シーケンス番号「Ｎｏ３」「Ｎｏ２」「Ｎｏ１」は次のようになる。
【００１５】
Ｎｏ３    Ｚ＝（Ｈ＆Ｇ）｜（Ｅ＆（Ｆ｜（Ｄ＆Ｃ））＆Ｂ＆Ａ）      ・・・（１）
Ｎｏ２    Ｂ＝（Ｂ２｜Ｂ１）                                      ・・・（２）
Ｎｏ１    Ａ＝（Ａ２＆Ａ１）                                      ・・・（３）
このようなシーケンスプログラムにおいて、出力信号Ｚが、ＯＮ（＝１）の状態であるべきものがＯＦＦ（＝０）の状態であるとき、又は、ＯＦＦ（＝０）の状態であるべきものがＯＮ（＝１）の状態であるときなど、意図しない異常の状態を呈したとき、その異常の原点を調査するには、図２のシーケンス番号Ｎｏ３のラダー回路の接点の状態を調べる必要がある。また、シーケンス番号Ｎｏ３の接点Ａ、Ｂはシーケンス番号Ｎｏ１、Ｎｏ２の出力信号（リレー）Ａ、Ｂの接点であるから、これらの出力信号Ａ、Ｂに関係する接点Ａ１、Ａ２、Ｂ１、Ｂ２の状態を調べなくてはならない。結局、接点Ａ１、Ａ２、Ｂ１、Ｂ２、Ｃ、Ｄ、Ｅ、Ｆ、Ｇ、ＨのＯＮ／ＯＦＦ状態を調べなくてはならない。この調査は困難で容易ではない。
【００１６】
そこで、本発明は、この調査を容易にできるようにすることを目的とするものであり、調査対象となる出力信号の状態が正常な状態に変化することに影響を与えない接点に関する論理を、この出力信号を求める論理式より削除して簡略化を図るものである。調査対象の出力信号が、ＯＮ（＝１）の状態であるべきものがＯＦＦ（＝０）の状態であるときと、ＯＦＦ（＝０）の状態であるべきものがＯＮ（＝１）の状態であるときの、２つの場合のそれぞれについて説明する。
【００１７】
１．調査対象の出力信号（例えば図２におけるＺ）が、ＯＮ（＝１）の状態であるべき
ものがＯＦＦ（＝０）の状態であるときの調査。
調査対象の出力信号を求める論理式（例えば図２のシーケンス番号Ｎｏ３のラダー回路による論理式）において、状態が「ＯＮ（＝１）」である接点は出力信号（Ｚ）が「ＯＦＦ（＝０）」から正常な状態の「ＯＮ（＝１）」に変化させることに影響を与えるものではないから省略できる。すなわち、ＯＮ（＝１）の接点はＯＦＦ（＝０）に変化させても出力信号を正常な状態のＯＮ（＝１）に変化させるのには影響を与えない、しかし、ＯＦＦ（＝０）の接点はＯＮ（＝１）に変化させると出力信号を正常な状態のＯＮ（＝１）に変化させることに影響を与える。そこで、
（１−１）論理和（「｜」）を取るいずれかの接点がＯＮであれば、論理和の結果は常に
ＯＮ（＝１）であるから、この論理和の式を、調査対象の出力信号を求める論理        式から削除する（又はこの論理和の式を「１」に置き換える）。
（１−２）論理積（「＆」）を取る接点の場合、ＯＮしている接点は常に「１」であるの
で、調査対象の出力信号を求める論理式から該接点と論理積の記号＆を削除する        。
【００１８】
例えば、Ａ＝０、Ｂ＝１とした場合、
「Ａ｜Ｂ」は、上記（１−１）の規範でこの論理「Ａ｜Ｂ」を削除又は「１」とする（Ａ｜Ｂ＝Ａ｜１＝１）。
「Ａ＆Ｂ」は、上記（１−２）の規範でＡとする（Ａ＆Ｂ＝Ａ＆１＝Ａ）。
【００１９】
別の例で説明すると、出力信号を求める論理が（Ｆ｜（Ｄ＆Ｃ））の場合でＦ＝１のときは、（Ｄ＆Ｃ）の状態に関係がなく、この論理（Ｆ｜（Ｄ＆Ｃ））は、常に「１」となり、出力信号を正常なＯＮ（＝１）に変化させることに影響を与えるものではないから、この論理を「１」とするか又は省略する。又、出力信号を求める論理が（Ｈ＆Ｇ）の場合において、Ｈ＝１の場合には、この論理（Ｈ＆Ｇ）はＧの状態で決まることから、Ｇに置き換え、「Ｈ＆」を出力信号の論理式から削除する（Ｈ＆Ｇ＝１＆Ｇ＝Ｇ）。
【００２０】
２．調査対象の出力信号（例えば図２におけるＺ）が、ＯＦＦ（＝０）の状態であるべ
きものがＯＮ（＝１）の状態であるときの調査
調査対象の出力信号を求める論理式（例えば図２のシーケンス番号Ｎｏ３の論理式）において、状態が「ＯＦＦ（＝０）」である接点は、出力信号（Ｚ）が「ＯＮ（＝１）」から正常な状態の「ＯＦＦ（＝０）」に変化させることに影響を与えないものであるから省略できる。すなわち、ＯＦＦ（＝０）の接点はＯＮ（＝１）に変化させても出力信号を正常な状態のＯＦＦ（＝０）に変化させるのには影響を与えない、しかし、ＯＮ（＝１）の接点はＯＦＦ（＝０）に変化させると出力信号を正常な状態のＯＦＦ（＝０）に変化させることに影響を与える。そこで、
（２−１）論理和（「｜」）を取る接点がＯＦＦ（＝０）であれば、該接点が出力信号を
「１」にすることはなく、影響がないことから、調査対象の出力信号を求める論        理式より該接点と論理和の記号「｜」を削除する。
（２−２）論理積（「＆」）を取る接点の場合では、いずれかの接点がＯＦＦであれば論
理積は、常に「０」であるから、調査対象の出力信号を求める論理式からこの論        理積の論理式を削除する（又はこの論理積の式を「０」に置き換える）。
【００２１】
例えば、Ａ＝０、Ｂ＝１とした場合、
「Ａ｜Ｂ」は、上記（２−１）の規範でＢとする（Ａ｜Ｂ＝０｜Ｂ＝Ｂ）。  
「Ａ＆Ｂ」は、上記（２−２）の規範で論理積の論理（Ａ＆Ｂ）を削除又は「０」とする（Ａ＆Ｂ＝０＆Ｂ＝０）。
【００２２】
別の例で説明すると、出力信号を求める論理が（Ｆ｜（Ｄ＆Ｃ））の場合でＦ＝０のときは、（Ｄ＆Ｃ）の状態によって、調査対象の出力信号の状態が変化することになるから、出力信号を求める論理の式から「Ｆ」と「｜」を削除し、出力信号を求める論理を（Ｄ＆Ｃ）とする（規範（２−１）による）。又、出力信号を求める論理が（Ｈ＆Ｇ）の場合において、Ｈ＝０の場合には、この論理（Ｈ＆Ｇ）は常に０となるからこの論理を削除する（規範（２−２）による）。
そこで、上述した規範に基づいて、図２における出力信号Ｚの異常調査の例を説明する。
【００２３】
（イ）出力信号Ｚが、ＯＮ（＝１）の状態であるべきものがＯＦＦ（＝０）の状態で異
常の場合の調査。
接点の信号状態を調べ、出力信号Ｚを求める論理式の上記（１）式に入力する。接点の信号状態が、Ｈ＝１、Ｇ＝０、Ｅ＝１、Ｆ＝０、Ｄ＝０、Ｃ＝１、Ｂ＝１、Ａ＝０とする。
【００２４】
Ｚ＝（Ｈ[1]＆Ｇ[0]）｜（Ｅ[1]＆（Ｆ[0]｜（Ｄ[0]＆Ｃ[1]））＆Ｂ[1]＆Ａ[0]）
＝（[1]  ＆Ｇ[0]）｜（[1]  ＆（Ｆ[0]｜（Ｄ[0]＆[1]  ））＆[1]  ＆Ａ[0]）
＝（Ｇ[0]）       ｜（       （Ｆ[0]｜Ｄ[0]）                  ＆Ａ[0]）
＝Ｇ｜（（Ｆ｜Ｄ）＆Ａ）                  ・・・（４）
となる。そこで、この出力信号Ｚを求める論理式：Ｚ＝Ｇ｜（（Ｆ｜Ｄ）＆Ａ）を表示し、出力信号Ｚが、ＯＦＦ（＝０）でＯＮ（＝１）の状態とならない原因の調査を行えばよい。又は、上記出力信号Ｚを求める論理式の代わりに、該論理式の論理をラダー回路で表した図３に示すラダー回路図を表示装置に表示することによって、異常の原因を調査するようにする。この調査は、接点Ｇ、Ｆ、Ｄ、Ａの状態を調べればよく、接点Ｇの信号状態がＯＮ（＝１）か否か、接点Ｇの信号状態がＯＦＦであることが正常であれば、「（Ｆ｜Ｄ）＆Ａ」がＯＮ（＝１）となるべきものであり、ＯＮとならない原因を調査する。すなわち、接点ＡがＯＮで接点Ｆ又は接点Ｄのいずれか一方がＯＮとならない原因を調査することになる。
【００２５】
このように、（４）式の論理式又は図３のラダー回路図に基づいて異常原因を調査すればよいものであり、論理式を省略していない（１）式の出力信号Ｚを求める論理式や図２のラダー回路図で調査するよりも格段にその調査が容易となる。
【００２６】
（ロ）出力信号Ｚが、ＯＦＦ（＝０）の状態であるべきものがＯＮ（＝１）の状態で異
常の場合の調査。
接点の信号状態が、Ｈ＝１、Ｇ＝１、Ｅ＝１、Ｆ＝０、Ｄ＝１、Ｃ＝１、Ｂ＝１、Ａ＝１とする。
Ｚ＝（Ｈ[1]＆Ｇ[1]）｜（Ｅ[1]＆（Ｆ[0]｜（Ｄ[1]＆Ｃ[1]））＆Ｂ[1]＆Ａ[1]）
＝（Ｈ[1]＆Ｇ[1]）｜（Ｅ[1]＆（       （Ｄ[1]＆Ｃ[1]））＆Ｂ[1]＆Ａ[1]）
＝（Ｈ＆Ｇ）｜（Ｅ＆Ｄ＆Ｃ＆Ｂ＆Ａ）          ・・・（５）
となる。そこで、この出力信号Ｚを求める論理式：Ｚ＝（Ｈ＆Ｇ）｜（Ｅ＆Ｄ＆Ｃ＆Ｂ＆Ａ）を表示するか、又は、該論理式を表した図４に示すラダー回路図を表示装置に表示することによって、異常の原因を調査するようにする。
【００２７】
この場合において、出力信号Ｚが、ＯＮ（＝１）でＯＦＦ（＝０）の状態とならない原因の調査では、接点Ｈ及び接点ＧがＯＮ（＝１）であることが正常か否かを調査する。接点Ｈ、接点Ｇが共に正常であれば、接点Ａ、Ｂ、Ｃ、Ｄ、ＥがＯＮ（＝１）であることが正常か否かを調査すればよいことになる。この場合も、（１）式や図２のラダー回路図に基づいて異常原因を調査することに比べ格段に調査が容易となる。
【００２８】
以上のように、接点や論理記号の削除、一部の論理式の削除等によって、正常な出力信号の状態への変化に影響を与えない論理を削除することによって、出力信号を求める論理が簡略化され、この簡略化された論理の式（上記（４）式、（５）式）、又は、簡略化された論理に対応するラダー回路の図（図３、図４）に基づいて、異常原因を調査すればよいことになり、その調査が容易となる。
【００２９】
又、調査対象の出力信号を求める論理の接点に、他の論理式によって求められる出力信号（リレー）の接点が含まれていれば、その接点の信号状態を求める論理をも調査対象の出力信号を求める論理をも含めて、上述した簡略化の処理を行えばよい。例えば、調査対象の出力信号を求める論理式が、上述した（１）式の場合では、該論理式の接点Ａ、Ｂは（２）式、（３）式に示す他の論理よってその信号状態が求められるものであるから、この（２）式、（３）式で示す論理を（１）式に組み込んだ論理式を求め、該論理式を上述した規範で簡略化するか、（１）〜（３）式の簡略化を先に行い、該簡略化された調査対象の出力信号を求める論理式（上記（４）式又（５）式）に他の簡略化された論理式を組み込めばよい。そして、簡略化された論理式又は該簡略化された論理式に対応するラダー回路図を表示して異常原因を調査すればよい。
【００３０】
次に、ファンクションブロックを有するシーケンスプログラムにおける異常調査について説明する。  
図５はファンクションブロックを有するシーケンスプログラム（ラダープログラム）の一例であり、ファンクションブロックＦＢ １には接点Ａ〜Ｆの信号が入力され、出力信号Ｘ、Ｙ、Ｚが出力されている。
【００３１】
図６は、このファンクションブロックＦＢ １内のシーケンスプログラム（ラダープログラム）である。  
そこで、ファンクションブロックＦＢ １の出力信号Ｘが正常な出力に変化しないため、原点となった接点の調査する場合を例にとって説明する。
【００３２】
調査対象の出力信号Ｘの論理式をこのファンクションブロックＦＢ １内のシーケンスプログラムより求める。  
Ｘ＝（Ｚ＆Ｙ）｜（Ｅ＆（Ｆ｜（Ｄ＆Ｃ））＆Ｂ＆Ａ）
Ｚ＝Ａ｜Ｃ
Ｙ＝Ａ＆Ｂ
【００３３】
（イ）出力信号Ｘが、ＯＮ（＝１）の状態であるべきものがＯＦＦ（＝０）の状態で異
常の場合の調査。
接点の信号状態を調べ、出力信号Ｘを求める論理式に入力する。接点の信号状態が、Ａ＝０、Ｂ＝１、Ｃ＝１、Ｄ＝０、Ｅ＝１、Ｆ＝０、Ｚ＝１、Ｙ＝０とする。
【００３４】
上述した規範（１−１）、（１−２）に基づいて、出力信号Ｘの論理式を簡略化する。
Ｘ＝（Ｚ＆Ｙ）｜（Ｅ＆（Ｆ｜（Ｄ＆Ｃ））＆Ｂ＆Ａ）
＝（Ｚ[1]＆Ｙ[0]）｜（Ｅ[1]＆（Ｆ[0]｜（Ｄ[0]＆Ｃ[1]））＆Ｂ[1]＆Ａ[0]）
＝（  [1]＆Ｙ[0]）｜（  [1]＆（Ｆ[0]｜（Ｄ[0]＆  [1]））＆  [1]＆Ａ[0]）
＝（Ｙ[0]）｜（  （Ｆ[0]｜（Ｄ[0]））＆Ａ[0]）
＝Ｙ｜（（Ｆ｜Ｄ）＆Ａ）            ・・・（６）
（６）式で示される簡略化された出力信号Ｘの論理式には、出力信号Ｙの接点Ｙを含むことから、出力信号Ｙの論理式も簡略化する。
【００３５】
Ｙ＝Ａ＆Ｂ
＝Ａ[0]＆Ｂ[1]
＝Ａ[0]＆[1]
＝Ａ                                    ・・・（７）
（７）式を（６）式に代入する
Ｘ＝Ａ｜（（Ｆ｜Ｄ）＆Ａ）                ・・・（８）
この簡略化された調査対象の出力信号Ｘの論理式（（８）式）を表示する。又は、該（８）式の論理のラダー回路図を図７に示すように表示する。さらには、（８）式の論理式と図７のラダー回路図を共に表示してもよい。
この（８）式の論理式又は図７のラダー回路図から明らかのように、出力信号ＸがＯＮ＝１とならない理由は、接点ＡがＯＮとならず、ＯＦＦの状態であるからであると分かる。
【００３６】
（ロ）出力信号Ｘが、ＯＦＦ（＝０）の状態であるべきものがＯＮ（＝１）の状態で異
常の場合の調査。
接点の信号状態が、Ａ＝１、Ｂ＝１、Ｃ＝１、Ｄ＝０、Ｅ＝１、Ｆ＝０、Ｚ＝１、Ｙ＝１とする。
Ｘ＝（Ｚ＆Ｙ）｜（Ｅ＆（Ｆ｜（Ｄ＆Ｃ））＆Ｂ＆Ａ）
＝（Ｚ[1]＆Ｙ[1]）｜（Ｅ[1]＆（Ｆ[0]｜（Ｄ[0]＆Ｃ[1]））＆Ｂ[1]＆Ａ[1]）
＝（Ｚ[1]＆Ｙ[1]）｜（Ｅ[1]＆（[0]｜（[0]＆Ｃ[1]））＆Ｂ[1]＆Ａ[1]）
＝（Ｚ[1]＆Ｙ[1]）｜（Ｅ[1]＆（[0]）                ＆Ｂ[1]＆Ａ[1]）
＝（Ｚ[1]＆Ｙ[1]）｜（[0]）
＝（Ｚ[1]＆Ｙ[1]）
＝Ｚ＆Ｙ                              ・・・（９）
出力信号Ｚを求める論理式に現在の信号状態を反映させて簡略化する。
【００３７】
Ｚ＝Ａ｜Ｃ
＝Ａ[1]｜Ｃ[1]
＝Ａ｜Ｃ                              ・・・（１０）
出力信号Ｙを求める論理式に現在の信号状態を反映させて簡略化する。
Ｙ＝Ａ＆Ｂ
＝Ａ[1]＆Ｂ[1]
＝Ａ＆Ｂ                              ・・・（１１）
現在の信号状態を反映させて簡略化したＺ、Ｙの論理（（１０）、（１１）式で示す論理）を（９）式に代入する。
Ｘ＝Ｚ＆Ｙ
＝（Ａ｜Ｃ）＆Ａ＆Ｂ                  ・・・（１２）
この簡略化された調査対象の出力信号Ｘの論理式（（１２）式）を表示する。若しくは、この（１２）式で示される論理式に対応するラダー回路図を図８に示すように表示する。又、出力信号Ｘの論理式（（１２）式）も図８のラダー回路図も共に表示してもよい。
【００３８】
この表示された論理式（（１２）式）又は図８のラダー回路図より、接点Ａ又は接点ＢがＯＦＦになれば、出力信号ＸはＯＦＦになることが簡単に分かる。  
本発明は、以上のようにして出力信号の異常の原因を容易に調査することができるようにしたものである。
【００３９】
図９は、上述した本発明における出力信号異常の原因の調査を行うシーケンスプログラムモニタ装置２０の一実施形態とプログラマブルコントローラ１０の概要図である。プログラマブルコントローラ１０は、プロセッサ（ＣＰＵ）１１と、該プログラマブルコントローラ１０を管理するシステムプログラムやシーケンスプログラム等を記憶するメモリ１２、シーケンスプログラム（ラダープログラム）等を表示するＣＲＴや液晶等で構成される表示装置１３、各種指令を入力するキーボードや表示画面上の位置を選択指定するポインティングデバイス等の入力手段１４、シーケンスプログラムモニタ装置２０を通信回線等を介して接続するためのインタフェース１５、数値制御装置や各種機器、センサ、アクチュエータ等に接続される入出力回路１６を備え、これらメモリ１２、表示装置１３、入力手段１４、インタフェース１５、入出力回路１６はバス１７でプロセッサ１１と接続されている。
【００４０】
上述したプログラマブルコントローラ１０の構成は、従来から公知のプログラマブルコントローラと同じである。  
本発明のシーケンスプログラムモニタ装置２０はこのようなプログラマブルコントローラ１０に接続されるもので、プロセッサ（ＣＰＵ）２１と、該プログラマブルコントローラ２０を管理するシステムプログラム、本発明が特徴とする出力信号の異常原因調査処理のプログラム、調査対象のシーケンスプログラム等を記憶するメモリ２２、シーケンスプログラム（ラダープログラム）や前述した出力信号の論理式などを表示するＣＲＴや液晶等で構成される表示装置２３、各種指令を入力するキーボードや表示画面上の位置を選択指定するポインティングデバイス等の入力手段２４、プログラマブルコントローラ１０と通信回線等を介して接続するためのインタフェース２５を備え、これら、これらメモリ２２、表示装置２３、入力手段２４、インタフェース２５はバス２６でプロセッサ２１と接続されている。
このシーケンスプログラムモニタ装置２０はシーケンスプログラムをモニタする専用のモニタ装置として構成してもよく、又はパーソナルコンピュータに本発明が特徴とする機能である出力信号の異常原因調査機能を実行するのプログラムを格納して、該パーソナルコンピュータによって、このシーケンスプログラムモニタ装置２０を構成してよいものである。
【００４１】
図１０は、この実施形態におけるシーケンスプログラムモニタ装置２０のプロセッサが実施する出力信号の異常原因調査処理のアルゴリズムを示すフローチャートである。  
プログラマブルコントローラ１０の出力信号に異常が発生したとき、このプログラマブルコントローラ１０にシーケンスプログラムモニタ装置２０を接続し、若しくは接続されているシーケンスプログラムモニタ装置２０により異常原因調査処理を開始する。  
シーケンスプログラムモニタ装置２０の入力手段２４より異常発生の出力信号を入力すると共に異常原因調査指令を入力すると、プロセッサ２１は図１０に示す処理を開始する。まず、プロセッサ２１は、インタフェース２５、通信回線、およびプログラマブルコントローラ１０のインタフェース１５を介して、プログラマブルコントローラ１０のメモリに記憶されている現在実行中のシーケンスプログラム（ラダープログラム）を読み出し、シーケンスプログラムモニタ装置２０のメモリ２２内に格納する（ステップＳ１）。
【００４２】
次に、入力された調査しようとする出力信号を求めるシーケンス番号のシーケンスプログラム（ラダープログラム）のラダー回路を抽出し（ステップＳ２）、この抽出したラダー回路の接点のアドレスを取得して登録する（ステップＳ３）。抽出したラダー回路の調査出力信号を求める論理式を作成する（ステップＳ４）。また、インタフェース２５、通信回線、インタフェース１５を介して、プログラマブルコントローラ１０のメモリに記憶されている各接点の信号状態より、ステップＳ３で登録された各接点のアドレスから接点の信号状態を読み取り取得する（ステップＳ５）。そして、ステップＳ４で求めた調査出力信号の論理式の各接点に対してその信号状態を入力し、論理式の簡略化を行う（ステップＳ６）。
【００４３】
すなわち、調査指令と共に入力された出力信号の状態が「ＯＦＦ」であるときは、該出力信号はＯＮ（＝１）の状態であるべきものがＯＦＦ（＝０）の状態で異常であり、この異常を調べるものであるから、上述した規範（１−１）、（１−２）に基づいて、調査出力信号の論理式を簡略化する。  
一方、調査指令と共に入力された出力信号の状態が「ＯＮ」であるときは、該出力信号はＯＦＦ（＝０）の状態であるべきものがＯＮ（＝１）の状態で異常であることから、これを調べるものであるから、上述した規範（２−１）、（２−２）に基づいて調査出力信号を求める論理式を簡略化する。
【００４４】
次に、この簡略化された調査出力信号を求める論理式内にシーケンスプログラムのラダー回路によって求められる他の出力信号の接点があるか判断し（ステップＳ７）、そのような接点があれば、その接点に対応する他の出力信号の論理式をシーケンスプログラムのラダー回路より作成する（ステップＳ８）。そして、この他の出力信号の論理式を構成する各接点の信号状態を取得し、論理式に代入しステップＳ５と同様に、規範（１−１）、（１−２）又は規範（２−１）、（２−２）に基づいて簡略化する（ステップＳ９）。次に簡略化された調査出力信号を求める論理式における接点に代えて、その接点の簡略化された他の出力信号の論理を代入し（ステップＳ１０）、ステップＳ７に戻る。
【００４５】
以下、簡略化された調査出力信号を求める論理式内にシーケンスプログラムのラダー回路によって求められる他の出力信号の接点がなくなるまで、ステップＳ７〜ステップＳ１０の処理を繰り返し実行する。そして、ステップＳ７で簡略化された調査出力信号を求める論理式内にシーケンスプログラムのラダー回路によって求められる他の出力信号の接点がないと判断されると、ステップＳ１１に移行し、簡略化された調査出力信号を求める論理式からラダー回路を作成し、表示装置２３の表示画面にこのラダー回路図を表示して、この異常原因調査処理を終了する。又、ラダー回路図の代わりに、簡略化された調査出力信号を求める論理式を表示してもよく、さらには、この論理式とラダー回路図を共に表示してもよい。  
こうして表示されたラダー回路図又は論理式は、異常原因の接点のみで構成され、簡略化されていることから、出力信号の異常原因の調査が容易となる。
【００４６】
上述した、本発明の実施形態は、プログラマブルコントローラ１０における出力信号の異常原因の調査を行うために、パーソナルコンピュータ等で構成されたシーケンスプログラムモニタ装置２０を設けて、異常原因の調査を行うものとしたが、このシーケンスプログラムモニタ装置２０が有する出力信号の異常原因の調査機能をプログラマブルコントローラ自体が備えるものとしてもよい。すなわち、プログラマブルコントローラに上述した出力信号の異常原因調査処理のプログラムを格納しておき、プログラマブルコントローラのプロセッサと入力手段、表示装置を用いて、出力信号の異常原因の調査を行うものとしてもよいものである。この場合、プログラマブルコントローラのプロセッサは、出力信号の異常原因調査処理として、図１０と同じ処理を実行するものとなるが、プログラマブルコントローラのメモリ内には、異常が発生したとき実行しているシーケンスプログラムが格納されているものであるから、図１０におけるステップＳ１の現在実行中のシーケンスプログラムの格納処理はないものとなる。すなわち、プログラマブルコントローラによる出力信号の異常原因調査処理のアルゴリズムは図１０のステップＳ２〜ステップＳ１１の処理で構成されることになる。
【図面の簡単な説明】
【００４７】
【図１】ラダー回路と論理式の関係を示す説明図である。
【図２】ラダー回路図で示されるシーケンスプログラム（ラダープログラム）の一例を示す図である。
【図３】図２に示すシーケンスプログラムにおける出力信号ＺがＯＦＦの状態で異常の場合での異常調査での簡略化された論理式に対応するラダー回路図である。
【図４】図２に示すシーケンスプログラムにおける出力信号ＺがＯＮの状態で異常の場合での異常調査での簡略化された論理式に対応するラダー回路図である。
【図５】ファンクションブロックを有するシーケンスプログラム（ラダープログラム）の一例を示す図である。
【図６】図５のファンクションブロック内のシーケンスプログラム（ラダープログラム）の一例を示す図である。
【図７】図５、図６に示すファンクションブロックの出力信号ＺがＯＦＦの状態で異常の場合での異常調査での簡略化された論理式に対応するラダー回路図である。
【図８】図５、図６に示すファンクションブロックの出力信号ＺがＯＮの状態で異常の場合での異常調査での簡略化された論理式に対応するラダー回路図である。
【図９】出力信号異常の原因の調査を行う本発明のプログラマブルコントローラの一実施形態である。
【図１０】同実施形態における出力信号の異常原因調査処理のアルゴリズムを示すフローチャートである。
【符号の説明】
【００４８】
１０  プログラマブルコントローラ
２０  シーケンスプログラムモニタ装置
【図１】
2009122936.tif 000003
【図２】
2009122936.tif 000004
【図３】
2009122936.tif 000005
【図４】
2009122936.tif 000006
【図５】
2009122936.tif 000007
【図６】
2009122936.tif 000008
【図７】
2009122936.tif 000009
【図８】
2009122936.tif 000010
【図９】
2009122936.tif 000011
【図１０】
2009122936.tif 000012