(57)【要約】【課題】  オプションモジュールの実装枚数に制限を加えることなく、コントローラと制御機器間のデータの受け渡しを確実に行い、またＰＬＣモジュールのサンプリング周期とオプションモジュールと制御機器間の通信周期の同期を行う【解決手段】  第１ＣＰＵは第１割込信号を元にサンプリング周期を生成し、サンプリング周期発生時第２割込信号を生成し、オプションモジュールは第２割込信号を受けるとＰＬＣモジュールが共有メモリにセットしたデータを内部メモリに格納してデータ格納完了信号を生成し、通信周期発生回路は第１割込信号を受けると第１割込信号に同期してオプションモジュールと制御機器のデータ送受信を行う通信周期を発生させて第３割込信号を生成し、第２ＣＰＵは第３割込信号を受けると制御機器に送信するデータを算出して送信し、ＰＬＣモジュールはオプションモジュールのデータ格納完了信号を受けてユーザプログラムを実行する。【選択図】図１
2006048284.tif 000002
【特許請求の範囲】
【請求項１】
プログラマブルコントローラ装置としての機能を有するＰＬＣモジュールと、制御機器にデータを通信で渡す機能を有するオプションモジュールを備え、前記オプションモジュールと前記制御機器間は前記オプションモジュールからのデータを確実に制御機器まで渡すことができるように定周期で通信を行う機能を有するプログラマブルコントローラ装置において、
前記ＰＬＣモジュールにおいて定周期に割込信号１を発生させる手段と、前記割込信号１を元にサンプリング周期を発生させる手段と、前記サンプリング周期毎に前記ＰＬＣモジュールが割込信号２を発生させる手段と、前記割込信号１をオプションモジュールに入力する手段と、オプションモジュールにおいて前記割込信号１を分周する手段と、前記割込信号２が入力されたときに分周カウンタをリセットする手段と、前記割込信号１を分周した周期に同期してオプションモジュールと制御機器の送受信を行う通信周期を発生させる手段と、前記ＰＬＣモジュールと前記オプションモジュールでデータの受け渡しを行う手段と、前記オプションモジュールが前記ＰＬＣモジュールのデータを格納したことを前記ＰＬＣモジュールに知らせる手段とを有し、
前記割込信号２が入力された時に、前記オプションモジュールが前記ＰＬＣモジュールのデータを格納し、制御機器に送信するデータを算出して、通信周期ごとにデータを制御機器に送信し、前記ＰＬＣモジュールは同ＰＬＣモジュールのデータをオプションモジュールが取り込むまでは、ユーザプログラムを実行せず待機状態を保持し、前記オプションモジュールからのデータ格納完了信号により、ユーザプログラムを前記ＰＬＣモジュールが実行することにより、前記ＰＬＣモジュールと前記オプションモジュールの同期がとられることを特徴とするプログラマブルコントローラ装置。
【請求項２】
第１水晶発振子が生成する第１クロックに基づいて第１割込信号を生成する基準周期発生回路と、前記第１クロックで動作し、前記第１割込信号を計数してサンプリング周期を生成するとともに第２割込信号を生成し、バスを介して外部とデータを授受する第１ＣＰＵと、を備えたＰＬＣモジュールと、前記第１割込信号を分周する分周回路と、通信周期発生回路と、第２水晶発振子が生成する第２クロックで動作する第２ＣＰＵと、制御機器と通信するデータ送受信回路と、を備えて、前記第２割込信号に同期して前記データを授受するオプションモジュールと、からなり、前記オプションモジュールのデータを定周期の通信によって前記制御機器に渡すことができるプログラマブルコントローラ装置とオプションモジュールとの同期方法において、
（１）前記第１ＣＰＵは、前記第１割込信号を受けるとソフトウェアにて割込回数の計数を行い、基準周期の整数倍であるサンプリング周期発生回であれば、前記第２割込信号を生成するとともに、前記オプションモジュールとのデータ受け渡しを行い、
（２）前記オプションモジュールは、前記第２割込信号を受けると前記ＰＬＣモジュールが共有メモリにセットしたデータを内部メモリに格納して、データ格納完了信号を生成し、
（３）前記分周回路は、前記第１割込信号を計数し、設定された分周回数に達すると前記通信周期発生回路への外部同期信号を生成し、
（４）前記通信周期発生回路は、前記第１割込信号に同期してオプションモジュールと制御機器のデータ送受信を行う通信周期を発生させて第３割込信号を生成し、
（５）前記第２ＣＰＵは、前記第３割込信号を受けると、前記制御機器に送信するデータを算出して、送信し、
（６）前記ＰＬＣモジュールは、前記オプションモジュールのデータ格納完了信号を受けて、ユーザプログラムを実行する
という手順で処理されることを特徴とするプログラマブルコントローラ装置とオプションモジュールとの同期方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御機器とのデータの受け渡しを定周期の通信で行う機能を有するプログラマブルコントローラ装置に関する。
【背景技術】
【０００２】
一般に、モジュール型のＰＬＣ装置は図４のような構成をしている。図において、１はプログラム入力装置であり、アプリケーションプログラムＳ１を作成して出力する。２はＰＬＣモジュールであり、アプリケーションプログラムＳ１の処理手順に従い、オプションモジュール３との間でバスを通して入出力データＳ２を授受する。データの授受を行うタイミング、すなわちサンプリング周期は、一般にＰＬＣモジュール２に搭載された水晶発振子が生成するクロックを元にして作成される。
【０００３】
オプションモジュール３は、動作の異なる複数種の中から任意のモジュールを複数枚実装できる。オプションモジュール３のなかには通信データＳ３を定周期の通信周期で送受信することにより、複数の制御機器４、５を制御する種類も含まれる。この場合、サンプリング周期はオプションモジュール３に搭載された通信周期発生回路の信号を元にして作成される。
【０００４】
サンプリング周期と通信周期の作成法には２種類がある。ＰＬＣモジュール２に搭載された水晶発振子が生成するクロックを元にしてサンプリング周期を作成する場合のＰＬＣ装置の構成を図５に示す（例えば、特許文献１参照）。図において、２はＰＬＣモジュールであり、プログラマブルコントローラ装置としての機能を有している。一般にＰＬＣモジュール２は、外部の信号を取り込むための入力部５０と、外部へ信号を出力するための出力部５１、データメモリ部５２と、アプリケーションプログラムを記憶しているプログラムメモリ部５４と、プログラムメモリ部５４に格納された制御プログラムに従って演算する演算部（ＣＰＵ）５３から構成される。ＣＰＵ５３は水晶発振子５５が生成するクロック信号に基づいて動作する。５６はサンプリング周期発生回路であり、水晶発振子５５のクロック信号を元にユーザが設定したサンプリング周期を作成し、割込信号Ｓ４を出力する。割込信号Ｓ４がＣＰＵ５３に入力されたときは、プログラマブルコントローラ装置の入力、出力と演算を実行する。そしてデータの入出力が完了すれば、オプションモジュールに割込み信号Ｓ５を出力する。
【０００５】
３はオプションモジュールであり、ＰＬＣモジュール２がセットしたデータを自モジュール内に格納するためのメモリ６５と、ＰＬＣモジュール２のデータＳ２、割込信号Ｓ５を受けるための共有メモリ６０、水晶発振子６４で動作するＣＰＵ６１と、制御機器とデータＳ３を授受するデータ送受信回路６２、サンプリング周期発生回路５６の割込信号Ｓ４に同期してオプションモジュール３と制御機器間の通信周期を生成する通信周期発生回路６３から構成される。共有メモリ６０は、ＰＬＣモジュール２のデータＳ２をメモリ６５に格納した時にＰＬＣモジュール２にデータＳ２の取り込みが完了したことを知らせるデータ格納完了Ｓ７を格納している。また、通信周期発生回路６３の出力が割込信号Ｓ６としてオプションモジュール３のＣＰＵ６１に入力される。
【０００６】
オプションモジュール３に搭載された通信周期発生回路６３からの信号を元にしてサンプリング周期を作成する場合のＰＬＣ装置の構成について、図６を用いて説明する。図５と異なり、オプションモジュール３と制御機器との間のデータ入出力はデータ送受信回路６２によって実行され、データを送受信する周期は通信周期発生回路６３により作成される。ＰＬＣモジュール２と制御機器との間でデータの整合性をとるために、通信周期発生回路６３の割込信号Ｓ６を、オプションモジュール３のＣＰＵ６１とＰＬＣモジュール２のサンプリング周期発生回路５６に同時に入力する。ＰＬＣモジュール２は自モジュール内の水晶発振子からの信号を使うことなくオプションモジュール３内にある通信周期発生回路６３の割込信号を使用してサンプリング周期を作成する。
【０００７】
このようなモジュール型のＰＬＣ装置においては、ＰＬＣモジュールとオプションモジュールは、それぞれＣＰＵを搭載し、そのＣＰＵは一般に別々の発振器のクロックで動作する。図５に示したようなＰＬＣ装置では、サンプリング周期を基準にして通信周期を生成するため、サンプリング周期と通信周期を同期させるには、サンプリング周期が通信周期のｎ倍または１／ｎ倍（ｎは正の整数）でなければならないという制約がある。また、複数のオプションモジュール３を使用し、それぞれ異なる通信周期を設定する場合、サンプリング周期は各通信周期の公倍数としなければならず、実用上問題があった。
【０００８】
一方、図６に示したようなＰＬＣ装置では、サンプリング周期が通信周期のｎ倍（ｎは正の整数）でなければならないという制約がある。また、必ず図６に示した機能を持つオプションモジュール３が実装されなければならないが、１枚しか搭載できないといった問題があった。
【特許文献１】特開２００３−２０２９０７号公報（第５−７頁、図１）
【発明の開示】
【発明が解決しようとする課題】
【０００９】
そこで本発明は、オプションモジュールの実装枚数に制限を加えることなく、コントローラと制御機器間のデータの受け渡しを確実に行うことができ、またＰＬＣモジュールのサンプリング周期とオプションモジュールと制御機器間の通信周期との同期を行うことができ、サンプリング周期と通信周期の設定の制約を意識する必要がないプログラマブルコントローラ装置を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記問題を解決するため、本発明のプログラマブルコントローラ装置は、次のようにしたのである。
請求項１に記載の発明は、プログラマブルコントローラ装置としての機能を有するＰＬＣモジュールと、制御機器にデータを通信で渡す機能を有するオプションモジュールを備え、前記オプションモジュールと前記制御機器間は前記オプションモジュールからのデータを確実に制御機器まで渡すことができるように定周期で通信を行う機能を有するプログラマブルコントローラ装置において、前記ＰＬＣモジュールにおいて定周期に割込信号１を発生させる手段と、前記割込信号１を元にサンプリング周期を発生させる手段と、前記サンプリング周期毎に前記ＰＬＣモジュールが割込信号２を発生させる手段と、前記割込信号１をオプションモジュールに入力する手段と、オプションモジュールにおいて前記割込信号１を分周する手段と、前記割込信号２が入力されたときに分周カウンタをリセットする手段と、前記割込信号１を分周した周期に同期してオプションモジュールと制御機器の送受信を行う通信周期を発生させる手段と、前記ＰＬＣモジュールと前記オプションモジュールでデータの受け渡しを行う手段と、前記オプションモジュールが前記ＰＬＣモジュールのデータを格納したことを前記ＰＬＣモジュールに知らせる手段とを有し、前記割込信号２が入力された時に、前記オプションモジュールが前記ＰＬＣモジュールのデータを格納し、制御機器に送信するデータを算出して、通信周期ごとにデータを制御機器に送信し、前記ＰＬＣモジュールは同ＰＬＣモジュールのデータをオプションモジュールが取り込むまでは、ユーザプログラムを実行せず待機状態を保持し、前記オプションモジュールからのデータ格納完了信号により、ユーザプログラムを前記ＰＬＣモジュールが実行することにより、前記ＰＬＣモジュールと前記オプションモジュールの同期がとられることを特徴とするものである。
請求項２に記載の発明は、第１水晶発振子が生成する第１クロックに基づいて第１割込信号を生成する基準周期発生回路と、前記第１クロックで動作し、前記第１割込信号を計数してサンプリング周期を生成するとともに第２割込信号を生成し、バスを介して外部とデータを授受する第１ＣＰＵと、を備えたＰＬＣモジュールと、前記第１割込信号を分周する分周回路と、通信周期発生回路と、第２水晶発振子が生成する第２クロックで動作する第２ＣＰＵと、制御機器と通信するデータ送受信回路と、を備えて、前記第２割込信号に同期して前記データを授受するオプションモジュールと、からなり、前記オプションモジュールのデータを定周期の通信によって前記制御機器に渡すことができるプログラマブルコントローラ装置とオプションモジュールとの同期方法において、
（１）前記第１ＣＰＵは、前記第１割込信号を受けるとソフトウェアにて割込回数の計数を行い、基準周期の整数倍であるサンプリング周期発生回であれば、前記第２割込信号を生成するとともに、前記オプションモジュールとのデータ受け渡しを行い、
（２）前記オプションモジュールは、前記第２割込信号を受けると前記ＰＬＣモジュールが共有メモリにセットしたデータを内部メモリに格納して、データ格納完了信号を生成し、
（３）前記分周回路は、前記第１割込信号を計数し、設定された分周回数に達すると前記通信周期発生回路への外部同期信号を生成し、
（４）前記通信周期発生回路は、前記第１割込信号に同期してオプションモジュールと制御機器のデータ送受信を行う通信周期を発生させて第３割込信号を生成し、
（５）前記第２ＣＰＵは、前記第３割込信号を受けると、前記制御機器に送信するデータを算出して、送信し、
（６）前記ＰＬＣモジュールは、前記オプションモジュールのデータ格納完了信号を受けて、ユーザプログラムを実行する
という手順で処理されることを特徴とするものである。
【発明の効果】
【００１１】
本発明によれば、ＰＬＣモジュールが払い出すデータを、オプションモジュールを介して、確実に制御機器まで渡すことができ、モジュール型の制御装置で同期制御が可能となる効果がある。
また、１枚のオプションモジュールで接続可能な制御機器を超える制御装置において、必要数分のオプションモジュールを追加しても、ＰＬＣモジュールに同期させているので、ＰＬＣモジュールが払い出すデータを、複数のオプションモジュールを介して、確実に制御機器まで渡すことができ、複数のオプションモジュールを備えた多数の制御機器を使用した制御装置で同期制御が可能となる効果がある。
また、基準周期を元にサンプリング周期、通信周期を生成する事から、複数のオプションモジュールでそれぞれ異なる通信周期を設定してもサンプリング周期に同期させることができ、サンプリング周期と通信周期との制約を意識する必要がなくなるという効果がある。
【発明を実施するための最良の形態】
【００１２】
以下、本発明の方法の具体的実施例について、図に基づいて説明する。
【実施例１】
【００１３】
図１は、本発明の方法を適用する制御装置の構成を示すブロック図である。図において、１００はＰＬＣモジュールであり、プログラマブルコントローラ装置としての機能を有している。一般にプログラマブルコントローラ装置は、外部の信号を取り込むための入力部１０と、外部へ信号を出力するための出力部１１、データメモリ部１２、ユーザプログラムを記憶しているプログラムメモリ部１４、前記プログラムメモリ部に格納された制御プログラムに従って演算する演算部（ＣＰＵ）１３から構成される。ＣＰＵ１３は水晶発振子１５が生成するクロック信号に基づいて動作する。１６は基準周期発生回路であり、ＰＬＣモジュール処理の基準となる周期に従って割込信号Ｓ１４を出力する。基準周期発生回路１６の出力信号である割込信号Ｓ１４がＣＰＵ１３に入力されると、入力回数をソフトウェアにて計数し、基準周期の整数倍として設定されたサンプリング周期を生成する。サンプリング周期発生時は、オプションモジュールに割込み信号Ｓ１５を出力し、プログラマブルコントローラ装置の入力、出力と演算を実行する。２００はオプションモジュールであり、ＰＬＣモジュールがセットしたデータを自モジュール内に格納するためのメモリ２５と、共有メモリ２０、水晶発振子２４のクロックに基づいて動作するＣＰＵ２１、制御機器にデータＳ１１を送信するデータ送受信回路２２、基準周期発生回路１６の割込信号Ｓ１４を計数し、設定された分周回数に達すると外部同期信号を通信周期発生回路２３に出力する分周回路２６と、外部同期信号に同期してオプションモジュール２００と制御機器間の通信周期を生成する通信周期発生回路２３から構成される。分周回路２６は割込み信号Ｓ１５で計数値をリセットする事が可能である。共有メモリ２０は、ＰＬＣモジュール１００のデータＳ１１をメモリ２５に格納した時にＰＬＣモジュール１００にデータＳ１１の取り込みが完了したことを知らせるデータ格納完了Ｓ１２を格納している。また、通信周期発生回路２３の出力が割込信号Ｓ１３としてオプションモジュール２００のＣＰＵ２１に入力される。
【００１４】
図２は、本発明の実施例におけるサンプリング周期に同期した通信周期を発生する通信周期発生回路２３の動作を説明する図であり、サンプリング周期が通信周期より遅い場合と速い場合、及び、サンプリング周期が通信周期の整数倍で無い場合に分けて説明する。基準周期は０．５ｍｓである。遅い場合の例ではサンプリング周期を４ｍｓ、通信周期を２ｍｓとし、サンプリング周期を通信周期の２倍としている。この場合、基準周期８周期でサンプリング周期となり、基準周期４周期が通信周期となる。基準周期を分周回路で計数し、設定された分周比に達したとき外部同期信号を通信周期発生回路２３に出力する事で、基準周期に同期した通信周期が発生する。サンプリング周期毎に分周回路２６にリセット信号Ｓ１５が入力され、計数値がリセットされる。サンプリング周期に同期して分周回路２６がリセットされることにより、サンプリング周期と通信周期が同期することになる。なお、リセット信号Ｓ１５による分周回路２６のリセットは、分周回路が外部同期信号を通信周期発生回路２３に出力した後に行なわれるようにハードウェアにて設定されている。一方、速い場合の例ではサンプリング周期を１ｍｓ、通信周期を２ｍｓとし、サンプリング周期が通信周期の１／２倍としている。この場合、基準周期２周期でサンプリング周期となり、基準周期４周期が通信周期となる。基準周期を分周回路で計数し、設定された分周比に達したとき外部同期信号を通信周期発生回路２３に出力する事で、基準周期に同期した通信周期が発生する。サンプリング周期２回に１回、分周回路２６にリセット信号Ｓ１５が入力され、計数値がリセットされる。サンプリング周期に同期して分周回路２６がリセットされることにより、サンプリング周期と通信周期が同期することになる。分周回路２６へのリセット信号Ｓ１５の入力は、サンプリング周期と通信周期の設定に応じ、ソフトウェアにて制御する。また一方、サンプリング周期が通信周期の整数倍でない場合の例ではサンプリング周期を３ｍｓ、通信周期を２ｍｓとし、サンプリング周期が通信周期の３／２倍としている。この場合、サンプリング周期と通信周期の最小公倍数となる周期で分周回路２６にリセット信号Ｓ１５が入力されるよう、ソフトウェア、あるいはハードウェアにて制御する。基準周期６周期でサンプリング周期となり、基準周期４周期が通信周期となる。基準周期を分周回路で計数し、設定された分周比に達したとき外部同期信号を通信周期発生回路２３に出力する事で、基準周期に同期した通信周期が発生する。サンプリング周期と通信周期の最小公倍数は６ｍｓであるため、サンプリング周期２回に１回、分周回路２６にリセット信号Ｓ１５が入力され、計数値がリセットされる。サンプリング周期に同期して分周回路２６がリセットされることにより、サンプリング周期と通信周期が同期することになる。
【００１５】
図３は、ＰＬＣモジュール１００の基準周期発生回路１６から割込信号Ｓ１４が入力され、サンプリング周期が発生し割込信号Ｓ１５がオプションモジュールに出力された時のオプションモジュール２００とＰＬＣモジュール１００のソフトウェアの動作、およびオプションモジュール２００の通信周期発生回路２３から割込信号Ｓ１３が入力された時のオプションモジュール２００のソフトウェアの動作を説明した図である。図において、割込信号Ｓ１４がＰＬＣモジュール１００に入力されると、ＰＬＣモジュール１００はサンプリング周期を発生させ、割込信号Ｓ１５をオプションモジュールに出力し、外部機器への出力を行い（ステート１０）、オプションモジュール２００のデータ格納完了待ちとなる（ステート１１）。オプションモジュール２００からデータ格納完了Ｓ１２が共有メモリ２０にセットされると、外部機器からの入力を行い（ステート１２）、プログラムメモリ部１４に格納されたユーザプログラムが実行され、そのユーザプログラムの中で時々刻々のデータが共有メモリ２０にセットされる（ステート１３）。一方、オプションモジュール２００は、割込信号Ｓ１５が入力されると、まず制御機器からの入力データを共有メモリ２０に出力し（ステート２０）、ＰＬＣモジュール１００が共有メモリ２０にセットしたデータを自モジュール内のメモリ２５に格納する。このデータを積算して、送信開始時点からの総データ量とする（ステート２１）。格納が完了すると、データ格納完了Ｓ１２を共有メモリ２０にセットして、データの取り込みが完了したことをＰＬＣモジュール１００に知らせる（ステート２２）。
また、オプションモジュールは、割込信号Ｓ１３が入力されると、総データ量から今回送信するデータを作成して（ステート３０）、送受信回路２２にセットし制御機器に送信する（ステート３１）。
【００１６】
以上述べたように本発明によれば、ＰＬＣモジュールが払い出すデータを、オプションモジュールを介して、確実に制御機器まで渡すことができ、モジュール型の制御装置で同期制御が可能となる効果がある。また、１枚のオプションモジュールで接続可能な制御機器を超える制御装置において、必要数分のオプションモジュールを追加しても、ＰＬＣモジュールに同期させているので、ＰＬＣモジュールが払い出すデータを、複数のオプションモジュールを介して、確実に制御機器まで渡すことができ、複数のオプションモジュールを備えた多数の制御機器を使用した制御装置で同期制御が可能となる効果がある。また、基準周期を元にサンプリング周期、通信周期を生成する事から、複数のオプションモジュールでそれぞれ異なる通信周期を設定してもサンプリング周期に同期させることができ、サンプリング周期と通信周期との制約を意識する必要がなくなるという効果がある。
【図面の簡単な説明】
【００１７】
【図１】本発明の方法を適用するプログラマブルコントローラ装置のブロック図
【図２】分周回路と通信周期発生回路の動作説明図
【図３】ＰＬＣモジュールとオプションモジュールの動作説明図
【図４】一般的なモジュール型ＰＬＣ装置の概略構成図
【図５】従来の方法を適用するプログラマブルコントローラ装置のブロック図
【図６】従来の方法を適用するプログラマブルコントローラ装置のブロック図
【符号の説明】
【００１８】
１  プログラム入力装置
２、１００  ＰＬＣモジュール
３、２００  オプションモジュール
４、５  制御機器
１０、５０  入力部
１１、５１  出力部
１２、５２  データメモリ部
１３、２１、５３、６１  ＣＰＵ
１４、５４  プログラムメモリ部
１５、２４、５５、６４  水晶発振子
１６  基準周期発生回路
２０、６０  共有メモリ
２２、６２  データ送受信回路
２３、６３  通信周期発生回路
２５、６５  メモリ
２６  分周回路
５６  サンプリング周期発生回路
【図１】
2006048284.tif 000003
【図２】
2006048284.tif 000004
【図３】
2006048284.tif 000005
【図４】
2006048284.tif 000006
【図５】
2006048284.tif 000007
【図６】
2006048284.tif 000008