(57)【特許請求の範囲】
【請求項１】
対象機械から入力される検出信号によってＯＮ・ＯＦＦする複数の接点をＯＲ又はＡＮＤ接続してなるラダー回路に基づき、前記対象機械の動作を制御する制御信号を出力するシーケンス制御装置であって、
前記ラダー回路をｎ行ｍ列で展開される格子状の配線としてアルゴリズムによって表現したシーケンスプログラムを分岐情報として保持する分岐情報記憶部と、
前記検出信号及び前記分岐情報と、これらに対応する前記制御信号との全ての組み合わせを格納するシーケンステーブルとを有し、
前記対象機械から入力される検出信号及び前記分岐情報記憶部に記憶された分岐情報と前記シーケンステーブルとを参照し、該検出信号及び該分岐情報に対応する制御信号を前記対象機械に対して出力することを特徴とするシーケンス制御装置。
【請求項２】
請求項１に係るシーケンス制御装置において、
前記ラダー回路を所定の単位ブロックに分割し、
前記シーケンステーブルは、各単位ブロックに入力される前記検出信号及び前記分岐情報と、これらに対応する前記ブロックからの出力との全ての組み合わせを格納し、
前記シーケンステーブルを参照することによって、ある単位ブロックについての出力を求め、この出力から次の単位ブロックの出力を求め、これを繰り返すことによって全ての単位ブロックについての出力を求め、最後の単位ブロックからの出力を前記制御信号として前記対象機械に出力することを特徴とするシーケンス制御装置。
【請求項３】
請求項１又は２に係るシーケンス制御装置であって、
前記分岐情報記憶部に格納された分岐情報を、前記対象機械の動作条件に応じて変更するための操作手段を有することを特徴とするシーケンス制御装置。
【請求項４】
対象機械から出力される検出信号によってＯＮ・ＯＦＦする複数の接点をＯＲ又はＡＮＤ接続してなるラダー回路に基づき、前記対象機械の動作を制御する対象機械の制御方法であって、
前記ラダー回路をｎ行ｍ列で展開される格子状の配線としてアルゴリズムによって表現したシーケンスプログラムを分岐情報として記憶手段に格納しておくとともに、前記検出信号及び前記分岐情報と、これらに対応する前記制御信号との全ての組み合わせをシーケンステーブルとして前記記憶手段に格納しておき、
前記検出信号を前記対象機械から取得するとともに、この取得した検出信号と前記分岐情報に基づいて前記シーケンステーブルを参照し、前記制御信号を求め、これを前記対象機械に出力する
ことを特徴とする対象機械の制御方法。
【請求項５】
請求項４に係る対象機械の制御方法において、
前記ラダー回路を所定の単位ブロックに分割し、
前記シーケンステーブルは、各単位ブロックに入力される前記検出信号及び前記分岐情報と、これらに対応する前記ブロックからの出力との全ての組み合わせを格納し、
前記シーケンステーブルを参照することによって、ある単位ブロックについての出力を求め、この出力から次の単位ブロックの出力を求め、これを繰り返すことによって全ての単位ブロックについての出力を求め、最後の単位ブロックからの出力を前記制御信号として前記対象機械に出力することを特徴とする対象機械の制御方法。
【請求項６】
対象機械から出力される検出信号によってＯＮ・ＯＦＦする複数の接点をＯＲ又はＡＮＤ接続してなるラダー回路に基づき、前記対象機械の動作を制御するシーケンスプログラムを記録したコンピュータ読み取り可能な記録媒体であって、
前記ラダー回路をｎ行ｍ列で展開される格子状の配線としてアルゴリズムによって表現したシーケンスプログラムを分岐情報として記憶手段に格納しておくステップと、
前記検出信号及び前記分岐情報と、これらに対応する前記制御信号との全ての組み合わせをシーケンステーブルとして前記記憶手段に格納しておくステップと、
取得した検出信号と前記分岐情報に基づいて前記シーケンステーブルを参照し、前記制御信号を求めるステップと、
求められた制御信号を前記対象機械に出力するステップと
を含むことを特徴とするシーケンスプログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項７】
請求項６に係るシーケンスプログラムを記録したコンピュータ読み取り可能な記録媒体において、
前記シーケンステーブルは、前記ラダー回路を分割してなる所定の単位ブロックに入力される前記検出信号及び前記分岐情報と、これらに対応する前記ブロックからの出力との全ての組み合わせを格納したデータ構造をなし、
前記シーケンスプログラムは、前記シーケンステーブルを参照することによって、ある単位ブロックについての出力を求めるステップと、
この単位ブロックの出力から次の単位ブロックの出力を求めるステップとを含み、
これらのステップを繰り返すことによって全ての単位ブロックについての出力を求めることを特徴とするシーケンスプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、対象機械の動作を制御するシーケンス制御装置に関し、特に、リレーラダー回路をアルゴリズムで表現したプログラムとして演算処理するシーケンス制御装置に関する。
【０００２】
【従来の技術】
従来、シーケンス制御装置の主要部であるシーケンス回路としては、リレーの接点（スイッチ）と駆動コイルとを配線でＯＲ又はＡＮＤ接続して構成されたリレーラダー回路が用いられていた。
【０００３】
しかし、このリレーラダー回路はハードウェア的な回路であるため、その一部を修正しようとする場合は、その配線接続を繋ぎ換える等の作業を要し、その作業が繁雑であるとともに、シーケンス制御装置の仕様を変更するのに長時間要するという問題があった。
【０００４】
これに対し、近年においては前記ハード的なリレーラダー回路に換えて、これをアルゴリズムで表現したプログラムを用いるプログラマブルシーケンスコントローラが開発されている。このプログラマブルシーケンスコントローラによれば、シーケンス制御装置内に保持されたシーケンスプログラムを書き換えるだけで、従来行われていた配線の繋ぎ換える作業を実現することができ、迅速にシーケンス制御装置の仕様を変更することができる。図９は、従来のプログラマブルシーケンスコントローラ５００の構成及び動作についての説明図である。
【０００５】
同図（ａ）に示すように、従来のプログラマブルシーケンスコントローラ５００は、シーケンスプログラムが格納されるメモリ５０１と、対象機械に対する入出力を行う入出力部５０２と、システム全体の制御を行うＣＰＵ５０３と、ラダー回路に関する論理演算処理を行う演算部５０４とから構成される。
【０００６】
このような構成のプログラマブルシーケンスコントローラ５００では、シーケンスラダー回路を行方向、列方向に展開するスイッチマトリックスとしてみなし、この列情報と行情報とを左方端側から右方の出力部へ向けて順次演算し、各行における出力の状態を算出する。
【０００７】
詳述すると、図９（ｂ）に示すラダー回路は、対象機械に設けられた各種センサからの信号に基づいてＯＮ／ＯＦＦされるスイッチ（接点）Cijを、ｎ行ｍ列で展開される格子状の配線で接続したものであり、実際は、アルゴリズムで表現されたシーケンスプログラムとして装置内に格納されるものである。このプログラム上のラダー回路における配線は、行方向に平行に配置されているとともに、列方向に隣接する配線同士を分岐線Bijで相互に接続している。また、各行の右方端側には対象機械の駆動部に対する出力OUT1〜nが配置されている。このようなラダー回路では、接点のＯＮ／ＯＦＦ及び分岐線のＡＮＤ／ＯＲを切り換えることによってあらゆる形態の回路を表現することができる。
【０００８】
そして、プログラマブルシーケンスコントローラ５００では、対象機械の動作条件から接点の常時開、閉接点及び分岐情報を設定し、シーケンスプログラムを形成し、これを実行することによって対象機械からの入力情報に応じて、対象機械の動作を制御する。
【０００９】
また、このシーケンスプログラムは、ラダー回路の列毎に演算処理が行われる。具体的には、先ず、対象機械から、第１列目のCi1〜Cn1及びBi1〜Bn1についての入力情報を前記入出力部５０２を介して取得し、ＣＰＵ５０３ではメモリ５０１からシーケンスプログラムを読み出して、この第１列目についての演算を演算部５０４に行わせる。演算部５０４は、第１列目についての演算結果をＣＰＵ５０３に受け渡す。次いで、ＣＰＵ５０３は、第２列目Ci2〜Cn2及びBi2〜Bn2についての入力を入出力部５０２を介して取得し、第１列目の演算結果とともに、演算部５０４に送出する。演算部５０４は、第１列目の演算結果と第２列目の入力情報に基づいて、第２列目についての演算結果をＣＰＵ５０３に受け渡す。このような処理を繰り返すことによって、マトリックスの左方端側から右方端側へ移動して行き、各出力OUT1〜nを求める。この出力OUT1〜nは、入出力部５０２を介して対象機械の駆動部に対して出力される。
【００１０】
【発明が解決しようとする課題】
しかしながら、従来のプログラマブルシーケンスコントローラでは、第１列目について演算を行いその演算結果を用いて、次の第２列目の演算を行っているため、回路が複雑になるに従って、演算処理に時間がかかり、対象機械に対する応答が遅延するという問題があった。
【００１１】
また、従来のプログラマブルシーケンスコントローラでは、出力OUT1〜nを求めるのに演算部５０４が必要であったため、この演算部５０４に要する費用によって装置全体のコストが上昇するとともに、この演算部５０４を取り付けるために要するスペースによって装置の小形化が実現され難いという問題があった。
【００１２】
そこで、本発明は上記事情に鑑みて成されたものであり、その目的は、プログラマブルシーケンスコントローラにおいて、対象機械からの入力があってから制御信号を出力するまでの応答時間を短縮し、制御処理をより迅速なものとするとともに、コストの低減及び装置の小形化を実現することのできるシーケンス制御装置を提供することにある。
【００１３】
上記課題を解決するために本発明は、対象機械から入力される検出信号によってＯＮ・ＯＦＦする複数の接点をＯＲ又はＡＮＤ接続してなるラダー回路に基づき、前記対象機械の動作を制御する制御信号を出力するシーケンス制御装置であって、前記ラダー回路をｎ行ｍ列で展開される格子状の配線としてアルゴリズムによって表現したシーケンスプログラムを分岐情報として保持する分岐情報記憶部と、前記検出信号及び前記分岐情報と、これらに対応する前記制御信号との全ての組み合わせを格納するシーケンステーブルとを有し、前記対象機械から入力される検出信号及び前記分岐情報記憶部に記憶された分岐情報と前記シーケンステーブルとを参照し、該検出信号及び該分岐情報に対応する制御信号を前記対象機械に対して出力することを特徴とするものである。
【００１４】
また、本発明は、対象機械から出力される検出信号によってＯＮ・ＯＦＦする複数の接点をＯＲ又はＡＮＤ接続してなるラダー回路に基づき、前記対象機械の動作を制御する対象機械の制御方法であって、前記ラダー回路をｎ行ｍ列で展開される格子状の配線としてアルゴリズムによって表現したシーケンスプログラムを分岐情報として記憶手段に格納しておくとともに、前記検出信号及び前記分岐情報と、これらに対応する前記制御信号との全ての組み合わせをシーケンステーブルとして前記記憶手段に格納しておき、前記検出信号を前記対象機械から取得するとともに、この取得した検出信号と前記分岐情報に基づいて前記シーケンステーブルを参照し、前記制御信号を求め、これを前記対象機械に出力することを特徴とするものである。
【００１５】
さらに、本発明は、対象機械から出力される検出信号によってＯＮ・ＯＦＦする複数の接点をＯＲ又はＡＮＤ接続してなるラダー回路に基づき、前記対象機械の動作を制御するシーケンスプログラムを記録したコンピュータ読み取り可能な記録媒体であって、前記ラダー回路をｎ行ｍ列で展開される格子状の配線としてアルゴリズムによって表現したシーケンスプログラムを分岐情報として記憶手段に格納しておくステップと、前記検出信号及び前記分岐情報と、これらに対応する前記制御信号との全ての組み合わせをシーケンステーブルとして前記記憶手段に格納しておくステップと、取得した検出信号と前記分岐情報に基づいて前記シーケンステーブルを参照し、前記制御信号を求めるステップと、求められた制御信号を前記対象機械に出力するステップとを含むことを特徴とするものである。
【００１６】
このような本発明によれば、接点情報と分岐情報から導出される制御出力信号の全ての組み合わせを予め求めておき、これをシーケンステーブルとして保持しておくため、対象機械を制御する際には、接点情報及び分岐情報を取得し、これらとシーケンステーブルとを参照することによって、迅速に制御出力信号を求めることができる。従って、演算処理に要する時間を省略することができ、迅速なシーケンス制御を実現することができる。また、演算処理を省略することができる結果、演算処理用の手段を不要とすることができるため、これによって装置の小形化を図ることができる。
【００１７】
【発明の実施の形態】
［第１の実施形態］
（プログラマブルシーケンスコントローラ１００の構成）
以下、この発明の第１実施形態について説明する。図１は本実施形態に係るプログラマブルシーケンスコントローラ１００の概略構成を示すブロック図である。
【００１８】
同図において、プログラマブルシーケンスコントローラ１００は、対象機械８からの接点情報を取得する入力回路１と、プログラマブルシーケンスコントローラ１００全体の制御を行うＣＰＵ２と、対象機械８に対する制御信号を出力する出力回路３と、シーケンスプログラム４１やシーケンステーブル４２を格納しておくメモリ４と、このプログラマブルシーケンスコントローラ１００の操作を行うための表示部５及び操作部６と、外部装置と接続するためのインターフェース（IF）７とから概略構成される。
【００１９】
対象機械８は検出部８１と駆動部８２とを備えている。検出部８１は、有接触センサや無接触センサ、電流・電圧・温度等の各種センサによって、対象機械８の動作状態をプログラマブルシーケンスコントローラ１００に接点情報として送出するものである。この検出部８１からの出力された接点情報はプログラマブルシーケンスコントローラ１００の入力回路１に送出される。駆動部８２は、対象機械８の各部駆動モータ等の駆動手段であり、これらは出力回路３から出力される制御信号によって制御される。
【００２０】
ＣＰＵ２は、操作部６をユーザーが操作に応じて駆動するとともに、各部の動作状態を表示部５を介してユーザーに対して表示する。ここで操作部６としては、例えば押ボタンスイッチや操作スイッチ等の、ＣＰＵ２に対して命令を入力する種々の手段を採用することができる。また、表示部５としては、例えば、ランプやＬＥＤ、ＣＲＴ等によって表示するものがあり、この表示部５によって各部の動作状態が表示される。また、表示部５は、入力回路１への入力信号を表示することによって対象機械８の動作状態を表示することもできる。
【００２１】
そして特に、このＣＰＵ２は、入力回路１から受け渡される接点情報及び、メモリ４に格納されたプログラム４１から取得される分岐情報について、シーケンステーブル４２を参酌して、対象機械８の制御信号を出力する。
（プログラマブルシーケンスコントローラ１００の動作）
以上説明したような構成のプログラマブルシーケンスコントローラ１００の動作について説明する。図２は、本実施形態に係るプログラマブルシーケンスコントローラ１００の動作を示すフロー図である。
【００２２】
対象機械８のシーケンス制御が開始（Ｓ２０１）されると、ＣＰＵ２は、検出部８１から入力回路１を介して接点情報を取得する（Ｓ２０２）。次いで、ＣＰＵ２は、メモリ４内に格納されたシーケンスプログラム４１から分岐情報を取得する（Ｓ２０３）。そして、ＣＰＵ２は、このように取得した接点情報及び分岐情報からオフセットアドレスを生成し、このオフセットアドレスについてシーケンステーブル４２を参照し（Ｓ２０４）、コイル出力データを取得する。このコイル出力データを、対象機械８に対する制御信号として、出力回路３より対象機械８に出力する（Ｓ２０５）。
（シーケンステーブル４２の構成）
前記シーケンステーブル４２は、本実施形態では、接点情報のＯＮ及びＯＦＦと、分岐情報のＯＲ及びＡＮＤとに対する出力OUTの全ての組み合わせを、１６進法で表現したデータテーブルである。図３は、このシーケンステーブル４２の説明図である。
【００２３】
同図において（ａ）は、かかるシーケンステーブル４２を説明するために、ラダー回路の一例として２行２列接点−２出力のラダー回路１１０を示すものである。すなわち、同図（ａ）に示すように、ラダー回路１１０は、接点（スイッチ）９Ａ〜９Ｄと、出力１１Ａ，１１Ｂと、分岐線１０ａ、１０ｂとから構成される。
【００２４】
同図（ａ）において、接点９Ａ〜９Ｃは、対象機械８の検出部８１からの信号によってＯＮ及びＯＦＦが切り替わるものである。また、同図（ａ）において、分岐線１０ａ、１０ｂは、ＯＮ又はＯＦＦすることによってＯＲ接続又はＡＮＤ接続が切り替わるものである。すなわち、ＯＮの状態でＯＲ接続を形成し、ＯＦＦの状態でＡＮＤ接続を形成する。この分岐線のＯＮ、ＯＦＦはメモリ４に格納されたシーケンスプログラム４１から取得される。なお、同図に示す例では、分岐線１０ａ、１０ｂはともに、ＯＮの状態となりＯＲ接続を形成している。
【００２５】
接点９Ｃは、接点９Ａと９ｂにＯＲ接続によって接続されており、一方、出力１１Ａ及び１１Ｂは、ＯＲ接続によって接点９Ｃに接続されている。なお、同図（ａ）において、接点９Ｄは、常時ＯＦＦの状態にある閉接点であるため、接点９Ｂと出力１１Ｂとを直接繋ぐ配線（図中の点線）は存在しないこととなる。
【００２６】
従って、接点９Ａ又は９ＢのいずれかがＯＮの状態にあり、且つ接点９ＣがＯＮの状態にあるとき、出力１１Ａ及び１１ＢはともにＯＮとなる。また、接点９Ａ又は９ＢがいずれもＯＦＦの場合、或いは接点９Ａ又は９ＢのいずれかがＯＮであって接点９ＣがＯＦＦの場合には、出力１１Ａ、１１ＢはともにＯＦＦとなる。いま、同図（ａ）において、対象機械８からの出力によって接点９ＡはＯＦＦの状態にあり、接点９ＢはＯＮの状態にあり、接点９ＣはＯＮの状態にある。よって、出力１１Ａ及び１１ＢともにＯＮの状態となっている。
【００２７】
このような各接点・分岐情報はオフセットアドレス信号としてメモリ４に送出され、シーケンステーブル４２と参照される。このオフセットアドレス信号は、本実施形態では、上位４ビットに接点情報（９Ａ〜９Ｄ）が記述され、下位２ビットに分岐情報（１０ａ，１０ｂ）が記述されている。具体的には、
オフセットアドレス＝Ａ,Ｂ,Ｃ,Ｄ,ａ,ｂ
で表現される。ここで、
0003662755.tif 000002
とすると、図３（ａ）に示した例では、
0003662755.tif 000003
となる。
【００２８】
そして、このオフセットアドレスに対応するコイル出力データ（制御信号）をシーケンステーブル４２から求める。この本実施形態に係るシーケンステーブル４２には、前記オフセットアドレスの全てのパターンに対応したコイル出力データが記録されている。すなわち、図３（ｂ）に示すように、左欄にオフセットアドレスが記述され、これらの各オフセットアドレスに対応するコイル出力データが右欄に記述されている。上述した例では、オフセットアドレスは”１Ｂ”であるため、これに対応するコイル出力データは”３”である。
【００２９】
このコイル出力データは、本実施形態では、コイル出力がア、イの２つであることから、２ビットで表現される。具体的には、
コイル出力データ＝ア,イ
で表現される。ここで、
0003662755.tif 000004
とすると、図３（ａ）に示した例では、
0003662755.tif 000005
となる。すなわち、図３（ａ）で示した例では、コイル出力ア、イともにＯＮとなった状態となる。
【００３０】
さらに、このシーケンステーブルに関する他の例を説明する。図４は、他の例として２行２列接点−２出力のラダー回路１２０を示すものである。すなわち、同図に示すように、ラダー回路１２０は、接点（スイッチ）９Ａ〜９Ｄと、出力１１Ａ，１１Ｂと、分岐線１０ａ、１０ｂとから構成される。
【００３１】
同図において、接点９Ａ〜９Ｃは、対象機械８の検出部８１からの信号によってＯＮ及びＯＦＦが切り替わるものである。また、同図において、分岐線１０ａはＯＲ接続を形成しているため、接点９Ｃは、接点９Ａと９ｂにＯＲ接続によって接続されており、接点９Ｄは、常時ＯＮの状態にある開接点であるため、接点９Ｂと出力１１Ｂとは常に接続された状態にある。
【００３２】
また、分岐線１０ｂがＯＦＦとなっているため、出力１１Ａは、接点９ＣにＡＮＤ接続の状態となり、出力１１Ｂは、ＯＲ接続によって接点９Ａ及び９Ｂに接続されていることとなる。従って、出力１１Ａは、接点９Ａ又は９ＢのいずれかがＯＮの状態にあり且つ９ＣがＯＮの状態にあるときＯＮとなるが、出力１１Ｂは、接点９Ａ又は９ＢのいずれかがＯＮの状態にあればＯＮとなる。
【００３３】
いま、対象機械８からの出力によって接点９ＡはＯＦＦの状態にあり、接点９ＢはＯＮの状態にあり、接点９ＣはOFFの状態にある。従って、出力１１ＡはＯＦＦの状態となり、出力１１ＢはＯＮの状態となっている。
【００３４】
このような各接点・分岐情報はオフセットアドレス信号としてメモリ４に送出され、シーケンステーブル４２と参照される。図４に示した例では、
0003662755.tif 000006
となる。
【００３５】
そして、このオフセットアドレスに対応するコイル出力データ（制御信号）をシーケンステーブル４２から求めると、オフセットアドレスは”１６”に対応するコイル出力データは”１”である。従って、図４に示した例では、
0003662755.tif 000007
となる。すなわち、図４で示した例では、コイル出力アは、ＯＦＦの状態となり、コイル出力イは、ＯＮとなった状態となる。
（シーケンスプログラムの改変）
次に、メモリ４に記憶されているシーケンスプログラムを改変する際の手順について説明する。この改変は、例えば、対象機械８の動作条件が変更されたとき等に行われる。図５は、プログラマブルシーケンスコントローラ１００内に記録されたシーケンスプログラム４１を改変する手順についての説明図である。
【００３６】
同図に示すように、シーケンスプログラム４１の改変は例えばパーソナルコンピュータ等の外部コンピュータ１４を、プログラマブルシーケンスコントローラ１００に備えられているＩＦ７を介して接続する。
【００３７】
この外部コンピュータ１４には、シーケンスプログラム４１を改変するための専用ソフトウェアがインストールされている。この専用ソフトウェアは、メモリ４に記憶されたシーケンスプログラム４１が保持する分岐情報を、外部コンピュータ１４のディスプレイ１４ａにラダー回路図として表示する機能を有する。これにより、ユーザーは分岐情報をラダー回路図として視覚的に把握することができる。そして、この専用ソフトウェアでは、キーボード１４ｂやマウス１４ｃを操作して、ディスプレイ１４ａ上のラダー回路を変更することによって、メモリ４内のプログラム４１を変更することができる。
【００３８】
また、プログラマブルシーケンスコントローラ１００を稼働させた状態でこの専用プログラムを実行した場合には、ディスプレイ１４ａ上に接点のON／OFFをリアルタイムで表示することができ、対象機械８の動作状態をディスプレイ１４ａによって把握することができる。
［第２の実施形態］
（第２実施形態に係るプログラマブルシーケンスコントローラの構成）
次いで、本発明の第２実施形態について説明する。なお、この第２実施形態では、上述した第１実施形態で用いたプログラマブルシーケンスコントローラ１００のメモリ４内に格納されるシーケンスプログラム４１及びシーケンステーブル４２の内容を変更したうえで、第１実施形態で用いたプログラマブルシーケンスコントローラ１００をそのまま用いることができる。
【００３９】
本実施形態では、ラダー回路の規模が大きい場合に、ラダー回路を所定の単位ブロックに分割するとともに、この単位ブロックについてのオフセットアドレスと出力データをシーケンステーブル４２に格納しておき、各単位ブロックについてのラダー演算を順次行って対象機械８に対する制御信号を求めることを特徴とする。
【００４０】
図６は、上述したプログラマブルシーケンスコントローラ１００で対象機械８を制御する場合において、シーケンスラダー回路の最大要素数が多い場合の動作を示す説明図である。なお、同図（ａ）には、最大要素数が多いラダー回路図の一例として６行６列接点・６出力のラダー回路１３０が示されている。
【００４１】
同図（ａ）に示すように、ラダー回路の最大要素数が多い場合には、ラダー回路１３０を複数ブロックに分割し、各ブロック単位でシーケンス演算を行う。具体的には、列毎にブロック２０１〜２０６に分割する。同図（ｂ）は、これらブロックのうちブロック２０１のみを示すものである。
【００４２】
同図（ｂ）に示すように、ブロック２０１は、接点９Ａ〜９Ｆと分岐線１０ａ〜１０ｂと、当該ブロック２０１からの出力１５Ａ〜１５Ｆとから構成されている。詳しくは、ブロック２０１では、接点９Ａと出力１５Ａ、及び接点９Ｂと出力１５ＢはＡＮＤ接続となっている。また、接点９Ｃ及び９Ｄは、分岐線１０ｃがＯＮになっていることによって出力１５Ｃ及び１５Ｄに対してＯＲ接続となっている。さらに、接点９Ｅ及び９Ｆは、分岐線１０ｄがＯＮになっていることによって１５Ｅ及び１５Ｆに対してＯＲ接続となっている。いま、接点９Ａ，９Ｃ，９ＦがＯＮの状態となっており、接点９Ｂ，９Ｄ，９ＥがＯＦＦの状態となっている。
【００４３】
従って、ブロック２０１におけるオフセットアドレスデータは、
0003662755.tif 000008
となる。
【００４４】
このオフセットアドレスに対応するブロック出力は、図６（ｃ）に示すような、シーケンステーブル４２に格納されている。このシーケンステーブル４２によれば、オフセットアドレス”525”に対応する出力データは、”2F”となる。
【００４５】
これについて詳述すると、図６（ａ）に示すように、ブロック出力１５Ａ〜１５Ｆについては、１５ＢがＯＦＦの状態となっており、それ以外のブロック出力は全てＯＮとなっている。すなわち、
0003662755.tif 000009
である。
【００４６】
このようにシーケンステーブル４２には、オフセットアドレスと次ブロックへの出力データとの全ての組み合わせが格納されており、このシーケンステーブル４２を参照することにより、演算を行うことなく各ブロックから次のブロックへの出力を求めることができる。
【００４７】
このようにして求められたブロック２０１からの出力結果を用いて、次ブロックであるブロック２０２の出力を求める。すなわち、ブロック２０１からの出力”2F”と接点情報とについてＡＮＤ演算を行う。このＡＮＤ演算によって得られた結果とブロック２０２についての分岐情報とからオフセットアドレスを求める。
【００４８】
ブロック２０１からの出力は、上述したように、”1,0,1,1,1,1（２進）”である。また、ブロック２０２において、接点９Ｇ及び９ＨはＯＦＦであり、接点９Ｃと９Ｅは、開接点となっており、それ以外は全て閉接点となっていることから、ブロック２０２における接点情報は、”0,0,1,0,1,0（２進）”である。従って、これらのＡＮＤ演算の結果は、”0,0,1,0,1,0”となる。また、ブロック２０２における分岐情報は、上４行が全てＯＲ接続となっている。よって、ブロック２０２におけるオフセットアドレスは、
0003662755.tif 000010
となる。このオフセットアドレス”15E”に対応する次列への出力データは、シーケンステーブル４２より、”3E”となる。同様にして、ブロック２０３〜２０６についての出力を求めると、図５（ａ）に示したように、各ブロックの出力は、各々”20”、”3F”、”3E”、”1C”となる。これらのうち最後に求まるブロック２０６からの出力が、当該ラダー回路のコイル出力データとなる。この例では、ブロック２０６からの出力は”1C”であることから、
0003662755.tif 000011
となる。
【００４９】
この第２の実施形態に係るプログラマブルシーケンスコントローラによれば、ラダー回路の演算によって求めるべきコイル出力データをシーケンステーブルに予め格納しておくため、演算を要することなくコイル出力を求めることができる。
【００５０】
殊に、本実施形態では、最大要素数が多いラダー回路を複数のブロックに分割し、ブロック毎にブロック出力を求めるため、効率よくシーケンステーブルの参照処理を行うことができる。このとき、１つのシーケンステーブルを繰り返し用いることができるため、シーケンステーブルを格納するメモリ容量を減少することができる。
（第２実施形態に係るプログラマブルシーケンスコントローラの動作）
次いで本実施形態に係るプログラマブルシーケンスコントローラの動作について詳述する。図７は、本実施形態に係るプログラマブルシーケンスコントローラの動作を示すフロー図である。
【００５１】
対象機械８のシーケンス制御が開始されると（Ｓ６０１）、ＣＰＵ２は、検出部８１から入力回路１を介して接点情報を取得する（Ｓ６０２）。次いで、ＣＰＵ２は、第１列目のブロック２０１についてのラダー演算を行う。
【００５２】
先ず、ブロック２０１に対する入力値と接点情報とのＡＮＤ演算を行う（Ｓ６０３）。このとき、ブロック２０１は、第１列目なので、入力値は全てＯＮの値となる。その後、メモリ４内に格納されたシーケンスプログラム４１からブロック２０１における分岐情報を取得する（Ｓ６０４）。そして、ＣＰＵ２は、ＡＮＤ演算の結果と分岐情報とからオフセットアドレスを生成し、このオフセットアドレスについてシーケンステーブル４２を参照し（Ｓ６０５）、コイル出力データを取得する（Ｓ６０６）。
【００５３】
このようにして求められたブロック２０１の出力値は、次のブロック２０２の入力値となることから、ブロック出力値を次ブロックの入力値に代入して（Ｓ６０７）、次のブロック２０２のラダー演算を行う（Ｓ６０８）。
【００５４】
上記Ｓ６０３からＳ６０７のステップを繰り返すことによって、全てのブロック２０２〜２０６についてラダー演算処理を行う。そして、最後のブロック２０６からのコイル出力が対象機械８に対する制御信号となることから、このコイル出力データを制御信号として、出力回路３より対象機械８に対して出力し（Ｓ６０９）、制御を終了する（Ｓ６１０）。
（変更例）
なお、この第２実施形態では、ラダー回路を列毎に分割したが、本発明はこれに限定されるものではない。例えば、上段と下段とに分割して、各段毎に演算を行うようにすることもできる。
［シーケンスプログラムを記録したコンピュータ読み取り可能な記録媒体］
以上説明した第１，２の実施形態における対象機械８の制御は、所定のプログラム言語で表現されたソフトウェアとすることができる。なお、このソフトウェアとしては、例えば周知のＯＳ又は専用のＯＳに関連するものであっても、関連しないものでなくてもよい。ＯＳに関連するものでは、本発明のシーケンスプログラムの機能の一部をＯＳが負担するような場合であっても本発明に含まれる。
そして、このソフトウェアは、図８に示すような、フロッピーディスク等の磁気記録媒体８０１や、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ等の光ディスク８０２、ＲＡＭカード８０３、カセットテープ８０４等のコンピュータ読み取り可能な記録媒体に記録することができる。なお、このコンピュータ読み取り可能な記録媒体としては、例えばＬＡＮで構築されたネットワークにおけるサーバーコンピュータのハードディスク等も含まれる。この場合には、サーバーコンピュータのハードディスク等に保存されたシーケンスプログラムを呼び出し、端末コンピュータで実行するような形態も、本発明の実施の形態に含まれる。
【００５５】
そして、このような記録媒体８０１〜８０４によれば、シーケンス制御プログラムの保存、運搬を容易に行うことができる。また、ＰＣ８０５に対象機械８を接続するとともに、この記録媒体を介してシーケンス制御プログラムをパーソナルコンピュータ（ＰＣ）８０５等で実行することによってＰＣ８０５を用いて対象機械８の制御を行うことができる。さらに、ＰＣ８０５上で本発明のシーケンス制御プログラムを実行し、本プログラムに仮想の検出情報を与えることによって、対象機械の動作をシミュレーションすることができる。
【００５６】
【発明の効果】
本発明に係るシーケンス制御装置によれば、プログラマブルシーケンスコントローラにおいて、対象機械からの入力があってから制御信号を出力するまでの応答時間を短縮し、制御処理をより迅速なものとするとともに、コストの低減及び装置の小形化を実現することができる。
【図面の簡単な説明】
【図１】本発明の第１の実施形態に係るプログラマブルシーケンスコントローラの全体構成を示すブロック図である。
【図２】本発明の第１の実施形態に係るプログラマブルシーケンスコントローラの動作を示すフローチャート図である。
【図３】本発明の第１の実施形態に係るプログラマブルシーケンスコントローラの動作を示す説明図であり、（ａ）は本実施形態に係るラダー回路図であり、（ｂ）はシーケンステーブルの内容を示す図である。
【図４】本発明の第１の実施形態に係るプログラマブルシーケンスコントローラの他の動作を示す説明図である。
【図５】本発明の第１の実施形態に係るプログラマブルシーケンスコントローラにおいて、シーケンスプログラムを改変する際の構成を示すブロック図である。
【図６】本発明の第２の実施形態に係るプログラマブルシーケンスコントローラの動作を示す説明図であり、（ａ）は本実施形態に係るラダー回路図であり、（ｂ）は（ａ）中に示すブロック２０１のみを拡大して示した図であり、（ｃ）はシーケンステーブルの内容を示す図である。
【図７】本発明の第２の実施形態に係るプログラマブルシーケンスコントローラの動作を示すフローチャート図である。
【図８】本発明の第１，２の実施形態に係るプログラマブルシーケンスコントローラの動作をプログラム化したソフトウェアを記録したコンピュータ読み取り可能な記録媒体を示す説明図である。
【図９】従来プログラマブルシーケンスコントローラの説明図である。
【符号の説明】
１…入力回路、２…ＣＰＵ、３…出力回路、４…メモリ、５…表示部、６…操作部、７…インターフェース、８…対象機械、８１…検出部、８２…駆動部、１００…プログラマブルシーケンスコントローラ
【図１】
0003662755.tif 000012
【図２】
0003662755.tif 000013
【図３】
0003662755.tif 000014
【図４】
0003662755.tif 000015
【図５】
0003662755.tif 000016
【図６】
0003662755.tif 000017
【図７】
0003662755.tif 000018
【図８】
0003662755.tif 000019
【図９】
0003662755.tif 000020