(57)【要約】【課題】大幅なコストアップを防ぎながら出力用のチャンネル数を増やす。【解決手段】コントロールユニット１と増設ユニット２を接続するシステムバスに割り付けられた２つのアドレスに対して各々書き込まれる書込データＷＹ１，ＷＹ２にはチャンネル指定データＨＤが設けられる。制御部４及び出力回路ブロック５１〜５４からなる出力手段が、書込データＷＹ１，ＷＹ２に含まれる制御データＣＤに応じたアナログ信号をチャンネル指定データＨＤで指定されたチャンネルＣＨ０〜ＣＨ３から出力する。故に、システムバス３に割り付けられるアドレスの数を従来と同様に２つのままとして大幅なコストアップを防ぎながら、増設ユニット２におけるアナログ出力のチャンネル数を２つから４つに増やすことができる。【選択図】        図１
2005004654.tif 000002
【特許請求の範囲】
【請求項１】
予め与えられるプログラムを実行して負荷機器をシーケンシャルに制御するための制御データを出力する演算処理手段を具備したコントロールユニットと、前記演算処理手段から与えられる制御データに応じた所定信号を負荷機器に対して出力する出力手段を具備した増設ユニットとを備え、コントロールユニットと増設ユニットとの間がシステムバスで接続されたプログラマブルコントローラにおいて、複数の負荷機器に対して各々前記信号を出力可能な複数のチャンネルが前記出力手段に設けられ、該チャンネルよりも少ない数のアドレスが前記システムバスに割り付けられ、前記演算処理手段が前記アドレスに対して書き込む書込データを、複数ビットの前記制御データ並びに前記チャンネルを指定するチャンネル指定ビットを含むデータとし、前記出力手段は、書込データに含まれる制御データに応じた前記信号を前記チャンネル指定ビットで指定されたチャンネルから出力することを特徴とするプログラマブルコントローラ。
【請求項２】
前記チャンネル指定ビットを複数ビットとしたことを特徴とする請求項１記載のプログラマブルコントローラ。
【請求項３】
前記チャンネル指定ビットはそれぞれのチャンネルを指定する値の他に何れのチャンネルも指定しない初期値を含み、前記演算処理手段は、電源投入時、電源断時並びに前記プログラムの実行停止時における書込データのチャンネル指定ビットを前記初期値に設定することを特徴とする請求項２記載のプログラマブルコントローラ。
【請求項４】
複数のアドレスが前記システムバスに割り付けられ、各アドレスに対して書き込む書込データに前記チャンネル指定ビットを含むことを特徴とする請求項１又は２又は３記載のプログラマブルコントローラ。
【請求項５】
前記書込データには前記制御データの正負を示す符号が含まれるとともに各ビット値の補数で負の値が表され、前記出力手段は、前記符号が正の値を示している場合に前記チャンネル指定ビットを全て０とし、負の値を示している場合に前記チャンネル指定ビットを全て１とすることを特徴とする請求項１〜４の何れかに記載のプログラマブルコントローラ。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、プログラマブルコントローラに関するものである。
【０００２】
【従来の技術】
プログラマブルコントローラはユーザが任意に作成したプログラムに従って負荷機器の動作をシーケンシャルに制御する場合に用いられ、通常上記ユーザプログラムを実行する演算処理手段としてのＣＰＵを具備したコントロールユニットと、このコントロールユニットから与えられる制御データを負荷機器に対して出力する出力手段を具備した出力ユニットなどの増設ユニットにユニット化して構成され、コントロールユニットと増設ユニットとの間がシステムバスで接続されている（特許文献１参照）。
【０００３】
例えば、コントロールユニットから与えられるディジタルの制御データをアナログの制御信号にＤ／Ａ変換して負荷機器に出力する増設ユニット（Ｄ／Ａ変換ユニット）は、コントロールユニットからシステムバスに割り付けられているアドレス毎に与えられるディジタルデータが書き込まれ、該書込データに含まれる制御データを各々のチャンネル毎に設けられた出力回路ブロックでアナログデータに変換して負荷機器に出力する構成となっている。上記従来の増設ユニットは、例えば２つのチャンネルを具備し、コントロールユニットから各チャンネルに対してはシステムバスに割り付けられた２つのアドレスの一方を指定して制御データを含むディジタルの書込データが書き込まれていた。ここで、書込データは１６ビットを１ワードとし、１ワードを１つのチャンネルの出力データとして割り当てていた。
【０００４】
【特許文献１】
特開平１０−７８８０８号公報（第３頁、第１図）
【０００５】
【発明が解決しようとする課題】
ところで上記従来の増設ユニットでは、アナログ出力のチャンネル数を増やそうとすれば、個々のチャンネルに対応してシステムバスに割り付けられるアドレスの数も増やす必要があるために大幅なコストアップになっていた。
【０００６】
本発明は上記事情に鑑みて為されたものであり、その目的は、大幅なコストアップを防ぎながら出力用のチャンネル数を増やすことができるプログラマブルコントローラを提供することにある。
【０００７】
【課題を解決するための手段】
請求項１の発明は、上記目的を達成するために、予め与えられるプログラムを実行して負荷機器をシーケンシャルに制御するための制御データを出力する演算処理手段を具備したコントロールユニットと、前記演算処理手段から与えられる制御データに応じた所定信号を負荷機器に対して出力する出力手段を具備した増設ユニットとを備え、コントロールユニットと増設ユニットとの間がシステムバスで接続されたプログラマブルコントローラにおいて、複数の負荷機器に対して各々前記信号を出力可能な複数のチャンネルが前記出力手段に設けられ、該チャンネルよりも少ない数のアドレスが前記システムバスに割り付けられ、前記演算処理手段が前記アドレスに対して書き込む書込データを、複数ビットの前記制御データ並びに前記チャンネルを指定するチャンネル指定ビットを含むデータとし、前記出力手段は、書込データに含まれる制御データに応じた前記信号を前記チャンネル指定ビットで指定されたチャンネルから出力することを特徴とする。
【０００８】
この発明によれば、システムバスに割り付けられるアドレスの数を増やさずに大幅なコストアップを防ぎながら出力用のチャンネル数を増やすことができる。
【０００９】
請求項２の発明は、請求項１の発明において、前記チャンネル指定ビットを複数ビットとしたことを特徴とする。
【００１０】
この発明によれば、請求項１の発明と同様の作用を奏する。
【００１１】
請求項３の発明は、請求項２の発明において、前記チャンネル指定ビットはそれぞれのチャンネルを指定する値の他に何れのチャンネルも指定しない初期値を含み、前記演算処理手段は、電源投入時、電源断時並びに前記プログラムの実行停止時における書込データのチャンネル指定ビットを前記初期値に設定することを特徴とする。
【００１２】
この発明によれば、電源投入時や電源断時あるいはプログラムの実行停止時に増設ユニットの何れかの出力手段から意図しない信号が出力されるのを防ぐことができる。
【００１３】
請求項４の発明は、請求項１又は２又は３の発明において、複数のアドレスが前記システムバスに割り付けられ、各アドレスに対して書き込む書込データに前記チャンネル指定ビットを含むことを特徴とする。
【００１４】
この発明によれば、請求項１又は２又は３の発明と同様の作用を奏する。
【００１５】
請求項５の発明は、請求項１〜４の何れかの発明において、前記書込データには前記制御データの正負を示す符号が含まれるとともに各ビット値の補数で負の値が表され、前記出力手段は、前記符号が正の値を示している場合に前記チャンネル指定ビットを全て０とし、負の値を示している場合に前記チャンネル指定ビットを全て１とすることを特徴とする。
【００１６】
この発明によれば、チャンネル指定ビットの値を考慮せずに書込データを取り扱うことができるから、出力手段における処理が簡素化できる。
【００１７】
【発明の実施の形態】
図１に本発明の一実施形態を示す。本実施形態のプログラマブルコントローラは、予め与えられるプログラムを実行して負荷機器をシーケンシャルに制御するための制御データを出力する演算処理手段たるＣＰＵ（図示せず）を具備したコントロールユニット１と、コントロールユニット１のＣＰＵから与えられる制御データに応じた所定信号を負荷機器に対して出力する出力手段を具備した増設ユニット２とを備え、コントロールユニット１と増設ユニット２との間がシステムバス３で接続される。
【００１８】
本実施形態における増設ユニット２は、コントロールユニット１から与えられるディジタルの制御データをアナログの制御信号にＤ／Ａ変換して負荷機器に出力するＤ／Ａ変換ユニットであって、ＣＰＵからなり、システムバス３によってコントロールユニット１のＣＰＵと接続される制御部４と、コントロールユニット１から制御部４に与えられたディジタルの制御データをチャンネル毎にそれぞれアナログデータに変換して出力するＤ／Ａ変換回路を主構成要素とし、該アナログデータに対応するアナログ出力（電圧又は電流）を各チャンネルから負荷機器へ供給する４つの出力回路ブロック５１〜５４とで出力手段が構成されている。なお、出力回路ブロック５１〜５４は、それぞれ異なるアナログ出力を負荷機器に供給できるものである。
【００１９】
ここで、システムバス３には従来例と同様に２つのアドレスが割り付けられており、コントロールユニット１からは同一スキャン内において各アドレスに対してそれぞれ１ワードの書込データが書き込まれる。図２は２つのアドレスに対して各々書き込まれる書込データのデータフォーマットを示しており、各アドレスに対して１６ビットを１ワードとする書込データＷＹ１，ＷＹ２は、１２ビットの制御データＣＤと、１ビットの符号データＦＤと、２ビットのチャンネル指定データ（ビット）ＨＤとで構成される。出力回路ブロック５１〜５４では、−１０Ｖ〜０Ｖ〜＋１０Ｖの電圧出力を出力するものであって、例えば、制御データＣＤの値（１０進数）が−２０００，−１０００，０，＋１０００，＋２０００のときに各々−１０Ｖ，−５Ｖ，０Ｖ，＋５Ｖ，＋１０Ｖのアナログ信号を出力する。また、マイナスの出力を示す制御データＣＤは絶対値が同一であるプラスの出力を示すデータの補数で表される。例えば、−１０００（１０進数）は＋１０００（１０進数）を示す００１１１１１０１０００（２進数）の補数１１０００００１１０００（２進数）によって表される。そして、符号データＦＤが０であれば制御データＣＤはプラス、符号データＦＤが１であれば制御データＣＤはマイナスと判別される。
【００２０】
次に本発明の要旨であるチャンネル指定データＨＤについて詳しく説明する。チャンネル指定データＨＤは２ビットであるから、００，０１，１０，１１（何れも２進数）の４通りの値を取り得ることになる。そして本実施形態においては、チャンネル指定データＨＤが０１（２進数）のときは一方の書込データＷＹ１を出力回路ブロック５１のチャンネル（以下、「ＣＨ０」と表記する）、他方の書込データＷＹ２を出力回路ブロック５２のチャンネル（以下、「ＣＨ１」と表記する）にそれぞれ対応させるとともに、チャンネル指定データＨＤが１０（２進数）のときは一方の書込データＷＹ１を出力回路ブロック５３のチャンネル（以下、「ＣＨ２」と表記する）、他方の書込データＷＹ２を出力回路ブロック５４のチャンネル（以下、「ＣＨ３」と表記する）にそれぞれ対応させている。
【００２１】
すなわち、増設ユニット２の制御部４では、チャンネル指定データＨＤによって各書込データＷＹ１，ＷＹ２に含まれる制御データＣＤの出力先であるチャンネルＣＨ０〜ＣＨ３（出力回路ブロック５１〜５４）を判別しており、チャンネル指定データＨＤが０１（２進数）の場合は書込データＷＹ１，ＷＹ２をそれぞれチャンネルＣＨ０に対応する出力回路ブロック５１と、チャンネルＣＨ１に対応する出力回路ブロック５２に与え、チャンネル指定データＨＤが１０（２進数）の場合は書込データＷＹ１，ＷＹ２をそれぞれチャンネルＣＨ２に対応する出力回路ブロック５３と、チャンネルＣＨ３に対応する出力回路ブロック５４に与えるのである。但し、各書込データＷＹ１，ＷＹ２に重複して割り当てられているチャンネルＣＨ０とＣＨ２及びＣＨ１とＣＨ３を同一スキャン内で書き込むことはできないが、これら以外のチャンネルの組み合わせ（例えば、ＣＨ０とＣＨ１など）については同一スキャン内で書き込むことができる。
【００２２】
而して、本実施形態ではコントロールユニット１からシステムバス３を介して増設ユニット２の制御部４に書き込まれる書込データＷＹ１，ＷＹ２にチャンネル指定データＨＤを設け、制御部４及び出力回路ブロック５１〜５４からなる出力手段が、書込データＷＹ１，ＷＹ２に含まれる制御データＣＤに応じたアナログ信号をチャンネル指定データＨＤで指定されたチャンネルＣＨ０〜ＣＨ３から出力するようにしているため、システムバス３に割り付けられるアドレスの数を従来と同様に２つのままとして大幅なコストアップを防ぎながら、増設ユニット２におけるアナログ出力のチャンネル数を２つから４つに増やすことができる。
【００２３】
ここで、コントロールユニット１のＣＰＵでは、電源投入時、電源断時並びにプログラムの実行停止時における書込データＷＹ１，ＷＹ２のチャンネル指定データＨＤを、何れのチャンネルＣＨ０〜ＣＨ３にも割り当てられていない初期値である００（２進数）に設定するようにしている。これにより、電源投入時や電源断時あるいはプログラムの実行停止時には増設ユニット２の制御部４からは何れのチャンネルＣＨ０〜ＣＨ３（出力回路ブロック５１〜５４）に対しても制御データＣＤが出力されることがなく、意図しないアナログ信号が出力されるのを防ぐことができる。
【００２４】
ところでコントロールユニット１及び増設ユニット２では、１２ビットの制御データＣＤを扱う際に残りの４ビットを含めた１６ビットを１ワードとする書込データＷＹ１，ＷＹ２で扱う方が処理が簡単になることから、制御データＣＤ以外の４ビットは符号データＦＤと同じ値、すなわち、制御データＣＤがプラスの値であれば００００（２進数）、制御データＣＤがマイナスの値であれば１１１１（２進数）とすることが望ましい。しかしながら、本実施形態では制御データＣＤ以外の４ビットの内の２ビットをチャンネル指定データＨＤとして使用するため、チャンネル指定データＨＤが０１又は１０（２進数）に設定された書込データＷＹ１，ＷＹ２から正しい制御データＣＤが読み取れない可能性がある。例えば、−１０００（１０進数）の制御データＣＤを含む書込データは＋１０００（１０進数）の制御データＣＤを含む書込データ００００００１１１１１０１０００（２進数）の補数として１１１１１１０００００１１０００（２進数）と表されるが、これをチャンネルＣＨ０又はＣＨ１に対する書込データとするためにチャンネル指定データＨＤを０１（２進数）に設定した書込データ１１０１１１０００００１１０００（２進数）は、増設ユニット２の制御部４で−９１９２（１０進数）という誤った値と判断されてしまう可能性がある。
【００２５】
そこで本実施形態においては、増設ユニット２の制御部４がチャンネル指定データＨＤから指定されたチャンネルＣＨ０〜ＣＨ３を判断した後に書込データＷＹ１，ＷＹ２の符号データＦＤが０の場合にチャンネル指定データＨＤのビットを全て０とし、１の場合にチャンネル指定データＨＤのビットを全て１とするように書込データＷＹ１，ＷＹ２を変更することによって処理の簡素化を図っている。
【００２６】
【発明の効果】
請求項１の発明によれば、システムバスに割り付けられるアドレスの数を増やさずに大幅なコストアップを防ぎながら出力用のチャンネル数を増やすことができる。
【００２７】
請求項３の発明によれば、電源投入時や電源断時あるいはプログラムの実行停止時に増設ユニットの何れかの出力手段から意図しない信号が出力されるのを防ぐことができる。
【００２８】
請求項５の発明によれば、チャンネル指定ビットの値を考慮せずに書込データを取り扱うことができるから、出力手段における処理が簡素化できる。
【図面の簡単な説明】
【図１】本発明の実施形態を示すブロック図である。
【図２】同上における書込データのデータフォーマットである。
【符号の説明】
１  コントロールユニット
２  増設ユニット
３  システムバス
４  制御部
５１〜５４  出力回路ブロック
【図１】
2005004654.tif 000003
【図２】
2005004654.tif 000004