JP2016062254A - プログラマブルコントローラ、プログラマブルコントローラの制御方法 - Google Patents

プログラマブルコントローラ、プログラマブルコントローラの制御方法 Download PDF

Info

Publication number
JP2016062254A
JP2016062254A JP2014189170A JP2014189170A JP2016062254A JP 2016062254 A JP2016062254 A JP 2016062254A JP 2014189170 A JP2014189170 A JP 2014189170A JP 2014189170 A JP2014189170 A JP 2014189170A JP 2016062254 A JP2016062254 A JP 2016062254A
Authority
JP
Japan
Prior art keywords
unit
signal
slave
terminal
master
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2014189170A
Other languages
English (en)
Other versions
JP6482800B2 (ja
Inventor
英毅 野田
Hideki Noda
英毅 野田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Industrial Devices SUNX Co Ltd
Original Assignee
Panasonic Industrial Devices SUNX Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Industrial Devices SUNX Co Ltd filed Critical Panasonic Industrial Devices SUNX Co Ltd
Priority to JP2014189170A priority Critical patent/JP6482800B2/ja
Publication of JP2016062254A publication Critical patent/JP2016062254A/ja
Application granted granted Critical
Publication of JP6482800B2 publication Critical patent/JP6482800B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Programmable Controllers (AREA)

Abstract

【課題】容易にユニットを増設すること。【解決手段】第1のユニットブロック2aは、CPUユニット10と、複数のI/Oユニット11と、エンドユニット(終端ユニット)12とを備えている。第1のユニットブロック2aは、第2のユニットブロック2bを接続するための増設ユニット21を備えている。第2〜第4のユニットブロック2b〜2dは、増設ユニット21,22,23と、複数のI/Oユニット11と、エンドユニット12とから構成されている。増設ユニット20は接続ケーブル31を介して増設ユニット21に接続される。増設ユニット21は接続ケーブル32を介して増設ユニット22に接続され、増設ユニット22は接続ケーブル33を介して増設ユニット23に接続される。【選択図】図1

Description

本発明は、プログラマブルコントローラ、プログラマブルコントローラの制御方法に関する。
プログラマブルコントローラは、たとえば工場などにおいて、製造装置などの外部機器をシーケンス制御する。このようなプログラマブルコントローラは、外部機器が接続される複数の入出力ユニット(I/Oユニット)と、複数の入出力ユニットを制御する制御ユニット(CPUユニット)を有している。そして、入出力ユニットが増設可能なプログラマブルコントローラが提案されている(たとえば、特許文献1参照)。たとえば、ビルディングブロックタイプのプログラマブルコントローラは、制御ユニットと入出力ユニットが、たとえばマザーボード等のバックプレーンを介して互いに接続される。また、スタッキング(積み重ね)タイプのプログラマブルコントローラは、接続コネクタが隣接するユニットに直接接続される。
特開2011−70444号公報
ところで、上記のようなプログラマブルコントローラでは、制御ユニットに接続可能な入出力ユニットの数が制限されている場合がある。このような場合、制御する外部機器に応じて容易に入出力ユニットの増設することが難しい。また、工場などの使用環境において、ユニット間の通信信号に混入するノイズによって誤動作が生じるおそれがある。また、信号に混入するノイズは、ユニット間の高速な通信を妨げる要因となる。
本発明は、上記課題を解決するためになされたものであって、その目的は、ユニットの増設を容易にし、対ノイズ性能に優れ高速な信号伝送が可能なプログラマブルコントローラを提供することにある。
上記課題を解決するプログラマブルコントローラは、制御ユニットと第1の周辺ユニットとマスタユニットとを含む基本ブロックと、スレーブユニットと第2の周辺ユニットとを含む増設ブロックと、前記マスタユニットと前記スレーブユニットとを接続する接続ケーブルと、を備え、前記制御ユニットは、前記第1の周辺ユニットを制御するとともに、前記マスタユニットと前記スレーブユニットを介して前記第2の周辺ユニットを制御し、前記マスタユニットは、前記スレーブユニットに差動信号を送信する複数の第1送信回路と、前記制御ユニットから出力される前記第2の周辺ユニットを指定するアドレス信号を含む複数ビットの制御信号を所定ビット単位で分割した複数のブロックデータを、前記複数の第1送信回路を用いて前記スレーブユニットに順次送信するマスタ制御回路を備え、前記スレーブユニットは、前記差動信号を受信する複数の第1受信回路と、前記第1受信回路にて順次受信した前記複数のブロックデータに基づいて複数ビットの制御信号を生成して前記第2の周辺ユニットに出力するスレーブ制御回路を備える。
この構成によれば、マスタユニットとスレーブユニットを用いることで、スレーブユニットに連結された第2の周辺ユニットを制御ユニットにより制御することが可能となる。このため、制御ユニットにより制御するユニットを容易に増設される。そして、制御信号を所定ビット単位で分割したブロックデータを伝送することにより、接続ケーブルの芯数よりビット数が多いデータが容易に伝送される。また、差動信号を用いてマスタユニットとスレーブユニットの間の信号を伝送することにより、ノイズ等の混入による誤動作を抑制した高速な信号伝送が可能となる。
上記のプログラマブルコントローラにおいて、前記制御ユニットは、前記第2の周辺ユニットに対するライトデータを出力し、前記マスタ制御回路は、前記アドレス信号を受信して前記制御ユニットに対して第1レベルのレディ信号を出力し、前記制御信号に応じた複数のブロックデータを送信した後、前記ライトデータを前記所定ビット単位で分割した複数のブロックデータを前記複数の第1送信回路を用いて前記スレーブユニットに順次送信し、前記スレーブ制御回路は、前記第1受信回路にて順次受信した複数のブロックデータに基づいてライトデータを生成し、前記第2の周辺ユニットに出力した後、オペレーション信号を出力し、前記マスタ制御回路は、前記オペレーション信号に基づいて第2レベルの前記レディ信号を出力し、前記制御ユニットは、前記レディ信号が第1レベルの期間、待機状態となることが好ましい。
この構成によれば、マスタユニット及びスレーブユニットを介して制御ユニットに接続される第2の周辺ユニットを動作させるときに、基本ブロックの動作を待機状態とすることにより処理の同期を保つことが可能となる。
上記のプログラマブルコントローラにおいて、前記マスタユニットは、前記マスタ制御回路の動作電圧より高い第2電圧が供給される第2送信回路を備え、前記第2送信回路は、前記マスタ制御回路の出力信号に基づいて前記第2電圧に基づいたレベルのシングルエンド信号を前記スレーブユニットに送信し、前記スレーブユニットは、前記第2電圧に基づく基準電圧と前記シングルエンド信号とを比較して受信信号を出力する第2受信回路を備えることが好ましい。
この構成によれば、シングルエンド信号を伝送することにより、接続ケーブルの芯数の増加が抑制される。また、動作電圧より高い第2電圧のシングルエンド信号を伝送することにより、接続ケーブルにおける電圧降下やノイズの混入による誤動作が抑制される。
上記のプログラマブルコントローラにおいて、複数の前記増設ブロックを備え、前記マスタユニットと複数の前記増設ブロックの前記スレーブユニットは、複数の前記接続ケーブルにより直列に接続されることが好ましい。
この構成によれば、マスタユニットに対して直列に接続された複数のスレーブユニットそれぞれに第2の周辺ユニットを接続することにより、制御ユニットにより制御するユニットを容易に増設される。
上記のプログラマブルコントローラにおいて、前記マスタユニットは、前記スレーブユニットに差動のクロック信号を送信し、前記スレーブユニットは、前記接続ケーブルが接続される前記マスタユニット側の第1コネクタと、前記マスタユニットと逆側の第2コネクタと、前記クロック信号を受信する第3受信回路とを有し、前記第1コネクタの第1の端子は第1抵抗によりプルダウンされ、前記スレーブ制御回路は、前記第2コネクタにおいて、前記第1コネクタの第1の端子に対応する第2の端子のレベルにより自ユニットが末端か否かを判定し、末端と判定した場合に、前記第3受信回路の入力端子を終端抵抗により終端する。
この構成によれば、末端のスレーブユニットのスレーブ制御回路は、クロック信号を受信する第3受信回路の入力端子を終端抵抗により終端する。これにより、マスタユニットに接続するスレーブユニットの数が容易に変更され、制御ユニットにより制御するユニットの数が容易に変更される。また、信号の反射によるノイズの発生が低減され、誤動作が防止される。
上記のプログラマブルコントローラにおいて、前記スレーブ制御回路は、末端と判定した場合に、差動のオペレーション信号を送信する送信回路の出力端子を終端抵抗により終端することが好ましい。
この構成によれば、信号の反射によるノイズの発生が低減され、誤動作が防止される。
上記のプログラマブルコントローラにおいて、前記スレーブユニットは、前記第1コネクタの第2端子をプルダウンする第1抵抗と、前記第2コネクタの第2端子をプルアップする第2抵抗と、前記第2コネクタの第2端子のレベルに応じて前記第1コネクタの第2端子を駆動する駆動回路を備え、前記マスタユニットは、前記スレーブユニットの前記第コネクタの第2端子が接続される端子を介して入力する信号のレベルに基づいて、接続された全ての前記スレーブユニットの電源起動を判定することが好ましい。
この構成によれば、マスタユニットは、全てのスレーブユニットの電源が起動された後に各スレーブユニットを初期化することができる。そして、信号のレベルに基づいて電源が起動されていないユニットが存在すると判定して待機状態とし、この待機状態においてエラーを報知することで、電源が起動されていないユニットの存在を把握することが可能となる。
上記のプログラマブルコントローラにおいて、前記マスタユニットは、前記スレーブユニットをイニシャルモードに設定し、複数ビットの局番設定信号に初期値を設定して送信し、所定時間経過後にラッチ信号を送信し、前記スレーブユニットは、前記第1コネクタから受信した前記局番設定信号の値に所定値を加算して前記第2コネクタを介して送信し、前記ラッチ信号に基づいて前記受信した局番設定信号の値を自ユニットの局番として記憶することが好ましい。
この構成によれば、マスタユニット及び複数のスレーブユニットは、局番設定信号に基づいて初期設定時に自動的に自ユニットの局番を設定するため、設定ミスによる誤動作が防止される。
上記のプログラマブルコントローラにおいて、前記マスタユニットと前記スレーブユニットとの間、2つの前記スレーブユニットの間の接続には、両端のコネクタの第3端子と第4端子とが互いに接続された第1の接続ケーブル、または両端のコネクタの第3端子と第4端子とが交差して接続された第2の接続ケーブルが用いられ、前記スレーブユニットは、各コネクタにおいて、第3端子はプルダウンされ、第4端子はプルアップされ、前記マスタユニットは、前記スレーブユニットの第3端子に接続される端子はプルダウンされ、前記スレーブユニットの第4端子に接続される端子のレベルに応じて伝送速度を設定することが好ましい。
この構成によれば、マスタユニットと複数のスレーブユニットの接続状態に応じて伝送速度(伝送レート)を変更することにより、信号を確実に伝送することが可能となる。
上記課題を解決するプログラマブルコントローラの制御方法は、制御ユニットと第1の周辺ユニットとマスタユニットとを含む基本ブロックと、第2の周辺ユニットと前記マスタユニットに接続ケーブルを介して接続されたスレーブユニットとを含む増設ブロックと、を備えたプログラマブルコントローラの制御方法であって、前記制御ユニットは、前記第1の周辺ユニットを制御するとともに、前記マスタユニットと前記スレーブユニットを介して前記第2の周辺ユニットを制御し、前記マスタユニットは、前記スレーブユニットに差動信号を送信する複数の第1送信回路を備え、前記制御ユニットから出力される前記第2の周辺ユニットを指定するアドレス信号を含む複数ビットの制御信号を所定ビット単位で分割した複数のブロックデータを、前記複数の第1送信回路を用いて前記スレーブユニットに順次送信し、前記スレーブユニットは、前記差動信号を受信する複数の第2受信回路により順次受信した前記複数のブロックデータに基づいて複数ビットの制御信号を生成して前記第2の周辺ユニットに出力する。
この構成によれば、マスタユニットとスレーブユニットを用いることで、スレーブユニットに連結された第2の周辺ユニットを制御ユニットにより制御することが可能となる。このため、制御ユニットにより制御するユニットを容易に増設される。そして、制御信号を所定ビット単位で分割したブロックデータを伝送することにより、接続ケーブルの芯数よりビット数が多いデータが容易に伝送される。また、差動信号を用いてマスタユニットとスレーブユニットの間の信号を伝送することにより、ノイズ等の混入による誤動作を抑制した高速な信号伝送が可能となる。
本発明によれば、容易にユニットを増設することができるとともに、対ノイズ性能に優れ、簡易的なケーブルでも高速な信号伝送を長距離においても可能とすることができる。
プログラマブルコントローラの概略図である。 (a)(b)はユニット間の接続の説明図、(c)は接続ケーブルの説明図である。 プログラマブルコントローラにおける接続の概略を示すブロック図である。 増設ユニット間の接続を示す概略ブロック図である。 増設ユニットにおける終端の説明図である。 増設されたユニットに対するデータリードを示すタイミング図である。 増設されたユニットに対するデータライトを示すタイミング図である。 シングルエンド信号方式の説明図である。 (a)〜(c)は終端認識の説明図である。 (a)〜(c)は電源起動の説明図である。 (a)〜(c)は局番設定の説明図である。 (a)(b)はケーブル認識の説明図である。 (a)(b)は接続ケーブルの説明図である。
以下、一実施形態を説明する。
図1に示すように、プログラマブルコントローラ1は、複数(図1では4つ)のユニットブロック2a,2b,2c,2dを備えている。
第1のユニットブロック2aは、CPUユニット(制御ユニット)10と、複数のI/Oユニット(周辺ユニット)11と、エンドユニット(終端ユニット)12とを備えている。これらのユニットは、CPUユニット10から順に図において右側に向かって、複数のI/Oユニット11、エンドユニット12の順番で連結されている。
また、第1のユニットブロック2aは、第2のユニットブロック2bを接続するための増設ユニット20を備えている。増設ユニット20は、CPUユニット10に対して、I/Oユニット11と反対側の面、つまり図においてCPUユニット10の左側に連結されている。
CPUユニット10は、プログラマブルコントローラの全体を制御する制御装置(CPU)を有する。このCPUユニット10には、仕様により設定された最大ユニット数のI/Oユニット11を連結することができる。たとえば、最大ユニット数は「16」である。つまり、第1のユニットブロック2aは、最大16台のI/Oユニット11を含む。
I/Oユニット11は、信号の入力,出力,入出力を行うユニットである。信号は、温度センサの出力電圧等のアナログ信号、エンコーダ等のパルス信号、シリアル通信などの信号である。I/Oユニット11は、信号の入出力のための端子台やコネクタを備えている。なお、図1では、複数のI/Oユニット11が異なるように描かれているが、これは、種類が異なる、つまり機能が異なるI/Oユニット11を連結することが可能であることを示すものである。
図2(a)に示すように、CPUユニット10は、側面にスタッキング接続用コネクタ10aを備えている。一方の側面(図2(a)では右側面)に備えられたスタッキング接続用コネクタ10aは側面から突出し、他方の側面(図2(a)では左側面)に備えられたコネクタ(図示略)は、隣接するユニットの側面から突出するスタッキング接続用コネクタを挿入可能に形成されている。同様に、I/Oユニット11は、側面にスタッキング接続用コネクタ11aを備えている。そして、CPUユニット10のスタッキング接続用コネクタ10aと、I/Oユニット11のスタッキング接続用コネクタとを互いに接続し、CPUユニット10とI/Oユニット11を連結する。
同様に、増設ユニット20は側面にスタッキング接続用コネクタ20aを備えている。一方の側面(右側面)に備えられたスタッキング接続用コネクタ20aは側面から突出し、他方の側面(左側面)に備えられたコネクタ(図示略)は、隣接するユニットの側面から突出するスタッキング接続用コネクタを挿入可能に形成されている。そして、増設ユニット20のスタッキング接続用コネクタ20aとCPUユニット10のスタッキング接続用コネクタを互いに接続し、増設ユニット20をCPUユニット10に連結する。
なお、図1に示すエンドユニット12は、I/Oユニット11の側面から突出するスタッキング接続用コネクタ11a(図2(a)参照)を挿入可能なスタッキング接続用コネクタを備えている。そして、エンドユニット12のスタッキング接続用コネクタとI/Oユニット11のスタッキング接続用コネクタ11a(図2(a)参照)とを互いに接続し、I/Oユニット11にエンドユニット12を連結する。
図1に示すように、第2のユニットブロック2bは、増設ユニット21と、複数のI/Oユニット11と、エンドユニット12とから構成されている。これらのユニットは、図において左側から、増設ユニット21、複数のI/Oユニット11、エンドユニット12の順番で連結されている。
図2(b)に示すように、増設ユニット21は側面にスタッキング接続用コネクタ21aを備えている。一方の側面(右側面)に備えられたスタッキング接続用コネクタ21aは側面から突出し、他方の側面(左側面)に備えられたコネクタ(図示略)は、隣接するユニットの側面から突出するスタッキング接続用コネクタを挿入可能に形成されている。そして、増設ユニット21のスタッキング接続用コネクタ21aとI/Oユニット11のスタッキング接続用コネクタを互いに接続し、増設ユニット21にI/Oユニット11を連結する。
図1に示すように、第3のユニットブロック2cは、増設ユニット22と、複数のI/Oユニット11と、エンドユニット12とから構成されている。これらのユニットは、図において左側から、増設ユニット22、複数のI/Oユニット11、エンドユニット12の順番で連結されている。第4のユニットブロック2dは、増設ユニット23と、複数のI/Oユニット11と、エンドユニット12とから構成されている。これらのユニットは、図において左側から、増設ユニット23、複数のI/Oユニット11、エンドユニット12の順番で連結されている。増設ユニット22,23は、増設ユニット22と同様にスタッキング接続用コネクタをそれぞれ備えている。増設ユニット22,23とI/Oユニット11との接続は、増設ユニット22と同様であるため、図2(b)に対応する図面を省略する。なお、図3に概略的に示すように、増設ユニット22,23は、スタッキング接続用コネクタ22a,23aを備えている。
そして、各増設ユニット21,22,23には、仕様により設定された最大ユニット数のI/Oユニット11の連結が可能である。増設ユニット21,22,23における最大ユニット数は、たとえばCPUユニット10の最大ユニット数と同じ値(「16」)に設定されている。
第1のユニットブロック2aの増設ユニット20は、1つのコネクタ20bを備えている。第2のユニットブロック2bの増設ユニット21は2つのコネクタ21b,21cを備えている。同様に、第3のユニットブロック2cの増設ユニット22は2つのコネクタ22b,22cを備えている。第4のユニットブロック2dの増設ユニット23は2つのコネクタ23b,23cを備えている。
各増設ユニット20,21,22,23は、接続ケーブル31,32,33を介して直列に接続される。詳述すると、増設ユニット20のコネクタ20bには接続ケーブル31の一端が接続され、接続ケーブル31の他端は増設ユニット21のコネクタ21bに接続される。この増設ユニット21のコネクタ21cには接続ケーブル32の一端が接続され、接続ケーブル32の他端は増設ユニット22のコネクタ22bに接続される。さらに、増設ユニット22のコネクタ22cには接続ケーブル33の一端が接続され、接続ケーブル33の他端は増設ユニット23のコネクタ23bに接続される。
図2(c)に示すように、接続ケーブル31は、ケーブル31aと、ケーブル31aの両端のコネクタ31b,31cを有している。ケーブル31aは、所定数(たとえば40芯)のツイストペアシールドケーブルである。なお、接続ケーブル32,33は接続ケーブル31と同様であるため、図面及び説明を省略する。
図1に示すように、第1のユニットブロック2aの増設ユニット20はCPUユニット10に連結されている。この増設ユニット20は、他の増設ユニット21〜23をCPUユニット10に接続する。そして、増設ユニット21〜23にはそれぞれ複数のI/Oユニット11が連結される。つまり、増設ユニット20〜23は、CPUユニット10に対してI/Oユニット11を接続する。以下の説明において、この増設ユニット20を増設マスタユニットまたは単にマスタユニットと呼び、他の増設ユニット21,22,23を増設スレーブユニットまたは単にスレーブユニットと呼ぶことがある。
マスタユニット20には、仕様により、接続可能な増設スレーブユニットの数が設定されている。この接続数はたとえば「3」である。つまり、マスタユニット20は、1〜3台の増設スレーブユニットをCPUユニット10に接続する。増設ユニットにはI/Oユニット11が連結される。したがって、スレーブユニット21〜23は、CPUユニット10に対するI/Oユニット11の接続数を、CPUユニット10単体の場合より多くする。
そして、第1のユニットブロック2aは接続ケーブル31を介して第2のユニットブロック2bに接続されている。第2のユニットブロック2bは接続ケーブル32を介して第3のユニットブロック2cに接続され、第3のユニットブロック2cは接続ケーブル33を介して第4のユニットブロック2dに接続されている。したがって、このプログラマブルコントローラ1は、接続ケーブル31〜33によって各ユニットブロックを分散して配置することが可能である。
[プログラマブルコントローラの接続の概要]
次に、プログラマブルコントローラ1における接続の概要を説明する。
図3に示すように、互いに連結されたマスタユニット20とCPUユニット10とI/Oユニット11は、ユニットバスUBUを形成する。ユニットバスUBUは、アドレスバスUBAとデータバスUBDと制御バスUBCとを備えている。アドレスバスUBAのビット数はたとえば26ビットである。データバスUBDのビット数はたとえば16ビットである。制御バスUBCは、後述するリード信号RD、ライト信号WR、マスタクロック信号MCLK、等の制御信号を伝達する複数の信号線により形成される。
CPUユニット10は、ユニットバスUBUに接続されたCPU10bを備えている。I/Oユニット11は、ユニットバスUBUに接続された制御回路11bを備えている。CPU10bは、ユニットバスUBUを介してI/Oユニット11の制御回路11bをアクセスする。マスタユニット20は、ユニットバスUBUに接続された制御回路41を備えている。
同様に、互いに連結されたスレーブユニット21とI/Oユニット11は、ユニットバスUBUを形成する。ユニットバスUBUは、アドレスバスUBAとデータバスUBDと制御バスUBCを備えている。また、互いに連結されたスレーブユニット22,23とI/Oユニット11は、それぞれユニットバスUBUを形成する。
スレーブユニット21〜23と接続ケーブル31〜33に含まれる複数の配線は、増設バスEBUを形成する。増設バスEBUは、複合バスEADと制御バスEBCを備えている。複合バスEADはたとえば8ビットのパラレルバスである。複合バスEADは、アドレス信号とデータ信号の送受信に利用される。制御バスEBCは、増設バスEBUによる通信のために利用される各種信号(イネーブル信号、クロック信号、等)の送受信に利用される。
また、接続ケーブル31〜33は、接続する増設ユニット間において信号を伝達する配線を含む。この配線は、増設ユニットの接続状態(接続数、末端のユニット、等)の判定に利用される。
[増設ユニットの概要]
次に、増設ユニット(マスタユニット,スレーブユニット)の概要を説明する。
図4に示すように、マスタユニット(MASTER)20は、制御回路41、アイソレータ42a〜42e、送受信回路43、送信回路44a,44b、受信回路45を備えている。
制御回路41は、CPUユニット10から出力されるアドレス信号(Address)、データ信号(Data)、リード信号RD、ライト信号WR、選択信号CSを受信する。また、制御回路41は、CPUユニット10に対してデータ信号とレディ信号RDYを出力する。アドレス信号(Address)は26ビット、データ信号(Data)は16ビットのパラレル信号である。リード信号RD、ライト信号WR、選択信号CS、レディ信号RDYはそれぞれ1ビットの信号である。CPUユニット10は、レディ信号RDYにより待機状態(WAIT状態)となる。
制御回路41は、アドレス信号、リード信号RD、ライト信号WRと、増設ユニット間の通信情報(通信速度等)を含む32ビットのデータを、4個のブロックデータに分解する。各ブロックデータは、8ビットの情報を含む。制御回路41は、4個のブロックデータを順次出力する。
制御回路41は、データライト時、CPUユニット10から受信したデータ信号を2個のブロックデータに分解し、順次出力する。また、制御回路41は、データリード時、スレーブユニット21から順次受信する2個のブロックデータを16ビットのデータ信号に変換してCPUユニット10に出力する。
制御回路41から出力されるブロックデータは、アイソレータ42aを介して送受信回路43に供給される。また、制御回路41は、送受信回路43から出力されるブロックデータを、アイソレータ42bを介して入力する。アイソレータ42a,42bは、それぞれ8ビットのデジタルアイソレータである。
送受信回路43は、8ビットの複合バスEADに対して、差動信号を出力する出力回路と、差動信号を入力する入力回路を含む。送受信回路43は、制御回路41から供給されるブロックデータに応じた8組の差動信号CAD[7:0]を出力する。また、送受信回路43は、8組の差動信号CAD[7:0]に応じたブロックデータを制御回路41に出力する。
制御回路41は、マスタイネーブル信号MEN、マスタクロック信号MCLKを出力する。マスタイネーブル信号MENとマスタクロック信号MCLKは、それぞれアイソレータ42c,42dを介して送信回路44a,44bに供給される。アイソレータ42c,42dは、それぞれ1ビットのデジタルアイソレータである。送信回路44aは、制御バスEBCに対して、マスタイネーブル信号MENに応じた差動信号を出力する。送信回路44bは、制御バスEBCに対して、マスタクロック信号MCLKに応じた差動信号を出力する。
受信回路45は、制御バスEBCから差動信号を入力し、スレーブオペレーション信号SOPを出力する。制御回路41は、アイソレータ42eを介してスレーブオペレーション信号SOPを入力する。アイソレータ42eは、1ビットのデジタルアイソレータである。制御回路41は、スレーブオペレーション信号SOPに基づいて、上記の2個のブロックデータをラッチし、ラッチしたデータに基づいて16ビットのデータ信号を出力する。
スレーブユニット(SLAVE)21は、制御回路61、アイソレータ62a〜62e、送受信回路63、受信回路64a,64b、送信回路65を備えている。
送受信回路63は、接続ケーブル31(複合バスEAD)により受信した8組の差動信号CAD[7:0]に応じたブロックデータを出力する。制御回路61は、アイソレータ62aを介して送受信回路63から出力されるブロックデータを順次入力する。受信回路64aは、制御バスEBCから差動信号を入力し、マスタイネーブル信号MENを出力する。受信回路64bは、制御バスEBCから差動信号を入力し、マスタクロック信号MCLKを出力する。
制御回路61は、アイソレータ62c,62dを介して、マスタイネーブル信号MENとマスタクロック信号MCLKを入力する。そして、制御回路61は、マスタクロック信号MCLKに基づいて4個のブロックデータを順次ラッチし、ラッチした信号に基づいてアドレス信号(Address)、リード信号RD、ライト信号WR、選択信号CSを生成し、それらをI/Oユニット11に出力する。また、制御回路61は、マスタクロック信号MCLKに基づいて2個のブロックデータを順次ラッチし、ラッチした信号に基づいてデータ信号(Data)を生成し、I/Oユニット11に出力する。
また、制御回路61は、I/Oユニット11から受信したデータ信号を2個のブロックデータに変換(分割)し、順次出力する。そして、制御回路61は、スレーブオペレーション信号SOPを出力する。ブロックデータは、アイソレータ62bを介して送受信回路63に供給される。送受信回路63は、制御回路61から供給されるブロックデータに応じた8組の差動信号CAD[7:0]を接続ケーブル31(複合バスEAD)に出力する。
また、制御回路61は、スレーブオペレーション信号SOPを出力する。スレーブオペレーション信号SOPは、アイソレータ62eを介して送信回路65に供給される。送信回路65は、スレーブオペレーション信号SOPに応じた1組の差動信号を接続ケーブル31により形成される制御バスEBCに出力する。
図5に示すように、マスタユニット20は、終端回路46a,46bを備えている。終端回路46aは、差動信号の伝送路のインピーダンスに応じた抵抗値の終端抵抗R11,R12,R13を有している。なお、図では、1つの終端抵抗R11,R12が示されているが、8組の差動信号の伝送路にそれぞれ接続されている。終端回路46bは、送信回路44bから出力される差動信号の伝送路に接続された終端抵抗R14と、受信回路45に対する差動信号の伝送路に接続された終端抵抗R15とを有している。
スレーブユニット21は、終端回路66a,66bと、リレー67を備えている。終端回路66aは、差動信号の伝送路のインピーダンスに応じた抵抗値の終端抵抗R21,R22,R23を有している。なお、図では、1つの終端抵抗R21,R22を1つのみ示しているが、8組の差動信号の伝送路にそれぞれ接続されている。
終端回路66bは、受信回路64bに対する差動信号の伝送路に接続された終端抵抗R24と、送信回路65から出力される差動信号の伝送路に接続された終端抵抗R25とを有している。
リレー67は、終端制御信号TERMに基づいてオンオフするスイッチS1,S2を備えている。スイッチS1は伝送路に対して終端抵抗R24を接離し、スイッチS2は伝送路に対して終端抵抗R25を接離する。
差動信号を用いることで、接続ケーブル31〜33を用いた増設ユニット20〜23(図1参照)の信号伝達における耐ノイズ性が向上する。差動信号は5V(p−p)(ピーク・ツー・ピーク)(信号の振幅)である。したがって、10V(p−p)のシングルエンド信号を伝送することと等価である。このため、たとえば5V(p−p)のシングルエンドの信号伝達に比べ、接続ケーブルによる信号の振幅減少に対する誤りの発生を抑制し、長距離伝送が可能である。また、差動信号を伝送することにより、シングルエンド信号を伝送する場合と比べ、信号の変化に要する時間が短く、高速な信号伝送が可能である。
[データリード]
次に、図6にしたがって、プログラマブルコントローラにおけるアクセス(データリード)について説明する。ここでは、図3に示すCPUユニット10、マスタユニット20、スレーブユニット21、I/Oユニット11の間のアクセスについて説明する。
なお、図6において、マスタユニット20を含むユニットブロックにおける信号には「−M」を、スレーブユニット21を含むユニットブロックにおける信号には「−S」を付してそれぞれを区別する。そして、「−M」「−S」を用いて各ユニットの動作を説明する。
先ず、CPUユニット10は、ユニットバスUBUにアドレス信号A(AD−M)を出力する。CPUユニット10は、Lレベルの選択信号CS−Mを出力する。また、CPUユニット10は、一定期間Lレベルのストローブ信号STB−Mと、アドレス信号の有効期間を示すアドレスサイクル信号ADCYC−Mを出力する。そして、CPUユニット10は、たとえばストローブ信号STB−Mの立ち上がりと同じタイミングでLレベルのIO選択信号IOCS−Mを出力する。
マスタユニット20は、アドレス信号Aを受け取ると、Lレベルのレディ信号RDY−Mを出力する。CPUユニット10は、Lレベルのレディ信号RDY−Mに基づいて、待機状態(Wait)となる。
マスタユニット20は、Lレベルのマスタイネーブル信号MEN−Mを出力する。
マスタユニット20は、アドレス信号Aと制御信号(図4に示すリード信号RD,ライト信号WR)とに基づいて、4つのブロックデータCP,AP1,AP2,AP3を順次出力する。また、マスタユニット20は、ブロックデータCP,AP1〜AP3をスレーブユニット21が受け取るためのマスタクロック信号MCLK−Mを出力する。
スレーブユニット21は、マスタイネーブル信号MEN−MがLレベルになると、マスタクロック信号MCLK−Mに基づいて、たとえばマスタクロック信号MCLK−Mの立ち下がりエッジに基づいて各ブロックデータCP,AP1〜AP3を順次受け取る。
そして、スレーブユニット21は、所定のタイミング(たとえば、ブロックデータCPを受け取るタイミング)にてLレベルの選択信号CS−Sを出力する。そして、スレーブユニット21は、スレーブオペレーション信号SOP−Sをハイインピーダンス(Hi−Z)からLレベルへと遷移させる。
スレーブユニット21は、ブロックデータCP,AP1〜AP3に基づいて、ユニットバスにアドレス信号AD−Sを出力する。スレーブユニット21は、Lレベルの選択信号CS−Sを出力する。また、スレーブユニット21は、一定期間Lレベルのストローブ信号STB−Sと、アドレス信号の有効期間を示すアドレスサイクル信号ADCYC−Sを出力する。
I/Oユニット11は、ストローブ信号STB−Sに基づいてアドレス信号A(AD−S)を受け取る。そして、I/Oユニット11は、アドレスサイクル信号ADCYC−Sに基づいて、Lレベルのレディ信号RDY−Sを出力する。スレーブユニット21は、LレベルのLレベルのレディ信号RDY−Mに基づいて、待機状態(Wait)となる。
I/Oユニット11は、リードデータの準備が完了すると、レディ信号RDY−SをHレベルと、データ信号D(AD−S)を出力する。
スレーブユニット21は、データ信号Dを受け取り、Hレベルの選択信号CS−Sを出力する。
そして、スレーブユニット21は、データ信号に応じた2つのブロックデータDP0,DP1を順次出力する。また、スレーブユニット21は、ブロックデータDP0,DP1をマスタユニット20が受け取るためのスレーブオペレーション信号SOP−Sを出力する。
マスタユニット20は、スレーブオペレーション信号SOP−Mに基づいて、ブロックデータDP0,DP1を順次受け取る。そして、マスタユニット20は、Hレベルのマスタイネーブル信号MEN−MとLレベルのマスタクロック信号MCLK−Mを出力する。
スレーブユニット21は、Hレベルのマスタイネーブル信号MEN−Sに基づいて、Hレベルの選択信号CS−Sを出力し、スレーブオペレーション信号SOP−Sをハイインピーダンス(Hi−Z)とする。
次に、マスタユニット20は、ブロックデータDP0,DP1に応じたデータ信号D(AD−M)を出力する。さらに、マスタユニット20は、Hレベルのレディ信号RDY−Mを出力する。
CPUユニット10は、Hレベルのレディ信号RDY−Mに基づいて、データ信号Dを受け取る。そして、CPUユニット10は、Hレベルの選択信号CS−MとIO選択信号IOCS−Mを出力する。
[データライト]
次に、図7にしたがって、プログラマブルコントローラにおけるアクセス(データライト)について説明する。上記のデータリードと同様に、図3に示すCPUユニット10、マスタユニット20、スレーブユニット21、I/Oユニット11の間のアクセスについて説明する。
なお、図7において、図6と同様に、マスタユニット20を含むユニットブロックにおける信号には「−M」を、スレーブユニット21を含むユニットブロックにおける信号には「−S」を付してそれぞれを区別する。そして、「−M」「−S」を用いて各ユニットの動作を説明する。
先ず、CPUユニット10は、ユニットバスUBUにアドレス信号A(AD−M)を出力し、次いでデータ信号D(AD−M)を出力する。CPUユニット10は、Lレベルの選択信号CS−Mを出力する。また、CPUユニット10は、一定期間Lレベルのストローブ信号STB−Mと、アドレス信号の有効期間を示すアドレスサイクル信号ADCYC−Mを出力する。そして、CPUユニット10は、たとえばストローブ信号STB−Mの立ち上がりと同じタイミングでLレベルのIO選択信号IOCS−Mを出力する。
マスタユニット20は、アドレス信号Aを受け取ると、Lレベルのレディ信号RDY−Mを出力する。CPUユニット10は、Lレベルのレディ信号RDY−Mに基づいて、待機状態(Wait)となる。
マスタユニット20は、Lレベルのマスタイネーブル信号MEN−Mを出力する。
マスタユニット20は、アドレス信号Aと制御信号(図4に示すリード信号RD,ライト信号WR)とに基づいて、4つのブロックデータCP,AP1,AP2,AP3を順次出力する。さらに、マスタユニット20は、データ信号Dに基づいて、2つのブロックデータDP0,DP1を順次出力する。また、マスタユニット20は、ブロックデータCP,AP1〜AP3、DP0,DP1をスレーブユニット21が受け取るためのマスタクロック信号MCLK−Mを出力する。
スレーブユニット21は、マスタイネーブル信号MEN−MがLレベルになると、マスタクロック信号MCLK−Mに基づいて、たとえばマスタクロック信号MCLK−Mの立ち下がりエッジに基づいて各ブロックデータCP,AP1〜AP3を順次受け取る。
そして、スレーブユニット21は、所定のタイミング(たとえば、ブロックデータCPを受け取るタイミング)にてLレベルの選択信号CS−Sを出力する。そして、スレーブユニット21は、スレーブオペレーション信号SOP−Sをハイインピーダンス(Hi−Z)からHレベルへと遷移させる。
スレーブユニット21は、ブロックデータCP,AP1〜AP3を受け取ると、Lレベルのアドレスサイクル信号ADCYC−Sを出力し、ユニットバスにアドレス信号A(AD−S)を出力する。スレーブユニット21は、Lレベルの選択信号CS−Sを出力する。また、スレーブユニット21は、一定期間Lレベルのストローブ信号STB−Sを出力する。そして、スレーブユニット21は、Lレベルのスレーブオペレーション信号SOP−Sを出力する。
さらに、スレーブユニット21は、ブロックデータDP0,DP1を受け取ると、Hレベルのアドレスサイクル信号ADCYC−Sを出力し、ユニットバスにデータ信号D(AD−S)を出力する。スレーブユニット21は、Lレベルの選択信号CS−Sを出力する。また、スレーブユニット21は、一定期間Lレベルのストローブ信号STB−Sを出力する。
I/Oユニット11は、ストローブ信号STB−Sに基づいてアドレス信号A(AD−S)を受け取る。そして、I/Oユニット11は、Hレベルのアドレスサイクル信号ADCYC−Sに基づいて、Lレベルのレディ信号RDY−Sを出力する。スレーブユニット21は、LレベルのLレベルのレディ信号RDY−Mに基づいて、待機状態(Wait)となる。
I/Oユニット11は、Hレベルのアドレスサイクル信号ADCYC−Sに基づいて、データ信号D(AD−S)を受け取ると、Hレベルのレディ信号RDY−Sを出力する。
スレーブユニット21は、Hレベルのレディ信号RDY−Sに基づいて、Hレベルのスレーブオペレーション信号SOP−Sを出力する。
マスタユニット20は、Hレベルのスレーブオペレーション信号SOP−Mに基づいて、Hレベルのレディ信号RDY−Mを出力する。
CPUユニット10は、Hレベルのレディ信号RDY−Mに基づいて、データ信号Dを受け取る。そして、CPUユニット10は、Hレベルの選択信号CS−MとIO選択信号IOCS−Mを出力する。
スレーブユニット21は、Hレベルのマスタイネーブル信号MEN−Sに基づいて、Hレベルの選択信号CS−Sを出力し、スレーブオペレーション信号SOP−Sをハイインピーダンス(Hi−Z)とする。
[シングルエンド信号伝送]
図8に示すように、マスタユニット20は、リセット信号RESETを送信するための送信回路51と、起動完了信号PSRを受信するための受信回路55を備えている。
送信回路51は、バッファ回路52、インバータ回路53、トランジスタT11〜T13、抵抗R16を備えている。
送信回路51のバッファ回路52とインバータ回路53には、制御回路41とアイソレータ42fを介して、リセット信号RESETが供給される。バッファ回路52の出力端子はトランジスタT11の制御端子に接続されている。トランジスタT11は、たとえばNチャネルMOSトランジスタである。トランジスタT11のドレイン端子はトランジスタT12の制御端子に接続され、トランジスタT11のソース端子はグランドGNDに接続されている。なお、以下の説明に用いる図面において、符号「GND」を省略することがある。トランジスタT12はたとえばPチャネルMOSトランジスタである。トランジスタT12のソース端子には高電位電圧VDmが供給されている。また、トランジスタT12の制御端子(ゲート端子)は、抵抗R16の一端に接続され、抵抗R16の他端には高電位電圧VDmが供給される。高電位電圧VDmは、たとえば12[V](ボルト)であり、マスタユニット20に備えられた電源回路(図示略)により生成される。
インバータ回路53の出力端子はトランジスタT13の制御端子に接続されている。トランジスタT13はたとえばNチャネルMOSトランジスタである。トランジスタT13のソース端子はグランドGNDに接続され、トランジスタT13のドレイン端子はトランジスタT12のドレイン端子に接続されている。そして、トランジスタT12とトランジスタT13との間のノードから、高電位電圧VDmとグランドGNDの電位に応じた振幅のリセット信号RSTを出力する。このリセット信号RSTはシングルエンド信号であり、振幅はたとえば12V(p−p)である。このように、シングルエンドのリセット信号RSTを伝送することにより、接続ケーブル31の芯数の増加を抑制することができる。
なお、バッファ回路52とインバータ回路53は、電源端子に供給される高電位電圧VCm(図示略)にて動作する。高電位電圧VCmはたとえば5[V]であり、図示しない電源回路により生成される。また、CPUユニット10から出力されるリセット信号RESETは、高速な伝送に適した振幅レベル、たとえば3.3V(p−p)である。このように、マスタユニット20は、リセット信号RESETの振幅を大きくして接続ケーブル31に対して出力する。
スレーブユニット21は、リセット信号RESETを受信するための受信回路71と、起動完了信号PSRを送信するための送信回路75を備えている。
受信回路71は、コンパレータ72、抵抗R26a,R26b,R27を備えている。受信回路71のコンパレータ72の非反転入力端子に、接続ケーブル31により伝送されたリセット信号RSTが供給される。コンパレータ72の反転入力端子は抵抗R26aの一端に接続され、抵抗R26aの他端には高電位電圧VDsが供給される。また、コンパレータ72の反転入力端子は抵抗R26bの一端に接続され、抵抗R26bの他端はグランドGNDに接続されている。したがって、コンパレータ72の反転入力端子には、抵抗R26a,R26bの抵抗値に応じて高電位電圧VDsを分圧した分圧電圧が供給される。高電位電圧VDsは、たとえば12[V](ボルト)であり、スレーブユニット21に備えられた電源回路(図示略)により生成される。抵抗R26a,R26bの抵抗値はたとえば互いに等しい値に設定されている。この場合、コンパレータ72の反転入力端子には、高電位電圧VDsの1/2(2分の1)の分圧電圧が供給される。コンパレータ72の出力端子は抵抗R27の一端に接続され、抵抗R27の他端には高電位電圧VCsが供給される。高電位電圧VCsはたとえば5[V]であり、図示しない電源回路により生成される。
接続ケーブル31により伝送されるリセット信号RSTは12V(p−p)のシングルエンド信号である。受信回路71のコンパレータ72は、12V(p−p)のリセット信号RSTと、高電位電圧VDs(12[V])の1/2(2分の1)の分圧電圧(6[V])の基準電圧Vr2とを比較し、比較結果に応じたリセット信号RESETを出力する。このリセット信号RESETは、コンパレータ72の出力端子に接続された抵抗R27とその抵抗R27に供給される高電位電圧VCs(5[V])により、5V(p−p)となる。リセット信号RESETは、アイソレータ62fと制御回路61を介してI/Oユニット11に供給される。
このように基準電圧Vr1を設定することにより、耐ノイズ性が向上する。つまり、マスタユニット20における高電位電圧VDmの電圧変動や、伝送路における電圧降下、伝送路に混入するノイズにより、リセット信号RSTのレベルが変動する。しかし、リセット信号RSTの振幅(12V(p−p))の1/2に基準電圧Vr2を設定すると、リセット信号RSTの最大電圧、最小電圧と基準電圧Vr2の差の電圧まで電圧変動が許容される。つまり、マスタユニット20は、振幅を拡大したリセット信号RSTを出力する。スレーブユニット21は、リセット信号RSTの中間の基準電圧Vr2によりリセット信号RSTを判定してリセット信号RESETを出力する。これにより、ノイズ等により伝送路のリセット信号RSTのレベルが変動しても、コンパレータ72から出力されるリセット信号RESETにおける誤りを抑制することができる。
スレーブユニット21の送信回路75は、マスタユニット20の送信回路51と同様に構成されている。
送信回路75は、バッファ回路76、インバータ回路77、トランジスタT21〜T23、抵抗R28を備えている。送信回路75のバッファ回路76とインバータ回路77には、制御回路61とアイソレータ62gを介して起動完了信号PSRが供給される。バッファ回路76の出力端子はトランジスタT21の制御端子に接続されている。トランジスタT21はたとえばNチャネルMOSトランジスタである。トランジスタT21のドレイン端子はトランジスタT22の制御端子に接続され、トランジスタT21のソース端子はグランドGNDに接続されている。トランジスタT22はたとえばPチャネルMOSトランジスタである。トランジスタT22のソース端子には高電位電圧VDsが供給されている。また、トランジスタT22の制御端子(ゲート端子)は抵抗R28の一端に接続され、抵抗R28の他端には高電位電圧VDsが供給される。
インバータ回路77の出力端子はトランジスタT23の制御端子に接続されている。トランジスタT23はたとえばNチャネルMOSトランジスタである。トランジスタT23のソース端子はグランドGNDに接続され、トランジスタT23のドレイン端子はトランジスタT22のドレイン端子に接続されている。そして、トランジスタT22とトランジスタT23の間のノードから、高電位電圧VDsとグランドGNDの電位に応じた振幅の起動完了信号PSを出力する。この起動完了信号PSはシングルエンド信号であり、振幅はたとえば12V(p−p)である。
マスタユニット20の受信回路55は、コンパレータ56、抵抗R17a,R17b,R18を備えている。受信回路55のコンパレータ56の非反転入力端子に、接続ケーブル31により伝送されたリセット信号RSTが供給される。コンパレータ56の反転入力端子は抵抗R17aの一端に接続され、抵抗R17aの他端には高電位電圧VDmが供給される。また、コンパレータ56の反転入力端子は抵抗R17bの一端に接続され、抵抗R17bの他端はグランドGNDに接続されている。したがって、コンパレータ56の反転入力端子には、抵抗R17a,R17bの抵抗値に応じて高電位電圧VDmを分圧した分圧電圧が供給される。抵抗R17a,R17bの抵抗値はたとえば互いに等しい値に設定されている。この場合、コンパレータ56の反転入力端子には、高電位電圧VDmの1/2(2分の1)の分圧電圧が供給される。コンパレータ56の出力端子は抵抗R18の一端に接続され、抵抗R18の他端には高電位電圧VCmが供給される。
接続ケーブル31により伝送される起動完了信号PSは12V(p−p)のシングルエンド信号である。受信回路55のコンパレータ56は、12V(p−p)の起動完了信号PSと、高電位電圧VDm(12[V])の1/2(2分の1)の分圧電圧(6[V])の基準電圧Vr1とを比較し、比較結果に応じた起動完了信号PSRを出力する。この起動完了信号PSRは、コンパレータ56の出力端子に接続された抵抗R18とその抵抗R18に供給される高電位電圧VCm(5[V])により、5V(p−p)となる。起動完了信号PSRは、アイソレータ42gと制御回路41を介してCPUユニット10に出力される。
起動完了信号PSRについても、リセット信号RESETと同様に、接続ケーブル31の芯数の増加を抑制することができる。また、ノイズ等により伝送路の起動完了信号PSのレベルが変動しても、コンパレータ56から出力される起動完了信号PSRにおける誤りを抑制することができる。
[終端認識]
次に、スレーブユニットにおける終端認識を説明する。
図9(a)に示すように、スレーブユニット21は、2つのコネクタ22b、22cを有し、一方のコネクタ21bは接続ケーブル31によりマスタユニット20のコネクタ20bに接続される。図9(b)(c)に示すように、スレーブユニット21の2つのコネクタのうち他方のコネクタ21cは、接続ケーブル32を介してスレーブユニット22に接続される。スレーブユニット22のコネクタ22bは、接続ケーブル32を介してマスタユニット20側のスレーブユニット21のコネクタ21cに接続される。そして、スレーブユニット22のコネクタ22cは、接続ケーブル33を介してスレーブユニット23のコネクタ23bに接続される。
つまり、各スレーブユニット21,22,23は、マスタユニット側のコネクタ21b,22b,23bと、マスタユニット20とは反対側(反マスタユニット側)のコネクタ21c,22c,23cを備えている。マスタユニット側のコネクタ21b,22b,23bを上流側コネクタと呼び、反マスタユニット側のコネクタ21c,22c,23cを下流側コネクタと呼ぶ。
図9(a)に示すように、スレーブユニット21において、下流側コネクタ21cの1つの端子(たとえば、40番目の端子)Pbは、抵抗R31を介してアイソレータ81に接続されている。アイソレータ81は、たとえばフォトカプラである。アイソレータ81には高電位電圧VCs(たとえば5[V])が供給され、出力端子は制御回路61に接続されている。制御回路61は、アイソレータ81の出力端子のレベルに応じた終端判定信号を入力する。そして、端子Pbと対応する上流側コネクタ21bの端子(たとえば、40番目の端子)Paには、高電位電圧VDs(たとえば12[V])が供給される。
図9(c)に示すように、スレーブユニット22,23は、スレーブユニット21と同様に、上流側コネクタ21bの端子Paに高電位電圧VDsが供給され、下流側コネクタ21cの端子Pbは抵抗R31を介してアイソレータ81に接続され、そのアイソレータ81の出力端子は制御回路61に接続されている。制御回路61は、アイソレータ81の出力端子のレベルに応じた終端判定信号を入力する。
図9(b)に示すように、スレーブユニット21のコネクタ21cを、接続ケーブル32を介してスレーブユニット22のコネクタ22bを接続する。すると、スレーブユニット21の下流側コネクタ21cの端子Pbは、接続ケーブル32を介して接続されたスレーブユニット22により高電位電圧VDsにプルアップされる。このとき、アイソレータ81の出力端子はHレベルとなる。したがって、制御回路61は、Hレベルの終端判定信号を入力する。そして、図9(a)に示すように、スレーブユニット21の下流側コネクタ21cが未接続の場合、アイソレータ81の出力端子、つまり終端判定信号はLレベルとなる。したがって、制御回路61は、終端判定信号のレベルに応じて、自ユニットが末端のユニットであるか否かを判定する。制御回路61は、Lレベルの終端判定信号に基づいて自ユニットが末端のユニットであると判定し、Hレベルの終端判定信号に基づいて自ユニットが末端のユニットではないと判定する。
図9(b)に示すように、2台のスレーブユニット21,22を含むプログラマブルコントローラの場合、マスタユニット20に直接接続されたスレーブユニット21の制御回路は、Hレベルの終端判定信号に基づいて、自ユニットが末端のユニットではないと判定する。そのスレーブユニット21に接続されたスレーブユニット22の制御回路61は、Lレベルの終端判定信号に基づいて自ユニットが末端のユニットであると判定する。
図9(c)に示すように、3台のスレーブユニット21〜23を含むプログラマブルコントローラの場合、マスタユニット20に直接接続されたスレーブユニット21の制御回路は、Hレベルの終端判定信号に基づいて、自ユニットが末端のユニットではないと判定する。そのスレーブユニット21に接続されたスレーブユニット22の制御回路61は、Hレベルの終端判定信号に基づいて、自ユニットが末端のユニットではないと判定する。そして、スレーブユニット22に接続されたスレーブユニット23の制御回路61は、Lレベルの終端判定信号に基づいて自ユニットが末端のユニットであると判定する。
末端のユニットと判定した制御回路は、図5に示す終端制御信号により、リレー67のスイッチS1,S2をオンし、マスタクロック信号MCLKとスレーブオペレーション信号SOPをそれぞれ伝送する伝送路を終端する。たとえば、図9(c)に示すように接続された各スレーブユニット21,22,23の制御回路は、マスタクロック信号MCLKに基づいて、マスタユニット20から順次送信される複数のブロックデータをラッチしてアドレス信号やデータ信号等を生成する。たとえば、制御回路は、マスタクロック信号MCLKの立ち上がりに同期してブロックデータをラッチする。したがって、信号の反射によってマスタクロック信号MCLKにパルス状のノイズが発生し、そのノイズによって誤ったデータをラッチするおそれがある。このため、マスタクロック信号MCLKの伝送路を末端のスレーブユニットにおいて終端し、誤動作を防止する。
一方、マスタユニット20の制御回路は、スレーブオペレーション信号SOPに基づいて各スレーブユニット21,22,23から送信されるブロックデータをラッチしてデータ信号を生成する。したがって、マスタクロック信号MCLKと同様に、スレーブオペレーション信号SOPの伝送路を末端のスレーブユニットにて終端し、誤動作を防止する。
[起動判定]
次に、各スレーブユニットの電源起動の判定について説明する。
図10(a)に示すように、各スレーブユニット21,22,23は、それぞれ起動完了信号PSRを送信する送信回路75を備えている。なお、図10(a)では、図8に示す送信回路75を簡略化して示している。また、マスタユニット20及びスレーブユニット21,22,23は、図8に示す受信回路45を備えているが、図ではこれを省略している。
図10(a)に示すように、スレーブユニット21において、送信回路75の出力端子が接続されたコネクタ21bの端子Pcは、スレーブユニット21内の抵抗R32によりグランドGNDにプルダウンされている。そして、この送信回路75に対して起動完了信号PSRが入力されるコネクタ21cの端子Pdは、スレーブユニット21内の抵抗R33により所定電圧(たとえば、高電位電圧VDs)にプルアップされている。抵抗R33の抵抗値は、抵抗R32の抵抗値よりも大きく設定されている。たとえば、抵抗R33の抵抗値は100kΩ、抵抗R32の抵抗値は10kΩである。スレーブユニット22,23についてもスレーブユニット21と同様である。
スレーブユニット23において、電源が供給されると、抵抗R33は送信回路75の入力端子をプルアップする。すると、送信回路75は、Hレベルの起動完了信号PS3を出力する。スレーブユニット22は、Hレベルの起動完了信号PS3に基づいて、Hレベルの起動完了信号PS2を出力する。スレーブユニット21は、Hレベルの起動完了信号PS2に基づいてHレベルの起動完了信号PS1を出力する。マスタユニット20は、Hレベルの起動完了信号PS1に基づいて、接続された全てのスレーブユニット21,22,23の電源が起動されたと判定し、イニシャルモードとなり、各スレーブユニット21,22,23の初期化を行う。
たとえば、図10(b)に示すように、スレーブユニット23に駆動電源が供給されていない(電源が起動していない)場合、このスレーブユニット23の抵抗R32は、接続ケーブル33を介してスレーブユニット22の端子Pdをプルダウンする。この端子Pdは、抵抗R33によりプルアップされている。したがって、端子Pdの電位(レベル)は、抵抗R33の抵抗値と抵抗R32の抵抗値に応じて、所定電圧(たとえば、高電位電圧VDs)とグランドGNDの間の電位差を分圧した値となる。抵抗R33の抵抗値は、抵抗R32の抵抗値より大きい。スレーブユニット22の送信回路75は、端子Pdの電位に基づいて、Lレベルの起動完了信号PS2を出力する。スレーブユニット21は、Lレベルの起動完了信号PS2に基づいて、Lレベルの起動完了信号PS1を出力する。
マスタユニット20は、Lレベルの起動完了信号PS1に基づいて、接続されたスレーブユニット21〜23のうちに、電源が起動されていないユニットが存在すると判定し、待機状態となる。この待機状態において、マスタユニット20はたとえば電源起動のエラーを報知する。たとえば、図1において、マスタユニット20は、前面上部に表示部20cを備えている。表示部20cは、たとえば、液晶表示装置(LCD)や発光素子(LED)等を備えている。マスタユニット20は、表示部20cに電源起動のエラーを表示する。表示部20cの表示により、操作者(作業者)は、電源起動にエラーが発生していることを把握することができる。
また、図10(c)に示すように、スレーブユニット22に駆動電源が供給されていない(電源が起動していない)場合、このスレーブユニット22の抵抗R32は、接続ケーブル32を介してスレーブユニット21の端子Pdをプルダウンする。スレーブユニット21の送信回路75は、端子Pdの電位に基づいて、Lレベルの起動完了信号PS1を出力する。マスタユニット20は、Lレベルの起動完了信号PS1に基づいて、接続されたスレーブユニット21〜23のうちに、電源が起動されていないユニットが存在すると判定し、待機状態となる。
なお、スレーブユニット21に駆動電源が供給されていない(電源が起動していない)場合も上記と同様に、マスタユニット20は、Lレベルの起動完了信号PS1に基づいて、電源が起動されていないユニットが存在すると判定し、待機状態となる。また、複数のスレーブユニットに駆動電源が供給されていない場合も同様である。また、マスタユニット20に対して1台または2台のスレーブユニットが接続された場合も同様である。
[局番設定]
たとえば、図10(a)に示すように、マスタユニット20は、Hレベルの起動完了信号PS1に基づいて、接続された全てのスレーブユニット21,22,23の電源が起動されたと判定すると、初期化を行う。
たとえば、図11(a)に示すように、マスタユニット20は、Lレベルのリセット信号SRESETとLレベルのマスタイネーブル信号MENを出力する。リセット信号SRESETとマスタイネーブル信号MENは、マスタユニット20とスレーブユニット21,22,23と接続ケーブル31,32,33により形成される増設バスにより、各スレーブユニット21〜23の制御回路61に供給される。各スレーブユニット21〜23の制御回路61は、Lレベルのリセット信号SRESETに基づいて初期化処理を行う。
マスタユニット20は、3ビットの局番設定信号SN2,SN1,SN0を出力する。マスタユニット20は、Lレベルの局番設定信号SN2,SN1とHレベルの局番設定信号SN0を出力する。上記レベルの局番設定データSN[2:0]のレベルは「LLH」であり、「1」を示す。つまり、スレーブユニット21の制御回路61は、マスタユニット20から出力される局番設定信号SN2〜SN0の値「1」に「1」を加算した結果に応じた局番設定信号SN2〜SN0を出力する。つまり、制御回路61は、Lレベルの局番設定信号SN2、Hレベルの局番設定信号SN1、Lレベルの局番設定信号SN0を出力する。
スレーブユニット21の制御回路61は、スレーブユニット21から出力される局番設定信号SN2〜SN0の値に「1」を加算した値の局番設定信号SN2〜SN0を出力する。スレーブユニット21から出力される局番設定信号SN2〜SN0のレベルは「LHL」であり、「2」を示す。したがって、制御回路61は、Lレベルの局番設定信号SN2、Hレベルの局番設定信号SN1,SN0を出力する。
スレーブユニット21の制御回路61は、スレーブユニット21から出力される局番設定信号SN2〜SN0の値に「1」を加算した値の局番設定信号SN2〜SN0を出力する。スレーブユニット21から出力される局番設定信号SN2〜SN0のレベルは「LHL」であり、「3」を示す。したがって、制御回路61は、Hレベルの局番設定信号SN2、Lレベルの局番設定信号SN1,SN0を出力する。
図11(b)に示すように、マスタユニット20は、出力するマスタクロック信号MCLKのレベルを、LレベルかれHレベルへと変更する。各スレーブユニット21〜23の制御回路61は、マスタクロック信号MCLKの立ち上がりに基づいて局番設定信号SN2〜SN0をラッチし、局番設定データSN[2:0]を記憶する。つまり、各スレーブユニット21〜23の制御回路61は、マスタユニット20側から順に、「1」、「2」、「3」の局番を設定する。
たとえば、各スレーブユニット21,22,23は、図1に示すように、前面上端に表示部21d,22d,23dを有している。各スレーブユニット21,22,23の制御回路61はそれぞれ、表示部21d,22d,23dに局番を表示する。
局番をディップスイッチやレジスタに設定する場合、同じ局番のスレーブユニットが接続されることがある。このような設定ミスにより誤動作が発生する。これに対し、本実施形態のマスタユニット20及びスレーブユニット21,22,23は、初期設定時に自動的に自ユニットの局番を設定する。これにより、設定ミスにより誤動作を防止することができる。
なお、スレーブユニットの制御回路は、初期設定のときに、Hレベルの局番設定信号SN2に基づいて、設定を行わないように構成されている。本実施形態のプログラマブルコントローラは、最大で3台のスレーブユニットの接続が可能な仕様である。このため、4台以上のスレーブユニットを接続した場合、マスタユニットから数えて4台目以降のスレーブユニットが初期設定を行わずに動作を停止することで、誤動作を防止する。
図11(c)に示すように、マスタユニット20はHレベルのリセット信号SRESETを出力する。各スレーブユニット21〜23の制御回路61は、Hレベルのリセット信号SRESETに基づいて初期化処理(イニシャルモード)を終了する。
そして、マスタユニット20は、局番設定信号SN0〜SN2に替えて、制御信号を出力する。たとえば、マスタユニット20は、エラー信号ERR、プログラム/起動信号RUN、クリア信号CLRを出力する。スレーブユニット21の制御回路61は、各信号ERR,RUN,CLRを、透過的(スルー)に下流側のスレーブユニット22に出力する。同様に、スレーブユニット22,23の制御回路61は、各信号ERR,RUN,CLRを、透過的(スルー)に出力する。
このように、マスタユニット20及びスレーブユニット21〜23は、初期設定時(イニシャルモード)と、初期設定後とで、異なる信号を伝送する。これにより、マスタユニット20,スレーブユニット21〜23を接続する接続ケーブル31〜33におけるケーブル数の増加、コネクタ31b,31c(図2(c)参照)の大型化を抑制することができる。
図13(a)に示すように、接続ケーブル34は、コネクタ34a,34b間の長さ(ケーブル長)がL1のケーブルである。この接続ケーブル34は、コネクタ34a,34bにおいて、対応する端子を互いに接続したストレートケーブルである。図において、コネクタ34a,34bの近傍に記載した数字は、端子の順番を示す。たとえば、コネクタ34aの1番目の端子P1はコネクタ34bの1番目の端子P41に接続され、2番目の端子P2は2番目の端子P42に接続されている。
図13(b)に示すように、接続ケーブル35は、コネクタ35a,35b間の長さ(ケーブル長)がL2のケーブルである。この接続ケーブル35は、図13(a)に示す接続ケーブル34より長い(L2>L1)。この接続ケーブル35は、所定の2つの端子をクロスして接続したクロスケーブルである。詳述すると、コネクタ35aの1番目の端子P1は、ケーブル35cによりコネクタ35bの2番目の端子P42に接続されている。また、コネクタ35aの2番目の端子P2は、ケーブル35dによりコネクタ35bの1番目の端子P41に接続されている。そして、3番目〜40番目の端子は、対応する3番目から40番目の端子にそれぞれ接続されている。
図12(a)に示すように、マスタユニット20のコネクタ20bにおいて、1番目の端子P1はグランドGNDに接続されている。マスタユニット20は、2番目の端子P2のレベルに基づいて、接続ケーブルを判定する。
スレーブユニット21において、コネクタ21bの1番目の端子P1と、コネクタ21cの1番目の端子P41は、それぞれグランドGNDに接続されている。コネクタ21bの2番目の端子P2と、コネクタ21cの2番目の端子P42は、互いに信号の伝達が可能に接続されている。なお、図では省略しているが、コネクタ21bの各端子とコネクタ21cの各端子は、アイソレータにより、分離されている。
また、スレーブユニット21において、コネクタ21bの端子P2と、コネクタ21cの端子P42との間の伝送路91は、所定電圧(たとえば、高電位電圧VDs(12[V]))にプルアップされている。そして、スレーブユニット21の制御回路61は、その伝送路91のレベルを監視可能に接続されている。たとえば、スレーブユニット21は、アイソレータ82と抵抗R34を備えている。アイソレータ82は、たとえばフォトカプラである。抵抗R34の一端には高電位電圧VDsが供給され、抵抗R34の他端はアイソレータ82を介して伝送路91に接続されている。伝送路91は、アイソレータ82と抵抗R34を介して高電位電圧VDsにプルアップされている。制御回路61は、アイソレータの出力端子に接続されている。スレーブユニット22,23は、スレーブユニット21と同様に、伝送路91、アイソレータ82、抵抗R34を備えている。
マスタユニット20とスレーブユニット21は、図13(a)に示す接続ケーブル34により接続される。同様に、スレーブユニット21とスレーブユニット22、スレーブユニット22とスレーブユニット23は、図13(a)に示す接続ケーブル34により接続される。この場合、各スレーブユニット21,22,23において、伝送路91はプルアップされている。したがって、マスタユニット20は、端子P2がHレベルであるため、図13(a)に示す接続ケーブル34により、各ユニット20,21,22,23が接続されていると判定する。そして、マスタユニット20は、その判定結果に基づいて、伝送速度(伝送レート)を第1の設定値に設定する。各スレーブユニット21〜23の制御回路61は、たとえば、Hレベルの信号を入力する。制御回路61はHレベルの信号に基づいて、ユニット間の接続に、図13(a)に示す接続ケーブル34が用いられていると判定する。
図12(b)に示すように、スレーブユニット21とスレーブユニット21とを、図13(b)に示す接続ケーブル35により接続する。この場合、スレーブユニット21の伝送路91は、接続ケーブル35を介してスレーブユニット22の端子P1に接続され、この端子P1はグランドGNDに接続されている。したがって、マスタユニット20の端子P2は、Lレベルとなる。マスタユニット20は、端子P2がLレベルであるため、ユニット間の接続に図13(b)に示す接続ケーブル35が用いられていると判定する。そして、マスタユニット20は、その判定結果に基づいて、伝送速度(伝送レート)を、第1の設定値より遅い第2の設定値に設定する。スレーブユニット21の制御回路61は、Lレベルの信号を入力し、ユニット間の接続に図13(b)に示す接続ケーブル35が用いられていると判定する。
同様に、スレーブユニット22の伝送路91は、接続ケーブル35を介してスレーブユニット21の端子P41に接続され、この端子P41はグランドGNDに接続されている。したがって、スレーブユニット22,23の制御回路61は、ユニット間の接続に図13(b)に示す接続ケーブル35が用いられていると判定する。
このように、マスタユニット20は、端子P2のレベルに基づいて、接続ケーブルの種類(長さ)を判定する。そして、マスタユニット20は、接続ケーブルの種類(長さ)に応じて伝送レートを変更することにより、信号を確実に伝送することが可能となる。
以上記述したように、本実施形態によれば、以下の効果を奏する。
(1)プログラマブルコントローラ1は、複数のユニットブロック2a,2b,2c,2dを備えている。
第1のユニットブロック2aは、CPUユニット(制御ユニット)10と、複数のI/Oユニット(周辺ユニット)11と、エンドユニット(終端ユニット)12とを備えている。第1のユニットブロック2aは、第2のユニットブロック2bを接続するための増設ユニット21を備えている。
第2のユニットブロック2bは、増設ユニット21と、複数のI/Oユニット11と、エンドユニット12とから構成されている。第3のユニットブロック2cは、増設ユニット22と、複数のI/Oユニット11と、エンドユニット12とから構成されている。第4のユニットブロック2dは、増設ユニット23と、複数のI/Oユニット11と、エンドユニット12とから構成されている。
増設ユニット(マスタユニット)20は接続ケーブル31を介して増設ユニット(スレーブユニット)21に接続される。増設ユニット21は接続ケーブル32を介して増設ユニット(スレーブユニット)22に接続され、増設ユニット22は接続ケーブル33を介して増設ユニット(スレーブユニット)23に接続される。
マスタユニット20には、仕様により、接続可能な増設スレーブユニットの数が設定されている。この接続数はたとえば「3」である。つまり、マスタユニット20は、1〜3台の増設スレーブユニットをCPUユニット10に接続する。増設ユニットにはI/Oユニット11が連結される。したがって、スレーブユニット21〜23は、CPUユニット10に対するI/Oユニット11の接続数を、CPUユニット10単体の場合より多くする。このように、増設ユニット20〜23を用いることにより、CPUユニット10により制御可能なI/Oユニット11を容易に増設することができる。
(2)第1のユニットブロック2aは接続ケーブル31を介して第2のユニットブロック2bに接続されている。第2のユニットブロック2bは接続ケーブル32を介して第3のユニットブロック2cに接続され、第3のユニットブロック2cは接続ケーブル33を介して第4のユニットブロック2dに接続されている。したがって、このプログラマブルコントローラ1は、接続ケーブル31〜33によって各ユニットブロック2a〜2dを分散して配置することができる。
(3)マスタユニット20は、データリード時、データライト時に、アドレス信号Aを受け取ると、Lレベルのレディ信号RDY−Mを出力する。CPUユニット10は、Lレベルのレディ信号RDY−Mに基づいて、待機状態(Wait)となる。したがって、マスタユニット20とスレーブユニット21〜23により構成される増設バスEBUにおいて信号を伝送するとき、スレーブユニット21〜23に接続されたI/Oユニット11の処理に対して、CPUユニット10の動作や、CPUユニット10に直接的に接続されたI/Oユニット11の動作の同期を容易に保つことができる。
(4)マスタユニット20の制御回路41は、アドレス信号、リード信号RD、ライト信号WRと、増設ユニット間の通信情報(通信速度等)を含む32ビットのデータを、4個のブロックデータに分解する。そして、制御回路41は、4個のブロックデータCP,AP1〜AP3を順次出力する。また、データライト時に、制御回路41は、データ信号を2個のブロックデータに分解し、ブロックデータDP0,DP1を順次出力する。このように、アドレス信号A,データ信号D、制御信号等を、所定ビット数のブロックデータに分割してスレーブユニット21〜23に送信することで、接続ケーブル31〜33の芯数よりビット数が多いデータを容易に伝送することができる。
(5)マスタユニット20の送受信回路43は、8ビットの複合バスEADに対して、差動信号を出力する出力回路と、差動信号を入力する入力回路を含む。送受信回路43は、制御回路41から供給されるブロックデータに応じた8組の差動信号CAD[7:0]を出力する。また、送受信回路43は、8組の差動信号CAD[7:0]に応じたブロックデータを制御回路41に出力する。差動信号を用いることで、接続ケーブル31〜33を用いた増設ユニット20〜23の信号伝達における耐ノイズ性を向上することができる。
(6)マスタユニット20の送信回路51は、リセット信号RESETの振幅を大きくしたリセット信号RSTを接続ケーブル31に対して出力する。スレーブユニット21の受信回路71は、コンパレータ72、抵抗R26a,R26bを備えている。コンパレータ72は、リセット信号RSTと、高電位電圧VDsを抵抗R26a,R26bにより分圧した電圧の基準電圧Vr2とを比較し、比較結果に応じたリセット信号RESETを出力する。これにより、電圧変動や、伝送路(接続ケーブル)における電圧降下、伝送路に混入するノイズに対する誤動作を抑制することができる。
(7)終端判定信号に基づいて自ユニットが末端と判定したスレーブユニットのスレーブ制御回路は、マスタクロック信号MCLKを受信する受信回路64bの入力端子を終端抵抗R24により終端する。これにより、マスタユニット20に接続するスレーブユニットの数を容易に変更し、ユニットにより制御するユニットの数を容易に変更することができる。また、信号の反射によるノイズの発生を低減し、誤動作を防止することができる。
(8)スレーブ制御回路は、末端と判定した場合に、差動のスレーブオペレーション信号SOPを送信する送信回路65の出力端子を終端抵抗R25により終端する。マスタユニット20の制御回路は、スレーブオペレーション信号SOPに基づいて、スレーブユニット21〜23から送信されるブロックデータをラッチしてデータ信号を生成する。このため、終端抵抗R25により信号の反射によるノイズの発生を低減し、誤動作を防止することができる。
(9)マスタユニット20は、Lレベルの起動完了信号PS1に基づいて、接続されたスレーブユニット21〜23のうちに、電源が起動されていないユニットが存在すると判定し、待機状態となる。この待機状態において、マスタユニット20はたとえば電源起動のエラーを報知する。たとえば、図1において、マスタユニット20は、前面上部に表示部20cを備えている。表示部20cは、たとえば、液晶表示装置(LCD)や発光素子(LED)等を備えている。マスタユニット20は、表示部20cに電源起動のエラーを表示する。表示部20cの表示により、操作者(作業者)は、電源起動にエラーが発生していることを把握することができる。
(10)マスタユニット20は、スレーブユニット21〜23をイニシャルモードに設定する。そして、マスタユニット20は、3ビットの局番設定信号SN2,SN1,SN0を出力する。各スレーブユニット21〜23は、局番設定信号SN2,SN1,SN0に基づいて自ユニットの局番を設定する。したがって、設定ミスによる誤動作を防止することができる。
(11)マスタユニット20において、接続ケーブルが接続されるコネクタ20bの端子P1,P2におけるレベルは、ストレートケーブルが接続されている場合と、クロスケーブルが接続されている場合で異なる。つまり、マスタユニット20は、端子P1,P2のレベルにより、使用されている接続ケーブルの種類を判定する。クロスケーブルは、ストレートケーブルより長い。マスタユニット20は、接続ケーブルの種類(長さ)に応じて伝送レートを変更する。これにより、信号を確実に伝送することができる。
(別例)
尚、上記実施形態は、以下の態様で実施してもよい。
・上記実施形態に対し、4台以上のスレーブユニットを接続可能とするように変更してもよい。
・上記実施形態に対し、各スレーブユニット21〜23に対して接続可能なI/Oユニット11の数を変更してもよい。
・上記実施形態に対し、接続ケーブル31〜33の芯数を適宜変更してもよい。
・上記実施形態に対し、CPUユニット10により制御可能なユニットとして、演算ユニットや通信ユニットを周辺ユニットとして接続するようにしてもよい。
次に、上記実施形態及び別例から把握できる技術的思想を以下に記載する。
(イ)制御ユニットと第1の周辺ユニットとマスタユニットとを含む基本ブロックと、
スレーブユニットと第2の周辺ユニットとを含む複数の増設ブロックと、
を備え、
前記マスタユニットと複数の前記増設ブロックの前記スレーブユニットは、複数の接続ケーブルにより直列に接続され、
前記マスタユニットは、前記スレーブユニットに差動のクロック信号を送信し、
前記スレーブユニットは、前記接続ケーブルが接続される前記マスタユニット側の第1コネクタと、前記マスタユニットと逆側の第2コネクタと、前記クロック信号を受信する受信回路と、前記マスタユニットからの受信信号に基づいて生成した制御信号を前記第2の周辺ユニットに出力するスレーブ制御回路とを有し、
前記第1コネクタの第1の端子は第1抵抗によりプルダウンされ、
前記スレーブ制御回路は、前記第2コネクタにおいて、前記第1コネクタの第1の端子に対応する第2の端子のレベルにより自ユニットが末端か否かを判定し、末端と判定した場合に、前記受信回路の入力端子を終端抵抗により終端すること、
を特徴とするプログラマブルコントローラ。
1…プログラマブルコントローラ、2a…ユニットブロック(基本ブロック)、2b〜2d…ユニットブロック(増設ブロック)、10…CPUユニット(制御ユニット)、11…I/Oユニット(周辺ユニット)、20…増設ユニット(マスタユニット)、21〜23…増設ユニット(スレーブユニット)、41…マスタ制御回路、43…送受信回路(第1送信回路)、51…送信回路(第2送信回路)、61…スレーブ制御回路、63…送受信回路(第1受信回路)、64b…受信回路(第3受信回路)、65…送信回路、71…受信回路(第2受信回路)、CP…ブロックデータ、AP1〜AP3…ブロックデータ、DP0.DP1…ブロックデータ、A…アドレス信号、D…データ信号。

Claims (10)

  1. 制御ユニットと第1の周辺ユニットとマスタユニットとを含む基本ブロックと、
    スレーブユニットと第2の周辺ユニットとを含む増設ブロックと、
    前記マスタユニットと前記スレーブユニットとを接続する接続ケーブルと、
    を備え、
    前記制御ユニットは、前記第1の周辺ユニットを制御するとともに、前記マスタユニットと前記スレーブユニットを介して前記第2の周辺ユニットを制御し、
    前記マスタユニットは、前記スレーブユニットに差動信号を送信する複数の第1送信回路と、前記制御ユニットから出力される前記第2の周辺ユニットを指定するアドレス信号を含む複数ビットの制御信号を所定ビット単位で分割した複数のブロックデータを、前記複数の第1送信回路を用いて前記スレーブユニットに順次送信するマスタ制御回路を備え、
    前記スレーブユニットは、前記差動信号を受信する複数の第1受信回路と、前記第1受信回路にて順次受信した前記複数のブロックデータに基づいて複数ビットの制御信号を生成して前記第2の周辺ユニットに出力するスレーブ制御回路を備えること、
    を特徴とするプログラマブルコントローラ。
  2. 前記制御ユニットは、前記第2の周辺ユニットに対するライトデータを出力し、
    前記マスタ制御回路は、前記アドレス信号を受信して前記制御ユニットに対して第1レベルのレディ信号を出力し、前記制御信号に応じた複数のブロックデータを送信した後、前記ライトデータを前記所定ビット単位で分割した複数のブロックデータを前記複数の第1送信回路を用いて前記スレーブユニットに順次送信し、
    前記スレーブ制御回路は、前記第1受信回路にて順次受信した複数のブロックデータに基づいてライトデータを生成し、前記第2の周辺ユニットに出力した後、オペレーション信号を出力し、
    前記マスタ制御回路は、前記オペレーション信号に基づいて第2レベルの前記レディ信号を出力し、
    前記制御ユニットは、前記レディ信号が第1レベルの期間、待機状態となること、
    を特徴とする請求項1に記載のプログラマブルコントローラ。
  3. 前記マスタユニットは、前記マスタ制御回路の動作電圧より高い第2電圧が供給される第2送信回路を備え、前記第2送信回路は、前記マスタ制御回路の出力信号に基づいて前記第2電圧に基づいたレベルのシングルエンド信号を前記スレーブユニットに送信し、
    前記スレーブユニットは、前記第2電圧に基づく基準電圧と前記シングルエンド信号とを比較して受信信号を出力する第2受信回路を備えること、
    を特徴とする請求項1または2に記載のプログラマブルコントローラ。
  4. 複数の前記増設ブロックを備え、
    前記マスタユニットと複数の前記増設ブロックの前記スレーブユニットは、複数の前記接続ケーブルにより直列に接続されること、
    を特徴とする請求項1〜3のいずれか一項に記載のプログラマブルコントローラ。
  5. 前記マスタユニットは、前記スレーブユニットに差動のクロック信号を送信し、
    前記スレーブユニットは、前記接続ケーブルが接続される前記マスタユニット側の第1コネクタと、前記マスタユニットと逆側の第2コネクタと、前記クロック信号を受信する第3受信回路とを有し、
    前記第1コネクタの第1の端子は第1抵抗によりプルダウンされ、
    前記スレーブ制御回路は、前記第2コネクタにおいて、前記第1コネクタの第1の端子に対応する第2の端子のレベルにより自ユニットが末端か否かを判定し、末端と判定した場合に、前記第3受信回路の入力端子を終端抵抗により終端すること、
    を特徴とする請求項4に記載のプログラマブルコントローラ。
  6. 前記スレーブ制御回路は、末端と判定した場合に、差動のオペレーション信号を送信する送信回路の出力端子を終端抵抗により終端すること、を特徴とする請求項5に記載のプログラマブルコントローラ。
  7. 前記スレーブユニットは、前記第1コネクタの第2端子をプルダウンする第1抵抗と、
    前記第2コネクタの第2端子をプルアップする第2抵抗と、前記第2コネクタの第2端子のレベルに応じて前記第1コネクタの第2端子を駆動する駆動回路を備え、
    前記マスタユニットは、前記スレーブユニットの前記第コネクタの第2端子が接続される端子を介して入力する信号のレベルに基づいて、接続された全ての前記スレーブユニットの電源起動を判定すること、
    を特徴とする請求項5または6に記載のプログラマブルコントローラ。
  8. 前記マスタユニットは、前記スレーブユニットをイニシャルモードに設定し、複数ビットの局番設定信号に初期値を設定して送信し、所定時間経過後にラッチ信号を送信し、
    前記スレーブユニットは、前記第1コネクタから受信した前記局番設定信号の値に所定値を加算して前記第2コネクタを介して送信し、前記ラッチ信号に基づいて前記受信した局番設定信号の値を自ユニットの局番として記憶すること、
    を特徴とする請求項5〜7のいずれか一項に記載のプログラマブルコントローラ。
  9. 前記マスタユニットと前記スレーブユニットとの間、2つの前記スレーブユニットの間の接続には、両端のコネクタの第3端子と第4端子とが互いに接続された第1の接続ケーブル、または両端のコネクタの第3端子と第4端子とが交差して接続された第2の接続ケーブルが用いられ、
    前記スレーブユニットは、各コネクタにおいて、第3端子はプルダウンされ、第4端子はプルアップされ、
    前記マスタユニットは、前記スレーブユニットの第3端子に接続される端子はプルダウンされ、前記スレーブユニットの第4端子に接続される端子のレベルに応じて伝送速度を設定すること、
    を特徴とする請求項5〜8のいずれか一項に記載のプログラマブルコントローラ。
  10. 制御ユニットと第1の周辺ユニットとマスタユニットとを含む基本ブロックと、第2の周辺ユニットと前記マスタユニットに接続ケーブルを介して接続されたスレーブユニットとを含む増設ブロックと、を備えたプログラマブルコントローラの制御方法であって、
    前記制御ユニットは、前記第1の周辺ユニットを制御するとともに、前記マスタユニットと前記スレーブユニットを介して前記第2の周辺ユニットを制御し、
    前記マスタユニットは、前記スレーブユニットに差動信号を送信する複数の第1送信回路を備え、前記制御ユニットから出力される前記第2の周辺ユニットを指定するアドレス信号を含む複数ビットの制御信号を所定ビット単位で分割した複数のブロックデータを、前記複数の第1送信回路を用いて前記スレーブユニットに順次送信し、
    前記スレーブユニットは、前記差動信号を受信する複数の第2受信回路により順次受信した前記複数のブロックデータに基づいて複数ビットの制御信号を生成して前記第2の周辺ユニットに出力すること、
    を特徴とするプログラマブルコントローラの制御方法。
JP2014189170A 2014-09-17 2014-09-17 プログラマブルコントローラ、プログラマブルコントローラの制御方法 Active JP6482800B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014189170A JP6482800B2 (ja) 2014-09-17 2014-09-17 プログラマブルコントローラ、プログラマブルコントローラの制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014189170A JP6482800B2 (ja) 2014-09-17 2014-09-17 プログラマブルコントローラ、プログラマブルコントローラの制御方法

Publications (2)

Publication Number Publication Date
JP2016062254A true JP2016062254A (ja) 2016-04-25
JP6482800B2 JP6482800B2 (ja) 2019-03-13

Family

ID=55797809

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014189170A Active JP6482800B2 (ja) 2014-09-17 2014-09-17 プログラマブルコントローラ、プログラマブルコントローラの制御方法

Country Status (1)

Country Link
JP (1) JP6482800B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111913534A (zh) * 2019-05-09 2020-11-10 株式会社捷太格特 控制装置以及模块间通信方法

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02208704A (ja) * 1989-02-09 1990-08-20 Sharp Corp プログラマブルコントローラのi/oバス拡張装置
JPH02219105A (ja) * 1989-02-20 1990-08-31 Sanyo Electric Co Ltd プログラマブルコントローラ
JPH03286206A (ja) * 1990-03-31 1991-12-17 Sanyo Electric Co Ltd プログラマブル・コントローラ
JPH06214949A (ja) * 1993-01-20 1994-08-05 Canon Inc 通信装置及びその通信方法
JPH11232937A (ja) * 1998-02-17 1999-08-27 Sony Corp 異種インタフェース規格による装置間の接続ケーブル
JP2000021513A (ja) * 1998-04-27 2000-01-21 Alps Electric Co Ltd コネクタ装置ならびにデータ転送装置
JP2008257706A (ja) * 2007-03-09 2008-10-23 Omron Corp ビルディングブロック型の制御装置
JP2010028670A (ja) * 2008-07-23 2010-02-04 Hitachi Ulsi Systems Co Ltd シリアル通信システム
JP2011070444A (ja) * 2009-09-25 2011-04-07 Panasonic Electric Works Co Ltd プログラマブルコントローラ

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02208704A (ja) * 1989-02-09 1990-08-20 Sharp Corp プログラマブルコントローラのi/oバス拡張装置
JPH02219105A (ja) * 1989-02-20 1990-08-31 Sanyo Electric Co Ltd プログラマブルコントローラ
JPH03286206A (ja) * 1990-03-31 1991-12-17 Sanyo Electric Co Ltd プログラマブル・コントローラ
JPH06214949A (ja) * 1993-01-20 1994-08-05 Canon Inc 通信装置及びその通信方法
JPH11232937A (ja) * 1998-02-17 1999-08-27 Sony Corp 異種インタフェース規格による装置間の接続ケーブル
JP2000021513A (ja) * 1998-04-27 2000-01-21 Alps Electric Co Ltd コネクタ装置ならびにデータ転送装置
JP2008257706A (ja) * 2007-03-09 2008-10-23 Omron Corp ビルディングブロック型の制御装置
JP2010028670A (ja) * 2008-07-23 2010-02-04 Hitachi Ulsi Systems Co Ltd シリアル通信システム
JP2011070444A (ja) * 2009-09-25 2011-04-07 Panasonic Electric Works Co Ltd プログラマブルコントローラ

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111913534A (zh) * 2019-05-09 2020-11-10 株式会社捷太格特 控制装置以及模块间通信方法
JP2020184270A (ja) * 2019-05-09 2020-11-12 株式会社ジェイテクト 制御装置及びモジュール間通信方法
JP7326854B2 (ja) 2019-05-09 2023-08-16 株式会社ジェイテクト 制御装置及びモジュール間通信方法

Also Published As

Publication number Publication date
JP6482800B2 (ja) 2019-03-13

Similar Documents

Publication Publication Date Title
US8898358B2 (en) Multi-protocol communication on an I2C bus
US9953000B2 (en) Connecting multiple slave devices to single master controller in bus system
US9129064B2 (en) USB 3.0 link layer timer adjustment to extend distance
US10204065B2 (en) Methods and apparatus for a multiple master bus protocol
US20100064083A1 (en) Communications device without passive pullup components
US20120066423A1 (en) Inter-integrated circuit bus multicasting
JP7080143B2 (ja) バスシステムおよびバスシステムのためのスレーブユニット
KR101036444B1 (ko) 범용 직렬 버스 송신기
TW201201023A (en) Inter-Integrated Circuit device communication circuit
US10474604B2 (en) Transmitting universal serial bus (USB) data over alternate mode connection
US10585834B2 (en) I2C device extender for inter-board communication over a single-channel bidirectional link
JPWO2016120976A1 (ja) 通信装置及び方法
JP6482800B2 (ja) プログラマブルコントローラ、プログラマブルコントローラの制御方法
WO2016078357A1 (zh) 主机、主机管理从机的方法及系统
CN102298562A (zh) 一种线与仲裁总线互联的方法、装置和系统
US20060277331A1 (en) Communication using bit replication
CN109977051A (zh) 一种基于gpio扩展总线通道数量的方法和系统
CN116762064A (zh) 能够在线性模式和受限模式之间切换的转接驱动器
JP2019511776A (ja) ロボット用データ通信バス
US20080304484A1 (en) Method for operating multipoint control system
EP2677438A2 (en) Host electronic device and host determination method
CN114070666B (zh) 一种总线通讯接口电路及增强总线通讯效果的通信方法
US9645961B2 (en) Virtual media apparatus of a server and access method thereof
CN117369324A (zh) 一种微控制器与ssi绝对值编码器通信的电路及方法
Kanse et al. Protocol Converter (UART, I2C, manchester protocols to USB)

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170804

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180418

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180424

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20180625

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180823

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190205

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190213

R150 Certificate of patent or registration of utility model

Ref document number: 6482800

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250