(57)【要約】【課題】負荷に対してＣＰＵモジュールのＣＰＵが性能的に不足しても、当該負荷を高速で処理することができるようにすること。【解決手段】ＣＰＵモジュール２３に高速シリアル通信を行うシリアル転送インターフェース３ｂを搭載する一方、少なくとも２つの周辺モジュール２５，２７にＣＰＵ２５ａ，２７ａと高速シリアル通信を行うシリアル転送インターフェース２５ｂ，２７ｂとを搭載すると共に、これらモジュール２３，２５，２７のシリアル転送インターフェース２３ｂ，２５ｂ，２７ｂを高速シリアルバス２９で接続してなり、ＣＰＵモジュール２３内蔵ＣＰＵ２３ａの負荷処理を上記シリアル転送インターフェースと高速シリアルバスとを用いて周辺モジュール２５，２７内蔵ＣＰＵ２５ａ，２７ａで分散処理するシステム。【選択図】図３
2008287617.tif 000002
【特許請求の範囲】
【請求項１】
ＣＰＵモジュールに高速シリアル通信を行うシリアル転送インターフェースを搭載する一方、複数の周辺モジュールにＣＰＵと高速シリアル通信を行うシリアル転送インターフェースとを搭載すると共に、これらモジュールのシリアル転送インターフェースを高速シリアルバスで接続してなり、ＣＰＵモジュール内蔵ＣＰＵの負荷処理を上記シリアル転送インターフェースと高速シリアルバスとを用いて上記複数の周辺モジュール内蔵ＣＰＵで分散処理することを特徴とするＰＬＣ負荷分散処理システム。
【請求項２】
上記シリアル転送インターフェースが、ＰＣＩエキスプレス（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ  Ｅｘｐｒｅｓｓ）であり、上記高速シリアルバスがＰＣＩエキスプレスバスである、ことを特徴とする請求項１に記載のＰＬＣ負荷分散処理システム。
【請求項３】
任意のモジュールは、他の複数のモジュールに高速シリアルバスを介してモジュール情報をシリアルに渡すと共に、別の任意のモジュールは、他の複数のモジュールから高速シリアルバスを介してモジュール情報をシリアルに受け取ると共に受け取った個々のモジュール情報を元にして自己に関与する演算ないしは計算を当該自己が行うことにより、当該ＰＬＣシステム全体の負荷を分散し並列処理することが可能になっている、ことを特徴とする請求項１または２に記載のＰＬＣ負荷分散処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラマブルコントローラ（ＰＬＣ）の負荷を分散処理するＰＬＣ負荷分散処理システムに関する。
【背景技術】
【０００２】
従来から、生産工場等に設置されるファクトリーオートメーション（ＦＡ）の制御装置として、プログラマブルコントローラが用いられている。このプログラマブルコントローラには、複数のモジュールから構成されるビルディングブロックタイプのものがある。
【０００３】
この複数のモジュールとしては、ＣＰＵモジュールと、その周辺モジュールとして、電源モジュール、入力モジュール、出力モジュール、通信モジュール等がある。
【０００４】
以上のビルディングブロックタイプのプログラマブルコントローラにおいては、その高速化の要求が高まっているが、既存のプログラマブルコントローラではＣＰＵモジュール内蔵ＣＰＵの処理能力に依存しているために、周辺の負荷に対してＣＰＵモジュールのＣＰＵの性能が不足する場合、プログラマブルコントローラの処理速度が低下し、その高速化に限界があった。
【特許文献１】特開２００５−２５９０７９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
したがって、本発明により解決すべき課題は、負荷に対してＣＰＵモジュールのＣＰＵが性能的に不足しても、当該負荷を高速で処理することができるようにすることである。
【課題を解決するための手段】
【０００６】
本発明によるＰＬＣ負荷分散処理システムは、ＣＰＵモジュールに高速シリアル通信を行うシリアル転送インターフェースを搭載する一方、複数の周辺モジュールにＣＰＵと高速シリアル通信を行うシリアル転送インターフェースとを搭載すると共に、これらモジュールのシリアル転送インターフェースを高速シリアルバスで接続してなり、ＣＰＵモジュール内蔵ＣＰＵの負荷処理を上記シリアル転送インターフェースと高速シリアルバスとを用いて上記複数の周辺モジュール内蔵ＣＰＵで分散処理することを特徴とするものである。
【０００７】
上記シリアル転送インターフェースが、ＰＣＩエキスプレスであり、上記高速シリアルバスがＰＣＩエキスプレスバスである、ことが好ましい。
【０００８】
任意のモジュールは、他の複数のモジュールに高速シリアルバスを介してモジュール情報をシリアルに渡すと共に、別の任意のモジュールは、他の複数のモジュールから高速シリアルバスを介してモジュール情報をシリアルに受け取ると共に受け取った個々のモジュール情報を元にして自己に関与する演算ないしは計算を当該自己が行うことによりシステム全体で負荷分散を行い並列処理することが可能になっていることが好ましい。
【発明の効果】
【０００９】
本発明によれば、ＣＰＵモジュール内蔵ＣＰＵの負荷処理をシリアル転送インターフェースと高速シリアルバスとを用いて周辺モジュール内蔵ＣＰＵで分散処理するので、ＣＰＵモジュール内蔵ＣＰＵの処理能力だけに依存することなく、また、周辺の負荷に対してそのＣＰＵの性能が不足しても、ＰＬＣ全体の処理速度を向上させて高速化を図ることができるようになる。
【発明を実施するための最良の形態】
【００１０】
以下、添付した図面を参照して、本発明の実施の形態に係るＰＬＣ負荷分散処理システムを説明すると、図１は、実施の形態のＰＬＣの概略構成を示す。このＰＬＣ１は、複数のモジュールから構成されるビルディングブロックタイプである。複数のモジュールとしては、ＣＰＵモジュール３と、その周辺モジュールとして、電源モジュール５、入力モジュール７、出力モジュール９、通信モジュール１１である。
【００１１】
ＣＰＵモジュール３は、内部にＣＰＵ、Ｉ／Ｏメモリ、プログラムメモリ等を有し、このＣＰＵは、入力モジュール７で入力した信号をＩ／Ｏメモリに取り込むＩＮリフレッシュ処理を行い、プログラムメモリ内のシーケンスプログラムに基づき演算実行し、その演算実行結果をＩ／Ｏメモリに書き込んで出力モジュール９に送り出すＯＵＴリフレッシュ処理を行い、その後、通信モジュール１１を介して通信ネットワーク上の他のＰＬＣとデータ送受信を行ったり、ＣＰＵモジュール３に備えられた通信ポートを介して外部のＰＣ等とデータ送受信などを行ったりする周辺処理を行う一連の処理をサイクリックに繰り返す（例えば特許文献１参照）。入力モジュール７にはセンサ等が、出力モジュール９にはアクチュエータ等が接続される。センサ等は制御装置の状態をセンシングしそのモジュール情報を入力モジュール７に入力し、アクチュエータ等は出力モジュール９からの出力に応答して制御装置を駆動する。
【００１２】
以上のＰＬＣシステムにおいて、本実施の形態では、ＣＰＵモジュールに対して入力モジュールと出力モジュールとを周辺モジュールとし、その周辺モジュールにもＣＰＵを搭載すると共に、ＣＰＵモジュール内蔵ＣＰＵの負荷を周辺モジュール内蔵ＣＰＵで分散処理してＣＰＵモジュール内蔵ＣＰＵの性能が不足しても、ＰＬＣ全体としての高速化を達成可能としたものである。
【００１３】
以下、図２および図３を参照して実施の形態のＰＬＣ負荷分散処理システムを説明する。図２はＣＰＵモジュール２１と２つの周辺モジュール２５，２７とを示す。
【００１４】
ＣＰＵモジュール２３はＣＰＵ２３ａ、ＰＣＩ−ＳＩＧ（PCI Special Interest Group）においてその規格が策定管理されたＰＣＩエキスプレスによる高速シリアル転送インターフェース２３ｂを備える。周辺モジュール２５，２７は、ＣＰＵ２５ａ，２７ａ、高速シリアル転送インターフェース２５ｂ，２７ｂを備える。これら高速シリアル転送インターフェース２３ｂ，２５ｂ，２７ｂは、高速シリアルバス２９で接続されている。なお、周辺モジュール２５，２７にプログラムを搭載し、単体でも使用可能としてもよい。
【００１５】
以上のように、ＰＬＣ２１は、当該ＰＬＣ２１に対する負荷を分散処理するため、ＣＰＵモジュール２３に高速シリアル通信を行う高速シリアル転送インターフェース２３ａを搭載する一方、他の周辺モジュール２５，２７にＣＰＵ２７ａと高速シリアル通信を行う高速シリアル転送インターフェース２５ｂ，２７ｂとを搭載すると共に、これらモジュール２３，２７の高速シリアル転送インターフェース２３ｂ，２５ｂ，２７ｂを高速シリアルバス２９で接続され、ＣＰＵモジュール２３の内蔵ＣＰＵ２３ａの負荷処理を高速シリアル転送インターフェース２３ｂ，２５ｂ，２７ｂと高速シリアルバス２９とを用いて周辺モジュール２５，２７に内蔵のＣＰＵ２５ａ，２７ａで分散処理するようになっている。
【００１６】
次に図３を参照して負荷分散処理を説明すると、任意のモジュールの１つであるＣＰＵモジュール２３は、他の２つの任意のモジュールである周辺モジュール２５，２７に高速シリアルバス２９を介してモジュール情報をシリアルに渡し、別の任意のモジュールである周辺モジュール２５は、他の２つのモジュールであるＣＰＵモジュール２３と周辺モジュール２５とから高速シリアルバス２９を介してモジュール情報をシリアルに受け取る。ここで♯１は、周辺モジュール２５、♯２は、周辺モジュール２７を示す。すなわち、ＣＰＵモジュール２３は周辺モジュール２５，２７にモジュール情報を渡し、周辺モジュール２５は周辺モジュール２７とＣＰＵモジュール２３にモジュール情報を渡し、周辺モジュール２７はＣＰＵモジュール２３と周辺モジュール２５にモジュール情報を渡す。一方、ＣＰＵモジュール２３は周辺モジュール２５，２７からモジュール情報を受け取り、周辺モジュール２５はＣＰＵモジュール２３と周辺モジュール２７からモジュール情報を受け取り、周辺モジュール２７はＣＰＵモジュール２３と周辺モジュール２５からモジュール情報を受け取る。
【００１７】
そして、モジュール情報を受け取ったＣＰＵモジュール２３、周辺モジュール２５，２７それぞれは、受け取った個々のモジュール情報を元にして自己に関与する演算ないしは計算を当該自己が行うことにより、当該ＰＬＣ１全体の負荷を分散し並列処理することができるようになっている。
【００１８】
以上のモジュール情報の渡し、受け取りは周辺モジュール数は２つでかつ１レーンで説明したが、周辺モジュールの数が増大しても、また、レーン数が増大しても基本は同様である。例えばＣＰＵモジュール、周辺モジュール区別なく、単にモジュールと称すると、モジュール数が３つ以上では、１つのモジュールから他のすべてのモジュールにモジュール情報を渡し、１つのモジュールは他のすべてのモジュールからモジュール情報を受け取り、受け取った個々のモジュール情報を元にして自己に関与する演算ないしは計算を当該自己が行うことにより、当該ＰＬＣ１全体の負荷を分散し並列処理する。
【００１９】
以上説明したように実施の形態では、ＣＰＵモジュール２３内蔵ＣＰＵ２３ａの負荷処理を周辺モジュール２５，２７内蔵ＣＰＵ２５ａ，２７ａで分散処理するので、ＰＬＣ２１全体の処理速度を向上させて高速化を図ることができるようになる。
【００２０】
なお、上記の場合、重い負荷はＣＰＵモジュール２３側のＣＰＵ２３ａをメインＣＰＵに位置づけてこれに実行させ、軽い負荷は周辺モジュール２５，２７側のＣＰＵ２５ａ，２５ｂをサブＣＰＵに位置づけてこれらに実行させるようにプログラムを分割したり、あるいは、未使用のモジュールでＣＰＵが空いているものに対しても負荷を分散処理することが好ましい。
【図面の簡単な説明】
【００２１】
【図１】図１はビルディングブロックタイプＰＬＣの概略構成を示す図である。
【図２】図２は実施の形態のＰＬＣ負荷分散処理システムを適用するモジュールを示す図である。
【図３】図３は図２のモジュール構成において実施の形態の負荷分散処理を説明するための図である。
【符号の説明】
【００２２】
２１  ＰＬＣ
２３  ＣＰＵモジュール
２３ａ  ＣＰＵ
２３ｂ  高速シリアル転送インターフェース
２５  周辺モジュール
２５ａ  ＣＰＵ
２５ｂ  高速シリアル転送インターフェース
２７  周辺モジュール
２７ａ  ＣＰＵ
２７ｂ  高速シリアル転送インターフェース
【図１】
2008287617.tif 000003
【図２】
2008287617.tif 000004
【図３】
2008287617.tif 000005