(57)【特許請求の範囲】
【請求項１】
複数の接点入力情報を１接点について１ビットに対応して記憶する第１メモリ手段と、複数の接点出力情報を１接点について１ビットに対応して記憶する第２メモリ手段と、制御プログラムを読み出して動作するプロセッサ手段からのアドレス指定に基づき前記第１メモリ手段から読み出した情報を前記プロセッサ手段に入力する第１アクセスコントローラ手段と、前記プロセッサ手段からのアドレス指定に基づき前記第２メモリ手段に演算処理結果を書き込む第２アクセスコントローラ手段と、
を具備する接点入出力プログラムコントローラにおいて、
前記第１アクセスコントローラ手段並びに第２アクセスコントローラ手段は、プロセッサの最小演算単位の点数を指定して前記第１メモリ手段並びに第２メモリ手段に対してアクセスするグループアクセス機能と、プロセッサの最小演算単位につき１点を指定して前記第１メモリ手段並びに第２メモリ手段に対してアクセスする１点アクセス機能と、
を具備し、
前記グループアクセス機能並びに前記１点アクセス機能は、前記プロセッサ手段が前記第１メモリ手段並びに第２メモリ手段にアクセスする点数に応じて切り替えられることを特徴とする、接点入出力プログラムコントローラ。
【請求項２】
前記プロセッサ手段がアクセスする接点情報が１点の場合には、前記第１並びに第２アクセスコントローラ手段は、前記１点アクセス機能により前記第１並びに第２メモリ手段にアクセスし、前記プロセッサ手段がアクセスする接点情報が２点以上の場合には、前記第１並びに第２アクセスコントローラ手段は、前記グループアクセス機能により前記第１並びに第２メモリ手段にアクセスすることを特徴とする、請求項１記載の接点入出力プログラムコントローラ。
【請求項３】
前記プロセッサ手段がアクセスする接点情報の点数に応じて、前記第１並びに第２アクセスコントローラ手段が前記第１並びに第２メモリ手段にアクセスする際に、前記１点アクセス機能又は前記グループアクセス機能を選択するアクセス形態指定手段を設けたことを特徴とする請求項１又は２記載の接点入出力プログラムコントローラ。
【請求項４】
前記アクセス形態指定手段が、前記制御プログラムで実現されることを特徴とする請求項３記載の接点入出力プログラムコントローラ。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、工作機械や製造ライン等の制御に用いられる、プロセッサ手段を演算処理手段として有する、接点入出力プログラムコントローラに関する。
ここで、接点入力はセンサ、スイッチ等のオン又はオフの２値情報であり、接点出力はランプ、ブザー等のオン又はオフの状態を制御する２値情報である。
【０００２】
【従来の技術】
図４の機能ブロック図、図５及び図６のメモリマップにより、従来の接点入出力プログラムコントローラを説明する。以下の説明において、各数字の記述は、特に説明がない場合は１０進数、＆Ｈが数字の先頭にある場合は１６進数とする。
【０００３】
また、動作の具体例では、以下のようなプログラムコントローラを仮定する。
（１）３２個の接点入力、３２個の接点出力を持つものとする。
（２）一般に多く用いられるプロセッサは、複数ビットの情報をまとめて取り扱うが、ここではその単位を８ビットとする。
【０００４】
図４の機能ブロック図において、１は接点入出力プログラムコントローラ、２はプログラムコントローラ内のプロセッサ手段、２１は演算用レジスタである。プロセッサ手段２は、制御プログラムを制御プログラムメモリ３から順に読み出し、外部に接続されたセンサ、スイッチ等の入力信号源からの複数の接点入力信号Ｓｉを取り込み、これを演算し、その結果である複数の接点出力信号Ｓｏを、外部に接続されたランプ、ブザー等の制御対象５に出力する。
【０００５】
複数の接点入力信号Ｓｉのデータ（電圧の高／低）は、プログラムコントローラ１内の接点入力コントローラ６における第１メモリ手段６１に記憶される。
又、複数の接点出力信号Ｓｏは、同様にプログラムコントローラ１内の接点出力コントローラ７における第２メモリ手段７１に書き込まれ記憶される。
【０００６】
前記第１メモリ手段６１及び第２メモリ手段７１内のメモリは、接点入力および接点出力1個ごとにメモリの1ビットずつが対応している。
また、プロセッサ手段２から見ると、各々のメモリが、特定のアドレスに割り付けられており、プロセッサ手段は、決められたアドレスを指定出力することで、読み取りたい接点入力のデータを読み取ることができ、また、接点出力へデータを出力することができる。
【０００７】
接点入力コントローラ６において、６２は第１アクセスコントローラ手段であり、プロセッサ手段からのアドレス指定を受けて第１メモリ手段６１のデータを読み出し、読み出しデータをプロセッサ手段２に渡す。同様に接点出力コントローラ７において、７２は第２アクセスコントローラ手段であり、プロセッサ手段２からのアドレス指定を受けて演算結果である書き込みデータを第２メモリ手段７１に書き込む。
【０００８】
３２個の入接点出力、プロセッサ手段２の演算用レジスタ２１を８ビットとした場合、接点入力、出力データを記憶している第１、第２メモリ手段は、プロセッサ手段から見て、図５のようなアドレスに割り付けられている。
【０００９】
例えば、データの入力工程でプロセッサ手段２から指定されたアドレスが＆Ｈ０２であれば、接点入力コントローラ６内の第１アクセスコントローラ手段６１は、接点入力１７〜２４の状態を記憶しているメモリのデータを読み出す。
【００１０】
同様にデータの出力工程でアドレス指定が＆Ｈ１０であれば、接点出力コントローラ７内の第２アクセスコントローラ手段は、接点出力１〜８へ値を出力するメモリへプロセッサ手段からの演算出力データを書き込む。つまり、メモリ手段に対する読み出しも書き込みも、８ビット単位で一括処理される。
【００１１】
ここで、制御プログラムにて行う動作として、接点入力１４の状態を読み取り、その値を接点出力２７に出力する場合を想定すると、プログラムの記述に従い、次の順序で処理を進める。
▲１▼アドレス＆Ｈ０１のメモリのデータを読み出し、プロセッサ手段２内のレジスタに記憶させる。
▲２▼レジスタのビット５以外を０にする（５ビット目が１である＆Ｈ２０と論理積をとる）。
▲３▼レジスタのビット５の内容をビット２に移す（3ビットシフトする）。
▲４▼アドレス＆Ｈ１３のデータのビット２の内容を▲３▼の結果で上書きし、結果をレジスタに格納する。
▲５▼レジスタの値をアドレス＆Ｈ１３に書き込む。
【００１２】
ここで、▲２▼の操作は、同じアドレス内の他のビットのデータを演算に影響させないため、又▲４▼の操作は、同じアドレス内の他のビットの値を変化させないために各々必要となる。これは、広く使用されているプロセッサ手段は、レジスタのあるビットのみを変化させる、あるいはテストを１段階で行うことができないためである。
【００１３】
即ち、接点入出力データ読み書きの一般的な手順は、接点入力１点分のデータを読み出し、演算に利用できる形にするために、
▲１▼接点入力コントローラ６へ読み出しを行い、データをプロセッサ手段内のレジスタへ読み込む。
▲２▼読みこまれたデータのうち、演算に使用しない部分を０にする。
【００１４】
操作を実行すると共に、接点出力１点のみを変更するために、
▲１▼接点出力コントローラ７へ読み出しを行い、変更したい接点のデータをプロセッサ手段内のレジスタへ読みこむ。
▲２▼レジスタの値を更新して接点出力コントローラ７へ書き込む。
操作を実行する必要がある。
【００１５】
【発明が解決しようとする課題】
一般のプロセッサ手段では、８ビット（または１６、３２ビット）等まとまった数値の演算を行うように構成されている。従って、プロセッサ手段内の演算用のレジスタは、８ビット（または１６、３２ビット）の大きさとなっていることが普通であり、そのうち１ビットのみを変更するような演算命令は多く持たない。
【００１６】
ところが、接点入出力プログラムコントローラでは、接点入出力を制御する際には、１ビットのみの値を読み取り判定する、または、１ビットのみを変更したい、といった動作を多く必要とする。
その際に、一般のプロセッサ手段を用いると、前記のように何段階かの作業を行う（複数の命令を実行する）必要がある。これにより、処理時間は長くなり、制御プログラムの量が増える結果となる。
【００１７】
この問題点について、単純な解決策とその問題点を以下に示す。
上述より、接点入力からの読み取りでは、メモリ１ビットのみをレジスタへ読み出すと共に、接点出力への書き込みでは、１ビットのみを書き替えることができれば、処理を短縮することがわかる。
【００１８】
そこで、図６のようなメモリマップ構成が考えられる。このマップの特徴は、プロセッサ手段２の演算単位（ここでは８ビット）毎に、１点の接点入出力をメモリに割り付けた点にある。即ち、各演算単位のビット０にのみ接点入出力情報を割り付け、他の７ビットは使用しない。
【００１９】
このようなメモリマップ構成で、例えば接点入力１４の状態を読み取り、その値を接点出力２７に出力する処理は、
▲１▼アドレス＆００Ｅの内容をレジスタに書きこむ。
▲２▼レジスタの値を＆Ｈ１１Ｂに書きこむ。
のように、２段階の処理でよく。図５のメモリマップ場合より処理ステップを少なくできる。
【００２０】
ところが、この方法には大きな問題点がある。即ち、１点のみの参照または変更を行う際には高速であるが、制御の内容によっては、３２点すべての接点入力の値を読み出す、あるいは３２点の全ての接点出力を０にしたいという処理を行う場合（非常停止処理を実行し、すべての接点出力を同時に０にして外部機器を停止したい場合等）では処理時間が増加する。
【００２１】
即ち、図６のメモリマップ構成では、読み出し処理を３２回、書き込み処理を３２回行わなければならないが、図５のメモリマップ構成では、読み出し処理は４回、書込み処理は４回で処理は完了する。つまり、書き込みまたは読み出しに必要な手順は約４倍となり、処理時間も多くかかることになる。
【００２２】
これは、図５のメモリマップ構成から図６の構成に変更した場合に、１点のみの処理手順（時間）が約１／２となることに比べると、大きな処理時間増となる。よって、総合的には図５の構成が、比較的望ましかったと考えることができる。
【００２３】
本発明の目的は、従来技術である図５のメモリマップ構成の利点、その変形である図６の利点を共に生かすことにより、接点入出力プログラムコントローラ内での接点入出力データの読み出し、書き込み動作の手順を削減し、処理時間短縮と制御プログラム容量削減を実現することにある。
【００２４】
このような目的を達成するために。本発明のうち請求項１記載発明の特徴は、
複数の接点入力情報を１接点について１ビットに対応して記憶する第１メモリ手段と、複数の接点出力情報を１接点について１ビットに対応して記憶する第２メモリ手段と、制御プログラムを読み出して動作するプロセッサ手段からのアドレス指定に基づき前記第１メモリ手段から読み出した情報を前記プロセッサ手段に入力する第１アクセスコントローラ手段と、前記プロセッサ手段からのアドレス指定に基づき前記第２メモリ手段に演算処理結果を書き込む第２アクセスコントローラ手段と、
を具備する接点入出力プログラムコントローラにおいて、
前記第１アクセスコントローラ手段並びに第２アクセスコントローラ手段は、プロセッサの最小演算単位の点数を指定して前記第１メモリ手段並びに第２メモリ手段に対してアクセスするグループアクセス機能と、プロセッサの最小演算単位につき１点を指定して前記第１メモリ手段並びに第２メモリ手段に対してアクセスする１点アクセス機能と、
を具備し、
前記グループアクセス機能並びに前記１点アクセス機能は、前記プロセッサ手段が前記第１メモリ手段並びに第２メモリ手段にアクセスする点数に応じて切り替えられる点にある。
【００２５】
請求項２記載発明の特徴は、
前記プロセッサ手段がアクセスする接点情報が１点の場合には、前記第１並びに第２アクセスコントローラ手段は、前記１点アクセス機能により前記第１並びに第２メモリ手段にアクセスし、前記プロセッサ手段がアクセスする接点情報が２点以上の場合には、前記第１並びに第２アクセスコントローラ手段は、前記グループアクセス機能により前記第１並びに第２メモリ手段にアクセスする点にある。
【００２６】
請求項３記載発明の特徴は、
前記プロセッサ手段がアクセスする接点情報の点数に応じて、前記第１並びに第２アクセスコントローラ手段が前記第１並びに第２メモリ手段にアクセスする際に、前記１点アクセス機能又は前記グループアクセス機能を選択するアクセス形態指定手段を設けた点にある。
【００２７】
請求項４記載発明の特徴は、
前記アクセス形態指定手段が、前記制御プログラムで実現される点にある。
【００２８】
【発明の実施の形態】
以下本発明の実施態様を、図面を用いて説明する。図１は本発明を適用した接点入出力プログラムコントローラの一例を示す機能ブロック図であり、図４の従来構成で説明した要素と同一要素には同一符号を付して説明を省略する。
【００２９】
本発明による接点入出力プログラムコントローラの基本構成は、図４の構成と同一であるが、第１アクセスコントローラ６２及び第２アクセスコントローラ７２の機能に特徴がある。
【００３０】
即ち、１個の接点入力または接点出力に対応する接点入力および出力コントローラ内のメモリは、図４と同様に１ビットであるが、プロセッサ手段２からのメモリ手段へのアクセス形態を、２種のアドレスから読み出し及び書き込みを可能としている。
【００３１】
プロセッサ手段２から見た場合のメモリマップのアドレス割付の一例を図２に示す。アドレス＆Ｈ０００〜０１３は、図５で説明したメモリマップと同一であり、各接点の状態が、８点毎にまとまって割り付けられている部分である。＆Ｈ１００〜＆Ｈ２３１は、図６で説明したメモリマップと同一であり、プロセッサの演算単位毎には１点のみが割り付けられている部分である。
【００３２】
プロセッサ手段２側から見たこれら２種類のメモリマップへのアクセス形態の切り替えは、接点入力コントローラ６内の第１アクセスコントローラ手段６１、接点出力コントローラ７内の第２アクセスコントローラ手段７１の機能を従来と変更することで、実現する。
【００３３】
ここで、第１メモリ手段６１内にあり、接点入力信号Ｓｉのｍ番の状態を記憶している１ビットのメモリを［メモリｍ］とする。第１アクセスコントローラ手段６２には、［メモリｍ］に対応している、アドレスを２つ持たせ、これを［アドレスｘ（ｍ）］、［アドレスｙ（ｍ）］とする。
【００３４】
プロセッサ手段２から、［アドレスｘ（ｍ）］が指定された場合には、第１アクセスコントローラ手段６２は、［メモリｍ］の値と共に、プロセッサの演算処理単位分だけ、［メモリｍ］の前後を含む８ビットのグループのメモリの値を読み出してプロセッサ手段２に渡す。
【００３５】
一方、［アドレスｙ（ｍ）］がプロセッサ手段２から指定された場合には、第１アクセスコントローラ手段６２は、［メモリｍ］の１点の値のみを読み出してプロセッサ手段２に渡す。
【００３６】
同様に、第２メモリ手段７１内にあり、接点出力信号Ｓｏのｎ番の状態を記憶している１ビットのメモリを［メモリｎ］とする。第２アクセスコントローラ手段７２には、［メモリｎ］に対応している、アドレスを２つ持たせ、これを［アドレスｘ（ｎ）］、［アドレスｙ（ｎ）］とする。
【００３７】
プロセッサ手段２から、［アドレスｘ（ｎ）］が指定された場合には、第２アクセスコントローラ手段７２は、［メモリｎ］の値と共に、プロセッサの演算処理単位分だけ、［メモリｎ］の前後を含む８ビットのグループのメモリの値を読み出してプロセッサ手段２からの演算結果でこれを書き換える。
【００３８】
一方、［アドレスｙ（ｎ）］がプロセッサ手段２から指定された場合には、第２アクセスコントローラ手段７２は、［メモリｎ］の１点の値のみを読み出してプロセッサ手段２の演算結果でこれを書き換える。
【００３９】
図２のメモリマップでは、プロセッサ手段２から、例えば接点入力３の状態を読み出したい場合には、アドレス＆Ｈ０００とアドレス＆Ｈ１０２のどちらへアクセスしても、その値を読み出すことができる。同様に、接点出力３１を書き替えたい場合には、プロセッサ手段はアドレス＆Ｈ０１３と＆Ｈ２３０のどちらへアクセスしても、書き替えを行うことができる。
【００４０】
本発明のプログラムコントローラにおいて、制御プログラムにより接点入力、出力を演算に使用する形態は、以下のようなものが考えられる。
（１）１個の接点入力の状態を演算にて使用する。
この場合は、接点入力の状態を示すメモリが、プロセッサの演算単位毎に１点ずつ配置されたアドレス（図２の例では、＆Ｈ１００〜＆Ｈ１３１を）読み出す。
【００４１】
（２）１個のみ接点出力を変更する。
この場合は、接点出力の状態を変更させるメモリが、プロセッサの演算単位毎に１点ずつ配置されたアドレス（図２の例では、＆Ｈ２００〜＆Ｈ２３１）へ演算結果を書き込む。
【００４２】
（３）８個の接点入力の状態を演算にて使用する。
この場合は、接点入力の状態を示すメモリが、まとまって配置されたアドレス（図５の例では、＆Ｈ０００〜＆Ｈ００３）を読み出す。
【００４３】
（４）８個の接点出力を変更する。
この場合は、接点出力の状態を変更させるメモリが、まとまって配置されたアドレス（          図２の例では、＆Ｈ０００〜＆Ｈ０１３）へ数値を書き込む。
【００４４】
前記４つの動作のうち、（３）及び（４）は、従来技術と同じで手順にて実行できる。（１）及び（２）については、従来技術では、２段階であった処理手順が１段階のみであり、処理手順が短縮されている。
【００４５】
以上により、プログラムコントローラでの接点入力および接点出力を用いた制御処理について、制御プログラムの実行時間の短縮とプログラム容量の削減を実現できる。
【００４６】
以上説明した実施例では、プロセッサ手段がアクセスする接点情報が１点の場合には、１点アクセス機能によりメモリ手段にアクセスし、プロセッサ手段がアクセスする接点情報が２点以上の場合には、グループアクセス機能によりメモリ手段にアクセスする場合を示したが、メモリ手段にアクセスする際に、１点アクセス機能又はグループアクセス機能を選択するアクセス形態指定手段を設けることもできる。
【００４７】
このアクセス形態指定手段により、アクセスデータの点数に応じて処理時間が最も短くなるアクセス形態を選択できる。この選択アルゴリズムはアプリケーションによって異なるので、アクセス形態指定機能は、プロセッサ手段のＯＳではなく、制御プログラム内で実現されることが好ましい。
【００４８】
図３は、図１で説明した本発明の接点入出力プログラムコントローラコントローラ１（点線のブロック１）を、ワンチップの集積回路にカスタム化したものを組み込んだ汎用プログラムコントローラ８の例を示す。
【００４９】
２´は、汎用プロセッサ手段であり、接点入出力信号の処理の他、通信部９を介してタッチパネル等のマンマシンインターフェイス１０と通信し、アナログデータ入出力部１１を介して温度センサ、モータ等のアナログ機器との通信、制御を実行する。
【００５０】
１３は、入力信号源４と第１メモリ手段６１との間に挿入された絶縁回路、１４は、第２メモリ手段７１と制御対象５との間に挿入された絶縁回路であり、汎用プログラムコントローラ８と周辺機器との直流レベルシフトを容易にしている。
【００５１】
このように汎用プログラムコントローラでは、本発明を適用した接点入出力プログラムコントローラ部分をワンチップ化することで、論理の複雑化によるコストや大型化への影響を小さくすることができる。
【００５２】
【発明の効果】
以上説明したことから明らかなように、本発明によれば、例えば接点入力端子１４の状態を読み取り、その値を接点出力２７に出力する制御プログラム処理は、
▲１▼アドレス＆Ｈ１０Ｅのメモリのデータを読み出し、プロセッサ手段内のレジスタに読みこむ。
▲２▼レジスタの値をアドレス＆Ｈ２１Ｂに書き込む。
のように、従来技術では５段階の操作を必要としていた処理手順を、２段階のみに短縮することができ、処理時間の短縮と制御プログラム容量の削減を実現できる。
【００５３】
前記のように、接点入力１４の状態を読み取り、その値を接点出力２７に出力する制御プログラムの処理において、接点入力１４に、工作機械の処理完了出力が接続され、接点出力２７に次の処理を行う、工作機械の処理開始命令入力が接続されていることを考えると、前段処理の完了から、次の処理の開始までの無駄時間を短縮することができる。
【００５４】
処理ステップの削減により、制御プログラムを記憶させるメモリ容量を削減することができ、接点入出力プログラムコントローラの小型化の要請に貢献することができる。
【００５５】
従来装置に比較して第１及び第２アクセスコントローラ手段６２及び７２の論理構造が複雑になるが、第１及び第２メモリ手段のメモリ容量は、従来技術と同じであり、その影響は大きくない。
【図面の簡単な説明】
【図１】本発明を適用した接点入出力プログラムコントローラの一例を示す機能ブロック図である。
【図２】本発明接点入出力プログラムコントローラのプロッセッサ手段がアクセスするメモリマップ図である。
【図３】集積化された接点入出力プログラムコントローラを有する汎用プログラムコントローラの一例を示す機能ブロック図である。
【図４】従来の接点入出力プログラムコントローラの構成を示す機能ブロック図である。
【図５】プロセッサ手段の演算単位で接点入力出力データをグループ記憶する従来のメモリマップ図である。
【図６】プロセッサ手段の演算単位で接点入力出力データを１点記憶する従来のメモリマップ図である。
【符号の説明】
１  接点入出力プログラムコントローラ
２  プロセッサ手段
２１  演算用レジスタ
３  制御プログラムメモリ
４  入力信号源
５  制御対象
６  接点入力コントローラ
６１  第１メモリ手段
６２  第１アクセスコントローラ手段
７  接点出力コントローラ
７１  第２メモリ手段
７２  第２アクセスコントローラ手段
【図１】
0003755653.tif 000002
【図２】
0003755653.tif 000003
【図３】
0003755653.tif 000004
【図４】
0003755653.tif 000005
【図５】
0003755653.tif 000006
【図６】
0003755653.tif 000007