(58)【調査した分野】(Int.Cl.,DB名)
【背景技術】
【0002】
プログラマブルコントローラは、いわゆるPLC(Programmable Logic Controller)であり、予め定められた順序または手続きに従って、制御の各段階を逐次進めていく制御装置である。例えばワークを加工する工作機械の周囲には、作業者の安全を確保するために工作機械と作業者の間を隔離する安全扉が設けられ、当該安全扉からやや離れた位置に工作機械による加工の開始を指示する加工開始ボタンが設けられ、加工開始ボタンの隣りに非常停止ボタンが設けられている場合がある。また安全扉には、扉が開状態か閉状態であるかを検出するリミットスイッチが設けられ、工作機械には加工の終了を検出する所定のセンサが設けられている場合がある。
【0003】
この場合、リミットスイッチからの信号と加工開始ボタンからの信号と非常停止ボタンからの信号と所定のセンサからの信号が、プログラマブルコントローラに入力され、工作機械の動作を開始させる動作開始制御信号と、工作機械の動作を停止させる動作停止制御信号が、プログラマブルコントローラから出力されている。そしてプログラマブルコントローラは、予め定められた順序を検出した場合(例えば、安全扉が閉められた後、加工開始ボタンがONとされたことを検出した場合)にのみ、制御の各段階を進める(例えば、工作機械の動作を開始させ、加工の終了を検出すると、工作機械の動作を停止させる)。また例えばプログラマブルコントローラは、非常停止ボタンが押されたことを検出した場合、あるいは安全扉が開状態となったことを検出した場合、工作機械が動作中である場合は強制的に工作機械を停止させる。
【0004】
例えばプログラマブルコントローラは、種々の工場において種々の工作機械に対応させて設けられており、設けられた工作機械と当該工作機械の周囲の各種ボタン、各種安全扉、各種の順序等に応じて、1品ずつ異なる構成とされている。例えば
図15に示す従来のプログラマブルコントローラ101は、モジュールを実装するための空間であるスロットが一方端の側から他方端の側へと複数設定されたベースユニット110と、ベースユニット110のスロットに着脱可能に実装する各種のモジュールと、にて構成されている。モジュールには種々の種類があり、例えば電源モジュール121、CPUモジュール122、通信モジュール124、入力モジュール125、出力モジュール126等がある。
【0005】
図15において、例えば電源モジュール121は、ベースユニット110に実装された各モジュールへ電力を供給するモジュールであり、通信モジュール124は、例えばLANを利用して他の機器と通信を行うためのモジュールである。また例えば入力モジュール125は、各種のボタンやスイッチ等の入力信号が入力されるモジュールであり、出力モジュール126は、各種の制御信号を出力するモジュールである。そしてCPUモジュール122は、搭載されたプログラムに従って入力モジュール125からの入力信号に応じて定められた順序等を判定し、出力モジュール126を介して制御信号を出力する。プログラマブルコントローラ101は、使用する環境に応じて必要とされるモジュールが選択され、選択されたモジュールがベースユニット110のスロットに着脱可能に実装されている。そして、定められた順序と、当該順序を検出した場合の制御の各段階等がプログラムされてCPUモジュール122に搭載されている。
【0006】
また
図15においてベースユニット110は、電源モジュール121からの電力を各モジュールに供給する配線や、モジュール間での通信用の配線や、各モジュールに設けられたモジュールコネクタと嵌合するスロットコネクタをスロット毎に有している。当該スロットコネクタにモジュールコネクタが嵌合されることでベースユニット110のスロットにモジュールが着脱可能に実装される。
【0007】
プログラマブルコントローラは、一般的に、ベースユニットの一方の端部のスロットに電源モジュールが実装され、電源モジュールに隣接する他方端の側のスロットにCPUモジュールが実装され、CPUモジュールに隣接する他方端の側のスロットから、通信モジュールや入力モジュールや出力モジュールが、空きスロットを設けることなく実装される。従来より、CPUモジュールを含めてCPUモジュールよりも他方端の側(通信領域に相当)に実装されたモジュールは、隣り合うモジュール同士で情報の送受信を行っている。
【0008】
図15に示すように、従来のプログラマブルコントローラ101では、電源モジュール121が一方端のスロットに実装され、通信領域120内では、一方端にCPUモジュール122が実装されている。そして通信領域120内においてCPUモジュール122から他方端の方向(この場合、Y軸方向)に向かって、通信モジュール124、入力モジュール125、出力モジュール126等が、空きスロットを設けることなく実装されている。プログラマブルコントローラ101は、通信領域120内において一方端の側(この場合、CPUモジュール122)から他方端の側(この場合、出力モジュール126)へと情報を順番に伝送する往路通信と、他方端の側(この場合、出力モジュール126)から一方端の側(この場合、CPUモジュール122)へと情報を順番に伝送する復路通信と、を行っている。
【0009】
図15に示す従来のプログラマブルコントローラ101において、往路通信は、CPUモジュール122から通信モジュール124へと情報を伝送する[1−1]通信と、通信モジュール124から入力モジュール125へと情報を伝送する[1−2]通信と、入力モジュール125から出力モジュール126へと情報を伝送する[1−3]通信と、が該当する。また
図15に示す従来のプログラマブルコントローラ101において、復路通信は、出力モジュール126から入力モジュール125へと情報を伝送する[2−1]通信と、入力モジュール125から通信モジュール124へと情報を伝送する[2−2]通信と、通信モジュール124からCPUモジュール122へと情報を伝送する[2−3]通信と、が該当する。
【0010】
従来では、例えば
図16に示すように、通信領域120内において、入力モジュール125と出力モジュール126との間に空きスロットを設けてしまうと、往路通信は、CPUモジュール122から通信モジュール124へと情報を伝送する[1−1]通信と、通信モジュール124から入力モジュール125へと情報を伝送する[1−2]通信とで完了してしまい、入力モジュール125から出力モジュール126への往路通信は行われない([1−3]通信にて、入力モジュール125の通信相手が見つからないため)。また復路通信は、入力モジュール125から通信モジュール124へと情報を伝送する[2−1]通信と、通信モジュール124からCPUモジュール122へと情報を伝送する[2−2]通信とで完了してしまい、出力モジュール126から入力モジュール125への復路通信は行われない。このため、従来では、通信領域120内において、
図15の例に示すようにモジュール間に空きスロットを設けないように一方端の側(この場合、左側)につめてモジュールを実装する必要があった。
【0011】
例えば特許文献1には、マザーボードに設けられた複数のスロットにモジュールを実装し、モジュール間のデータ伝送をリングバス方式で行うプログラマブルコントローラが開示されている。当該プログラマブルコントローラは、マザーボード(ベースユニットに相当)の所定数のコネクタに、リングバスをバイパスするためのバイパス機構を設け、空きスロットではバイパス機構にてリングバスをバイパスさせて、空きスロットの先に実装されたモジュールとリングバス方式にて通信することを可能としている。
【発明を実施するための形態】
【0024】
以下、本発明の実施の形態を、図面を用いて順に説明する。なおX軸、Y軸、Z軸が記載されている図では、X軸とY軸とZ軸は互いに直交している。そしてZ軸方向は上方に向かう鉛直方向を示しており、Y軸方向はベースユニット10の長手方向(一方端の側から他方端の側に向かう方向)を示しており、X軸方向はベースユニット10の正面方向を示している。
【0025】
●[ベースユニット10の構造と外観(
図1、
図2)]
ベースユニット10は、
図1及び
図2に示すように、基台11、プリント基板12、スロットコネクタ16A〜16H等を有している。基台11は、絶縁体の樹脂等にて板状に形成されており、プリント基板12には、スロットコネクタ16A〜16Hが実装されて、当該スロットコネクタが上方を向くように、基台11に設けられている。ベースユニット10には、後述するモジュールを実装するための空間であるスロット13A〜13Hが、一方端(この場合、
図2における左端)から他方端(この場合、
図2における右端)へと複数が設定されている。またスロット13A〜13Hのそれぞれには、モジュールに設けられたモジュールコネクタ(符号22C等、
図4参照)と嵌合するスロットコネクタ16A〜16Hのそれぞれが設けられている。
【0026】
スロット13A〜13Hのそれぞれに対して、基台11には、着脱可能に実装されたモジュールの支持を支援するための第1取付孔14A〜14H、第2取付孔15A〜15H、のそれぞれが設けられている。例えば
図4に示す入力モジュール25のモジュールコネクタ25Cが、スロット13Dのスロットコネクタ16Dに嵌合されることで、当該スロット13Dに入力モジュール25が実装された状態となる。そして、入力モジュール25の第1係止ツメ25Sが第1取付孔14Dに係止されて固定され、入力モジュール25の第2係止ツメ25Tが第2取付孔15Dに係止されて固定される。
【0027】
また、一方端のスロットであるスロット13Aは、例えば電源モジュール21(
図2参照)専用のスロットとして用意されている。そして、一方端のスロット13Aを除いたスロットであるスロット13B〜13Hを含む通信領域20は、互いに通信を行うためのモジュールが実装される複数のスロットを含む領域である。当該通信領域20内において、一方端のスロット13Bを含むスロット13Bとスロット13Cには、後述するCPUモジュール22(マスタモジュールに相当)が実装され、通信領域20内においてCPUモジュール22が実装されるスロット13B及びスロット13Cよりも他方端の側の複数のスロットであるスロット13C〜13Hの中の少なくとも1つのスロットには、後述するスレーブモジュールが実装される。なお、本実施の形態にて説明するCPUモジュール22は、2個分のスロットを占有する例を示している。
【0028】
●[モジュールの種類と外観(
図3〜
図5)]
モジュールには、
図3及び
図4に示すように、電源モジュール21、マスタモジュール(CPUモジュール22)、スレーブモジュール23(通信モジュール24、入力モジュール25、出力モジュール26等)が有り、機能に応じて複数の種類のモジュールが用意されている。
【0029】
電源モジュール21は、
図1に示すベースユニット10における一方端のスロット13Aに実装されるモジュールであり、ベースユニット10に必ず実装されるモジュールである。電源モジュール21の外観は
図3及び
図4に示すように、1個分のスロットのサイズを有し、モジュールコネクタ21C、第1係止ツメ21S、第2係止ツメ21Tを有している。電源モジュール21は、モジュールコネクタ21Cを介して、ベースユニット10に実装された各モジュールへ電力を供給するモジュールである。なお、電源モジュール21は、マスタモジュールでもスレーブモジュールでもない特殊なモジュールである。
【0030】
CPUモジュール22は、
図1に示す通信領域20内において最も一方端の側のスロット13Bを含む単数または複数のスロットに実装され、ベースユニット10に必ず実装されるモジュールである。本実施の形態のCPUモジュール22は、2個分のスロットを占有するサイズを有しているので、CPUモジュール22は、スロット13B及びスロット13Cに実装される。CPUモジュール22の外観は
図3及び
図4に示すように、2個分のスロットのサイズを有し、2個のモジュールコネクタ22C、2個の第1係止ツメ22S、2個の第2係止ツメ22Tを有している。CPUモジュール22は、搭載されたプログラムに従って、例えば、実装された通信モジュールを介して他の機器とLAN経由の通信を行い、実装された入力モジュールを介して各種の入力信号を取り込んで定められた順序等を判定し、実装された出力モジュールを介して制御信号を出力するモジュールである。またCPUモジュールは、マスタモジュールに相当している。マスタモジュールは、所定タイミングにて自身から他のモジュール(通信領域20内に実装されたモジュール)へと情報を伝送する通信を開始する機能を含むモジュールである。
【0031】
通信モジュール24は、
図1に示す通信領域20内においてマスタモジュールが実装されたスロットよりも他方端の側の複数のスロットの中のいずれかのスロットに実装されるモジュールである。なお、通信モジュール24は必須のモジュールではなく、作業者が必要と判断した場合にベースユニット10に実装されるモジュールである。通信モジュール24の外観は、
図3及び
図4に示すように、1個分のスロットのサイズを有し、モジュールコネクタ24C、第1係止ツメ24S、第2係止ツメ24Tを有している。通信モジュール24は、例えば、LANケーブルが接続され、当該LANに接続されている他の機器と通信(例えばEthernet(登録商標)通信)を行うためのモジュールである。また通信モジュール24は、スレーブモジュールに相当している。スレーブモジュールは、マスタモジュールまたは他のスレーブモジュールから通信にて受け取った情報を、他のスレーブモジュールまたはマスタモジュールへと伝送する通信を行う機能を含むモジュールである。
【0032】
入力モジュール25は、
図1に示す通信領域20内においてマスタモジュールが実装されたスロットよりも他方端の側の複数のスロットの中のいずれかのスロットに実装されるモジュールである。なお、入力モジュール25は必須のモジュールではなく、作業者が必要と判断した場合にベースユニット10に実装されるモジュールである。入力モジュール25の外観は、
図3及び
図4に示すように、1個分のスロットのサイズを有し、モジュールコネクタ25C、第1係止ツメ25S、第2係止ツメ25Tを有している。入力モジュール25は、例えば、各種のボタンやスイッチ等に接続され、各種の入力信号が入力され、当該入力信号をCPUモジュール22に伝えるためのモジュールである。また入力モジュール25は、上述したスレーブモジュールに相当している。
【0033】
出力モジュール26は、
図1に示す通信領域20内においてマスタモジュールが実装されたスロットよりも他方端の側の複数のスロットの中のいずれかのスロットに実装されるモジュールである。なお、出力モジュール26は必須のモジュールではなく、作業者が必要と判断した場合にベースユニット10に実装されるモジュールである。出力モジュール26の外観は、
図3及び
図4に示すように、1個分のスロットのサイズを有し、モジュールコネクタ26C、第1係止ツメ26S、第2係止ツメ26Tを有している。出力モジュール26は、例えば、CPUモジュール22からの各種の制御信号を出力するためのモジュールである。また出力モジュール26は、上述したスレーブモジュールに相当している。
【0034】
そしてスレーブモジュールは、
図1に示す通信領域20内においてマスタモジュールが実装されたスロットよりも他方端の側の複数のスロット(
図1の例では、スロット13D〜スロット13H)の中の少なくとも1つのスロットに実装されている。つまり、少なくとも1つのスレーブモジュールが選択されて、選択されたスレーブモジュールは、通信領域20内においてマスタモジュールが実装されたスロットよりも他方端の側の複数のスロットの中のいずれかに実装されている。なお、電源モジュール21とCPUモジュール22(マスタモジュール)は必須モジュールであり、上述したスロットに実装されている。
【0035】
図5に示す例は、スロットコネクタ16Aとモジュールコネクタ21Cとを嵌合させてスロット13A(
図1参照)に電源モジュール21を実装し、スロットコネクタ16B、16Cとモジュールコネクタ22Cとを嵌合させてスロット13B、13C(
図1参照)にCPUモジュール22を実装する様子を示している。また、スロットコネクタ16Dとモジュールコネクタ24Cとを嵌合させてスロット13D(
図1参照)に通信モジュール24を実装する様子を示している。また、スロットコネクタ16Eとモジュールコネクタ25Cとを嵌合させてスロット13E(
図1参照)に入力モジュール25を実装する様子を示している。また、スロットコネクタ16Fとモジュールコネクタ26Cとを嵌合させてスロット13F(
図1参照)に出力モジュール26を実装する様子を示している。
【0036】
●[スロットコネクタのピンと、プリント基板に設けられた往路通信配線と復路通信配線(
図6、
図7)]
上述したマスタモジュール及びスレーブモジュールにて行われる通信には、往路通信と、復路通信と、の2種類の通信があり、例えばEtherCAT通信が、この通信に該当する。往路通信は、通信領域20内に実装されたマスタモジュール(CPUモジュール22)から開始されて、通信領域20内に実装された一方端の側のモジュールから他方端の側のモジュールへと情報を順番に伝送する通信である。
図11及び
図12の例において、往路通信は、往路通信の開始である[1−1]通信、[1−2]通信、[1−3]通信にて、一方端の側のモジュールから他方端の側のモジュールへと、情報を順番に伝送する通信である。
【0037】
復路通信は、通信領域20内において最も他方端の側に実装されたスレーブモジュールである他方端モジュールが往路通信にて情報を受け取った後、当該他方端モジュールから開始されて、通信領域20内に実装された他方端の側のモジュールから一方端の側のモジュールへと、情報を順番に伝送する通信である。
図11及び
図12の例において、復路通信は、復路通信の開始である[2−1]通信、[2−2]通信、[2−3]通信にて、他方端の側のモジュールから一方端の側のモジュールへと、情報を順番に伝送する通信である。なお、
図11及び
図12の例において、通信領域20内において最も他方端の側に実装されたスレーブモジュール(この場合、出力モジュール26)は、往路通信である[1−3]通信にて一方端の側のモジュール(この場合、入力モジュール25)から受け取った情報を、往路通信(この場合、[1−4]通信)にて他方端の側のモジュールへ伝送を試みる。そして当該スレーブモジュールは、試みた往路通信(この場合、[1−4]通信)に応答が無いことを検知し、他方端の側にモジュールが実装されていないことを検知して、自身が他方端モジュールであると認識する。そして他方端モジュールは、復路通信の開始である[2−1]通信を行う。なお、他方端モジュールの検知方法の詳細については後述する。
【0038】
上述した往路通信を行うための配線である往路通信配線と、上述した復路通信を行うための配線である復路通信配線と、スロットコネクタに設けられているピンの例を
図6及び
図7に示す。
図6に示すように、スロットコネクタ16D、16Eは、複数のピン(D1〜D16、E1〜E16)を有しており、各ピンがプリント基板12にハンダ等にて接続されることで、スロットコネクタがプリント基板12に実装されている。また往路通信配線及び復路通信配線は、通信領域20内のスロットコネクタ16B〜16Hにおいて、マスタモジュールが実装されるスロットコネクタのうち、最も他方端の側となるスロットコネクタ(本実施の形態の例ではスロットコネクタ16C)から他方端のスロットコネクタ(本実施の形態の例ではスロットコネクタ16H)に設けられている。
【0039】
なお本実施の形態にて示す例では、各スロットコネクタは1番ピンから16番ピンまでの16個のピンを有している。ここで、左上のピンから反時計回りに順番に右上のピンまで、1番ピンから16番ピンまでを設定する。例えば
図7中において、スロットコネクタ16Dの左上のピンを1番ピンD1に設定し、左下のピンを8番ピンD8に設定し、右下のピンを9番ピンD9に設定し、右上のピンを16番ピンD16に設定する。
【0040】
ここで、
図7の例のスロットコネクタ16Dにおいて、自身に対して一方端の側に実装された最も近いモジュールから往路通信にて情報を受け取る際に使用する往路受け取りピンを、1番ピンD1と2番ピンD2とする。また当該スロットコネクタ16Dにおいて、自身に対して他方端の側に実装された最も近いモジュールへ往路通信にて情報を受け渡す際に使用する往路受け渡しピンを、16番ピンD16と15番ピンD15とする。また、当該スロットコネクタ16Dにおいて、自身に対して一方端の側に実装された最も近いモジュールから復路通信にて情報を受け取る際に使用する復路受け取りピンを、14番ピンD14と13番ピンD13とする。また、当該スロットコネクタ16Dにおいて、自身に対して他方端の側に実装された最も近いモジュールへ復路通信にて情報を受け渡す際に使用する復路受け渡しピンを、3番ピンD3と4番ピンD4とする。
【0041】
同様に、
図7の例のスロットコネクタ16Eにおいて、1番ピンE1と2番ピンE2を往路受け取りピンとして、16番ピンE16と15番ピンE15を往路受け渡しピンとする。同様に、スロットコネクタ16Eにおいて、14番ピンE14と13番ピンE13を復路受け取りピンとして、3番ピンE3と4番ピンE4を復路受け渡しピンとする。同様に、スロットコネクタ16Gにおいて、1番ピンG1と2番ピンG2を往路受け取りピンとして、16番ピンG16と15番ピンG15を往路受け渡しピンとする。同様に、スロットコネクタ16Gにおいて、14番ピンG14と13番ピンG13を復路受け取りピンとして、3番ピンG3と4番ピンG4を復路受け渡しピンとする。
【0042】
また、
図7の例のスロットコネクタ16C(マスタモジュールが実装されるスロットコネクタの中で最も他方端の側となるスロットコネクタ)において、自身に対して他方端の側に実装された最も近いモジュールへ往路通信にて情報を受け渡す際に使用する往路受け渡しピンを、16番ピンC16と15番ピンC15とする。また、当該スロットコネクタ16Cにおいて、自身に対して一方端の側に実装された最も近いモジュールから復路通信にて情報を受け取る際に使用する復路受け取りピンを、14番ピンC14と13番ピンC13とする。
【0043】
また、
図7の例のスロットコネクタ16H(通信領域20内において最も他方端の側のスロットコネクタ)において、自身に対して一方端の側に実装された最も近いモジュールから往路通信にて情報を受け取る際に使用する往路受け取りピンを、1番ピンH1と2番ピンH2とする。また、当該スロットコネクタ16Hにおいて、自身に対して他方端の側に実装された最も近いモジュールへ復路通信にて情報を受け渡す際に使用する復路受け渡しピンを、3番ピンH3と4番ピンH4とする。
【0044】
次に、往路通信配線について説明する。
図7に示すように、ベースユニットのプリント基板12には、通信領域20内において隣り合うスロットコネクタ16C、16Dにおける一方端の側のスロットコネクタ16Cの往路受け渡しピンである16番ピンC16と、他方端の側のスロットコネクタ16Dの往路受け取りピンである1番ピンD1と、を接続する往路通信配線Acdが設けられている。またプリント基板12には、一方端の側のスロットコネクタ16Cの往路受け渡しピンである15番ピンC15と、他方端の側のスロットコネクタ16Dの往路受け取りピンである2番ピンD2と、を接続する往路通信配線Bcdが設けられている。
【0045】
同様に、隣り合うスロットコネクタ16D、16Eについて、プリント基板12には、往路通信配線Ade、往路通信配線Bdeが設けられている。同様に、隣り合うスロットコネクタ16G、16Hについて、プリント基板12には、往路通信配線Agh、往路通信配線Bghが設けられている。
【0046】
次に、復路通信配線について説明する。
図7に示すように、ベースユニットのプリント基板12には、通信領域20内において隣り合うスロットコネクタ16H、16Gにおける他方端の側のスロットコネクタ16Hの復路受け渡しピンである3番ピンH3と、一方端の側のスロットコネクタ16Gの復路受け取りピンである14番ピンG14と、を接続する復路通信配線Cghが設けられている。またプリント基板12には、他方端の側のスロットコネクタ16Hの復路受け渡しピンである4番ピンH4と、一方端の側のスロットコネクタ16Gの復路受け取りピンである13番ピンG13と、を接続する復路通信配線Dghが設けられている。
【0047】
同様に、隣り合うスロットコネクタ16E、16Dについて、プリント基板12には、復路通信配線Cde、復路通信配線Ddeが設けられている。同様に、隣り合うスロットコネクタ16D、16Cについて、プリント基板12には、復路通信配線Ccd、復路通信配線Dcdが設けられている。
【0048】
なお、プリント基板12には、電源モジュールが実装されるスロットコネクタ16Aにおける例えば9番ピンA9から電源配線Hvが延ばされ、当該電源配線Hvは、各スロットコネクタの9番ピンに接続されている。従って、スロットコネクタに実装されたモジュールは、9番ピンから電力(Vcc)が供給される。またプリント基板には、電源モジュールが実装されるスロットコネクタ16Aにおける例えば8番ピンA8からアース配線Hgが延ばされ、当該アース配線Hgは、各スロットコネクタの8番ピンに接続されている。従って、スロットコネクタに実装されたモジュールは、8番ピンの電位を基準電位(GND)とする。
【0049】
また、通信領域20内において、マスタモジュールが実装されるスロットのスロットコネクタ(この場合、スロットコネクタ16Bとスロットコネクタ16C)と、他方端のスロットのスロットコネクタ(この場合、スロットコネクタ16H)と、除いたスロットのコネクタ(この場合、スロットコネクタ16D〜スロットコネクタ16G)において、それぞれのスロットコネクタの近傍には、後述する往路切替手段Da、Db、後述する復路切替手段Dc、Ddが設けられている。
【0050】
●[往路切替手段と復路切替手段の配置位置と接続(
図8〜
図10)]
次に
図8を用いて、往路切替手段Da、Dbと、復路切替手段Dc、Ddの、配置位置と接続について説明する。例えば往路切替手段Da、Dbと、復路切替手段Dc、Ddは、IC(集積回路)であり、同一のICが用いられている。
【0051】
図8に示すように、往路切替手段Da、Db、及び復路切替手段Dc、Ddは、開放状態と短絡状態とを切り替え可能な往路スイッチ回路、及び復路スイッチ回路であり、電源入力端子Vと、入出力端子S1、S2と、入力端子ENとを有している。電源入力端子Vには、電源モジュールから供給される電源である電源配線Hvが接続されている。すなわち、往路切替手段Da、Db、及び復路切替手段Dc、Ddは、ベースユニットのプリント基板に設けられた電源配線Hvから電源が供給されている。
【0052】
また往路切替手段Da、Db、及び復路切替手段Dc、Ddは、プリント基板12におけるスロットコネクタ16Dとは反対側(すなわち、裏側)の面にハンダ等にて実装されている。そして往路切替手段Daは1番ピンD1(往路受け取りピン)と16番ピンD16(往路受け渡しピン)との間に実装され、往路切替手段Dbは2番ピンD2(往路受け取りピン)と15番ピンD15(往路受け渡しピン)との間に実装されている。また復路切替手段Dcは14番ピンD14(復路受け取りピン)と3番ピンD3(復路受け渡しピン)との間に実装され、復路切替手段Ddは13番ピンD13(復路受け取りピン)と4番ピンD4(復路受け渡しピン)との間に実装されている。
【0053】
往路切替手段Da、Db(往路スイッチ回路)、及び復路切替手段Dc、Dd(復路スイッチ回路)は、入力端子ENの電位がLowレベルの場合に短絡状態となり、入力端子ENの電位がHighレベルの場合に開放状態となるスイッチである。また入力端子ENは、抵抗Rを介してGND(基準電位)に接続されているとともに、例えば12番ピンD12に接続されている。そして往路切替手段Daの入出力端子S1は、往路通信配線Acdが接続された1番ピンD1に接続されており、往路切替手段Daの入出力端子S2は、往路通信配線Adeが接続された16番ピンD16に接続されている。同様に、往路切替手段Dbの入出力端子S1は、往路通信配線Bcdが接続された2番ピンD2に接続されており、往路切替手段Dbの入出力端子S2は、往路通信配線Bdeが接続された15番ピンD15に接続されている。同様に、復路切替手段Dcの入出力端子S1は、復路通信配線Ccdが接続された3番ピンD3に接続されており、復路切替手段Dcの入出力端子S2は、復路通信配線Cdeが接続された14番ピンD14に接続されている。同様に、復路切替手段Ddの入出力端子S1は、復路通信配線Dcdが接続された4番ピンD4に接続されており、復路切替手段Ddの入出力端子S2は、復路通信配線Ddeが接続された13番ピンD13に接続されている。
【0054】
図9に示すように、12番ピンD12は、スロットコネクタ16Dに対応するスロットにモジュール(
図9の例では通信モジュール24)が実装されている場合は、実装されたモジュールから電力(Vcc)(切替信号に相当)が供給されるピンである。つまり、スロットコネクタにモジュールが実装されている場合、往路切替手段Daの入力端子ENには12番ピンD12から電力(Vcc)が入力され、入力端子ENの電位はHighレベルに維持され、往路スイッチ回路は開放状態とされる。従って、
図9の例では、通信モジュール24が実装されているので、1番ピンD1と16番ピンD16は開放されている。このため、実装された通信モジュール24は、往路通信配線Acdと1番ピンD1を介して一方端の側に実装された最も近いモジュールから情報を受け取る往路通信を行うことが可能であり、16番ピンD16と往路通信配線Adeを介して他方端の側に実装された最も近いモジュールへ情報を受け渡す往路通信を行うことが可能である。
【0055】
また、
図10に示すように、スロットコネクタ16Dに対応するスロットにモジュールが実装されていない場合は、12番ピンD12には何も入力がない。この場合、往路切替手段Daの入力端子ENは、抵抗Rを介してGND(基準電位)に接続されているだけであるので、電位はLowレベルに維持され、往路スイッチ回路は短絡状態とされる。従って、
図10の例では、モジュールが実装されていないので、1番ピンD1と16番ピンD16は短絡されている。このため、往路通信配線Acdと往路通信配線Adeが短絡される。
【0056】
往路切替手段Dbも同様に、スロットコネクタにモジュールが実装されている場合(
図9参照)、2番ピンD2と15番ピンD15は開放される。従って、実装された通信モジュール24は、往路通信配線Bcdと2番ピンD2を介して一方端の側に実装された最も近いモジュールから情報を受け取る往路通信を行うことが可能であり、15番ピンD15と往路通信配線Bdeを介して他方端の側に実装された最も近いモジュールへ情報を受け渡す往路通信を行うことが可能である。また、スロットコネクタにモジュールが実装されていない場合(
図10参照)、2番ピンD2と15番ピンD15は短絡され、往路通信配線Bcdと往路通信配線Bdeが短絡される。
【0057】
復路切替手段Dcも同様に、スロットコネクタにモジュールが実装されている場合(
図9参照)、14番ピンD14と3番ピンD3は開放される。従って、実装された通信モジュール24は、復路通信配線Cdeと14番ピンD14を介して他方端の側に実装された最も近いモジュールから情報を受け取る復路通信を行うことが可能であり、3番ピンD3と復路通信配線Ccdを介して一方端の側に実装された最も近いモジュールへ情報を受け渡す復路通信を行うことが可能である。また、スロットコネクタにモジュールが実装されていない場合(
図10参照)、14番ピンD14と3番ピンD3は短絡され、復路通信配線Cdeと復路通信配線Ccdが短絡される。
【0058】
復路切替手段Ddも同様に、スロットコネクタにモジュールが実装されている場合(
図9参照)、13番ピンD13と4番ピンD4は開放される。従って、実装された通信モジュール24は、復路通信配線Ddeと13番ピンD13を介して他方端の側に実装された最も近いモジュールから情報を受け取る復路通信を行うことが可能であり、4番ピンD4と復路通信配線Dcdを介して一方端の側に実装された最も近いモジュールへ情報を受け渡す復路通信を行うことが可能である。また、スロットコネクタにモジュールが実装されていない場合(
図10参照)、13番ピンD13と4番ピンD4は短絡され、復路通信配線Ddeと復路通信配線Dcdが短絡される。
【0059】
●[本願における往路通信と復路通信の例(
図11〜
図14)]
図11の例は、通信領域20内のスロット13B、13CにCPUモジュール22が実装され、スロット13Dに通信モジュール24が実装され、スロット13Eに入力モジュール25が実装され、スロット13Fに出力モジュール26が実装されたプログラマブルコントローラ1の例を示している。
図11の例は、通信領域20内において、最も一方端の側にCPUモジュール22(マスタモジュール)を実装し、各モジュールの間に空きスロットが形成されていない場合(一方端の側に詰めている場合)の例を示している。
【0060】
この場合、往路通信は、CPUモジュール22から通信モジュール24への[1−1]通信にて開始され、通信モジュール24から入力モジュールへの[1−2]通信、入力モジュール25から出力モジュール26への[1−3]通信、が順番に行われる。これにより、通信領域20内に実装されたモジュールにおいて、一方端の側のモジュールから他方端の側のモジュールへと情報が順番に伝送される。そして出力モジュール26は、[1−4]通信にて通信相手がいないことを検出して(
図11の例では、スロット13Gは空きスロットなので、
図10に示すようにバイパスされる)、自身が他方端モジュールであると認識する。なお、スレーブモジュールが、自身が最も他方端の側のモジュールであるか否かを判定するための上記の[1−4]通信は、上述したように往路通信の1つとして行ってもよいし、往路通信とは異なる適当なタイミングにて行ってもよい(例えば起動時に1回だけ行うようにしてもよい)。
【0061】
ここで、
図13、
図14を用いて、他方端モジュールの検知方法の詳細について説明する。
図13、
図14は、
図11における入力モジュール25の内部構造(往路通信と復路通信に関する構造)、出力モジュール26の内部構造(往路通信と復路通信に関する構造)、往路通信配線Ade、Aef、Afg、Agh、復路通信配線Cgh、Cfg、Cef、Cdeの模式図を示している。
【0062】
図13、
図14に示すように、入力モジュール25は、モジュールコネクタ25C、ファイ25E、25J、通信コントローラ25F(例えばEtherCATコントローラ)、ループバック制御部25G、25H等を有している。ファイ25E、25Jは、通信コントローラ25Fが扱うデジタルデータをシリアルデータに変換して外部に送信し、外部から受信したシリアルデータをデジタルデータに変換して通信コントローラ25Fに受け渡す。ループバック制御部25G、25Hは、例えば通信コントローラ25Fから開放状態または短絡状態とされるスイッチである。通信コントローラ25Fは、ファイ25E、25Jを介して往路通信と復路通信を行う。なお、出力モジュール26も同様に、モジュールコネクタ26C、ファイ26E、26J、通信コントローラ26F、ループバック制御部26G、26H等を有している。
【0063】
図13に示すように、入力モジュール25に搭載されている通信コントローラ25Fは、自身が搭載されている入力モジュール25の起動時あるいは往路通信による情報の受け渡しの際において、他方端の側のモジュールに、接続確認用(検知用)のデータの送信あるいは往路通信である[1−3]通信を、ファイ25Jを介して実行する。ファイ25Jは、応答が帰ってきた場合は応答されたデータを、応答が帰ってこなかった場合は応答なしに関するデータを、通信コントローラ25Fに受け渡す。そして通信コントローラ25Fは、復路通信配線等から応答が帰ってきた場合(
図13の場合、出力モジュール26から応答が帰ってくる)、自身が搭載されているモジュールは他方端モジュールでないと判定する。通信コントローラ25Fは、自身が搭載されている入力モジュール25が他方端モジュールでないと判定している場合、ループバック制御部25G、25Hのスイッチを開放状態とする。これにより、往路通信である[1−2]通信にてファイ25Eを介して通信コントローラ25Fに受け取られた情報は、ループバック制御部26G、26Hを通ってファイ25Jへと導かれ(
図13中の(A)参照)、ファイ25Jから次のモジュールへと受け渡される。このように通信コントローラ25Fは、往路通信である[1−2]通信にて、往路通信配線Ade、スロットコネクタ16E、モジュールコネクタ25C、ファイ25Eを介して情報を受け取る。そして通信コントローラ25Fは、受け取った情報を、往路通信である[1−3]通信にて、ファイ25J、モジュールコネクタ25C、スロットコネクタ16E、往路通信配線Aefを介して、他方端の側のモジュール(この場合、出力モジュール26)に受け渡す。
【0064】
また
図13に示すように、出力モジュール26に搭載されている通信コントローラ26Fは、自身が搭載されている出力モジュール26の起動時あるいは往路通信による情報の受け渡しの際において、他方端の側のモジュールに、接続確認用(検知用)のデータの送信あるいは往路通信である[1−4]通信を、ファイ26Jを介して実行する(
図13中の(1)参照)。ファイ26Jは、応答が帰ってきた場合は応答されたデータを、応答が帰ってこなかった場合は応答なしに関するデータ(
図13中の(2)参照)を、通信コントローラ26Fに受け渡す。そして通信コントローラ26Fは、復路通信配線等から応答が帰ってこない場合(
図13の場合、応答は帰ってこない)、自身が搭載されているモジュールは他方端モジュールであると判定する。通信コントローラ26Fは、自身が搭載されている出力モジュール26が他方端モジュールであると判定している場合、例えばループバック制御部26Gのスイッチを開放状態にして、ループバック制御部26Hのスイッチを短絡状態とする(
図13中の(3)参照)。これにより、往路通信である[1−3]通信にてファイ26Eを介して通信コントローラ26Fに受け取られた情報は、ループバック制御部26Hによってファイ26Eへと折り返され(
図13中の(B)参照)、ファイ26Eを介して復路通信である[2−1]通信が実行される。このように通信コントローラ26Fは、往路通信である[1−3]通信にて、往路通信配線Aef、スロットコネクタ16F、モジュールコネクタ26C、ファイ26Eを介して情報を受け取る。そして通信コントローラ26Fは、受け取った情報を、復路通信である[2−1]通信にて、ファイ26E、モジュールコネクタ26C、スロットコネクタ16F、復路通信配線Cefを介して、一方端の側のモジュール(この場合、入力モジュール25)に受け渡す。
【0065】
なお
図14は、出力モジュール26から開始された復路通信である[2−1]通信に続いて、入力モジュール25にて復路通信である[2−2]通信が実行される様子を示している。入力モジュール25に搭載されている通信コントローラ25Fは、自身が搭載されている入力モジュール25が他方端モジュールでないと判定しているので、ループバック制御部25G、25Hのスイッチを開放状態としている。これにより、復路通信である[2−1]通信にてファイ25Jを介して通信コントローラ25Fに受け取られた情報は、ループバック制御部25H、25Gを通ってファイ25Eへと導かれ(
図14中の(C)参照)、ファイ25Eから次のモジュールへと受け渡される。このように通信コントローラ25Fは、復路通信である[2−1]通信にて、復路通信配線Cef、スロットコネクタ16E、モジュールコネクタ25C、ファイ25Jを介して情報を受け取る。そして通信コントローラ25Fは、受け取った情報を、復路通信である[2−2]通信にて、ファイ25E、モジュールコネクタ25C、スロットコネクタ16E、復路通信配線Cdeを介して、一方端の側のモジュールに受け渡す。
【0066】
上記のように、他方端モジュールであると認識した出力モジュール26は、復路通信を開始し、自身から入力モジュール25への[2−1]通信、入力モジュール25から通信モジュール24への[2−2]通信、通信モジュール24からCPUモジュール22への[2−3]通信、が順番に行われる。これにより、通信領域20内に実装されたモジュールにおいて、他方端の側のモジュールから一方端の側のモジュールへと情報が順番に伝送される。
【0067】
図12の例は、通信領域20内のスロット13B、13CにCPUモジュール22が実装され、スロット13Dに通信モジュール24が実装され、スロット13Eに入力モジュール25が実装され、スロット13Fが空きスロットとされ、スロット13Gに出力モジュール26が実装されたプログラマブルコントローラ1Aの例を示している。
図12の例は、通信領域20内において、最も一方端の側にCPUモジュール22(マスタモジュール)を実装し、いずれかのモジュールの間に空きスロットが形成されている(この場合、入力モジュール25と出力モジュール26との間に空きスロットが形成されている)場合の例を示している。なお、従来では、
図16に示すように、空きスロットを隔てた出力モジュール126は往路通信も復路通信も行われなかったが、本願では、空きスロットを隔てた出力モジュール26は往路通信も復路通信も適切に行われる。
【0068】
この場合、往路通信は、CPUモジュール22から通信モジュール24への[1−1]通信にて開始され、通信モジュール24から入力モジュールへの[1−2]通信、入力モジュール25から出力モジュール26への[1−3]通信、が順番に行われる。空きスロットであるスロット13Fでは、
図10に示すように、往路通信配線が短絡されるので、[1−3]通信が行われる。これにより、通信領域20内に実装されたモジュールにおいて、モジュール間に空きスロットが形成されていても、一方端の側のモジュールから他方端の側のモジュールへと情報が順番に伝送される。そして出力モジュール26は、[1−4]通信にて通信相手がいないことを検出して、自身が他方端モジュールであると認識する。
【0069】
そして他方端モジュールであると認識した出力モジュール26は、復路通信を開始し、自身から入力モジュール25への[2−1]通信、入力モジュール25から通信モジュール24への[2−2]通信、通信モジュール24からCPUモジュール22への[2−3]通信、が順番に行われる。空きスロットであるスロット13Fでは、
図10に示すように、復路通信配線が短絡されるので、[2−1]通信が行われる。これにより、通信領域20内に実装されたモジュールにおいて、モジュール間に空きスロットが形成されていても、他方端の側のモジュールから一方端の側のモジュールへと情報が順番に伝送される。
【0070】
本実施の形態にて説明したプログラマブルコントローラ1、1Aでは、
図7に示す往路通信配線Acd−Ade−Aef−Afg−Agh、往路通信配線Bcd−Bde−Bef−Bfg−Bghは、プリント基板12上において直線状に設けられるようにスロットコネクタのピンが選定されている。同様に、
図7に示す復路通信配線Ccd−Cde−Cef−Cfg−Cgh、復路通信配線Dcd−Dde−Def−Dfg−Dghは、プリント基板12上において直線状に設けられるようにスロットコネクタのピンが選定されている。また、往路切替手段Da、Dbは、往路受け取りピンと往路受け渡しピンとの間に実装されており、復路切替手段Dc、Ddは、復路受け取りピンと復路受け渡しピンとの間に実装されている。
【0071】
このため、
図7に示すように、スロットコネクタ16Cの16番ピンC16からの往路通信の経路は、往路通信配線Acd−往路切替手段Da−往路通信配線Ade−往路切替手段Ea−往路通信配線Aef−(スロットコネクタ16Fの往路切替手段)−往路通信配線Afg−往路切替手段Ga−往路通信配線Aghとなり、直線状となる。同様に、スロットコネクタ16Cの15番ピンC15からの往路通信の経路は、往路通信配線Bcd−往路切替手段Db−往路通信配線Bde−往路切替手段Eb−往路通信配線Bef−(スロットコネクタ16Fの往路切替手段)−往路通信配線Bfg−往路切替手段Gb−往路通信配線Bghとなり、直線状となる。
【0072】
同様に、スロットコネクタ16Cの14番ピンC14への復路通信の経路は、復路通信配線Ccd−復路切替手段Dc−復路通信配線Cde−復路切替手段Ec−復路通信配線Cef−(スロットコネクタ16Fの復路切替手段)−復路通信配線Cfg−復路切替手段Gc−復路通信配線Cghとなり、直線状となる。同様に、スロットコネクタ16Cの13番ピンC13への復路通信の経路は、復路通信配線Dcd−復路切替手段Dd−復路通信配線Dde−復路切替手段Ed−復路通信配線Def−(スロットコネクタ16Fの復路切替手段)−復路通信配線Dfg−復路切替手段Gd−復路通信配線Dghとなり、直線状となる。
【0073】
このため、往路通信の経路、復路通信の経路は、すべて直線状であり、かつ、ぼぼ等長とされている。通信配線が屈曲している場合や、並列した通信配線の長さが異なる場合では、信号の反射が発生し易くノイズの要因となり易い。しかし本実施の形態のプログラマブルコントローラでは、通信配線を屈曲させる要因となるスイッチ回路(往路切替手段、復路切替手段)を、プリント基板の反対側の面に配置(かつピンとピンの間に配置)することで、通信配線の直線化を簡単にできる。従って、ノイズ等の影響を回避して、より信頼性の高い往路通信及び復路通信を行うことができる。
【0074】
本発明のプログラマブルコントローラ1、1Aは、本実施の形態にて説明した構造、構成、外観、形状等に限定されるものではなく、本発明の要旨を変更しない範囲で種々の変更、追加、削除が可能である。例えばベースユニットのスロットの数や、モジュールの種類等は、本実施の形態にて説明したものに限定されるものではない。
【0075】
また本実施の形態では、2本の往路通信配線と、2本の復路通信配線を有するプログラマブルコントローラの例を説明したが、1本の往路通信配線と1本の復路通信配線を有するプログラマブルコントローラとしてもよい。
【0076】
本実施の形態の説明では、往路通信と復路通信を用いる通信の例として、EtherCAT通信を用いて説明したが、EtherCAT通信に限定されるものではなく、本発明は、往路通信と復路通信を有する通信を用いた種々のプログラマブルコントローラに適用可能である。