(57)【要約】【課題】オプションモジュールの実装枚数に制限を加えることなく、コントローラと制御機器間のデータの受け渡しを確実に行うことができるようにする。【解決手段】ＰＬＣモジュールにおいて定周期に割込信号１を発生させる手段と、割込信号１をサンプリング周期とする手段と、ＰＬＣモジュールとオプションモジュールでデータの受け渡しを行う手段と、ＰＬＣモジュールがオプションモジュールとのデータ受け渡しを完了した時に同期信号を発生させる手段と、同期信号をオプションモジュールに入力する手段と、オプションモジュールにおいて同期信号を元に定周期に割込信号２とステータス信号を発生させる手段と、割込信号２が入力された時にステータス信号を判別する手段と、オプションモジュールがＰＬＣモジュールのデータを格納したことをＰＬＣモジュールに知らせる手段とを備える。【選択図】　図１
2004102791.tif 000002
【特許請求の範囲】
【請求項１】
プログラマブルコントローラとしての機能を有するＰＬＣモジュールと、制御機器とデータの入出力を行う機能を有するオプションモジュールを備え、前記オプションモジュールと前記制御機器間は前記オプションモジュールからのデータを確実に制御機器まで渡すことができるように定周期でデータの入出力を行う機能を有する装置において、
前記ＰＬＣモジュールにおいて定周期に割込信号１を発生させる手段と、
前記割込信号１をサンプリング周期とする手段と、
前記ＰＬＣモジュールと前記オプションモジュールでデータの受け渡しを行う手段と、
前記ＰＬＣモジュールがオプションモジュールとのデータ受け渡しを完了した時に同期信号を発生させる手段と、
前記同期信号をオプションモジュールに入力する手段と、
オプションモジュールにおいて前記同期信号を元に定周期に割込信号２、およびステータス信号を発生させる手段と、
前記割込信号２が入力された時に前記ステータス信号を判別する手段と、
前記オプションモジュールが前記ＰＬＣモジュールのデータを格納したことを前記ＰＬＣモジュールに知らせる手段とを有し、
前記同期信号が入力された時に、前記オプションモジュールが前記ＰＬＣモジュールのデータを格納し、
前記同期信号が入力された時に、前記オプションモジュールは制御機器に出力するデータを算出して、更新周期ごとにデータを制御機器に出力し、
前記ＰＬＣモジュールは同ＰＬＣモジュールのデータをオプションモジュールが取り込むまでは、ユーザプログラムを実行せず待機状態を保持し、
前記オプションモジュールからのデータ格納完了信号により、ユーザプログラムを前記ＰＬＣモジュールが実行することにより、前記ＰＬＣモジュールと前記オプションモジュールの同期をとる
構成としたことを特徴とするプログラマブルコントローラの同期方式。
【請求項２】
プログラマブルコントローラとしての機能を有するＰＬＣモジュールと、制御機器とデータの入出力を行う機能を有するオプションモジュールを備え、前記オプションモジュールと前記制御機器間は前記オプションモジュールからのデータを確実に制御機器まで渡すことができるように定周期でデータの入出力を行う機能を有する装置において、
前記ＰＬＣモジュールにおいて定周期に割込信号１を発生させる手段と、
前記割込信号１をサンプリング周期とする手段と、
前記割込信号１をオプションモジュールに同期信号として入力させる手段と、前記ＰＬＣモジュールと前記オプションモジュールでデータの受け渡しを行う手段と、
前記ＰＬＣモジュールのデータを前記オプションモジュールに格納することを前記オプションモジュールに知らせる手段と、
オプションモジュールにおいて前記割込信号１を元に定周期に割込信号２、およびステータス信号を発生させる手段と、
前記割込信号２が入力された時に前記ステータス信号を判別する手段と、
前記オプションモジュールが前記ＰＬＣモジュールのデータを格納したことを前記ＰＬＣモジュールに知らせる手段とを有し、
前記ＰＬＣモジュールからのデータ格納指令が入力された時に、前記オプションモジュールが前記ＰＬＣモジュールのデータを格納し、
前記割込信号が入力された時にステータス信号を判別し更新周期であれば、前記オプションモジュールは制御機器に出力するデータを算出して、データを制御機器に出力し、
前記ＰＬＣモジュールは同ＰＬＣモジュールのデータをオプションモジュールが取り込むまでは、ユーザプログラムを実行せず待機状態を保持し、
前記オプションモジュールからのデータ格納完了信号により、ユーザプログラムを前記ＰＬＣモジュールが実行することにより、前記ＰＬＣモジュールと前記オプションモジュールの同期をとる
構成としたことを特徴とするプログラマブルコントローラの同期方式。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、コントローラと制御機器間のデータの受け渡しを確実に行うことができるように定周期でデータ更新を行う機能を有する装置に関する。
【０００２】
【従来の技術】
一般に、モジュール型のＰＬＣ装置は図６のような構成になっている（例えば特許文献１参照）。図６において、１プログラム入力装置で、アプリケーションプログラムＳ１を作成する。
【特許文献１】
特開平１１−２５９１０５号公報（図４）
【０００３】
２はＰＬＣモジュールでアプリケーションプログラムＳｌにしたがい、オプションモジュール３との間で入出力データＳ２をバスを通して授受する。データの授受を行うタイミング（以下、サンプリング周期と呼ぶ）は一般にＰＬＣモジュール２に搭載された水晶発振子からのクロックを元にして作成される。
オプションモジュール３は、動作の異なる複数種の中から任意のモジュールを複数枚実装できる。
オプションモジュール３のなかには制御データＳ３を定周期の更新周期でデータの入出力を行うことにより、複数の制御機器４、５を制御する種類も含まれる。この場合、サンプリング周期はオプションモジュール３に搭載された更新周期発生回路からの信号を元にして作成される。
【０００４】
このように、サンプリング周期作成法には２種類がある。
ＰＬＣモジュール２に搭載された水晶発振子からのクロックを元にサンプリング周期を作成する場合のＰＬＣ装置の構成を図７に示す。図７において、２はＰＬＣモジュールで、プログラマブルコントローラとしての機能を有している。
一般にＰＬＣモジュール２は、データメモリ部２１と、アプリケーションプログラムを記憶しているプログラムメモリ部２０と、前記プログラムメモリ部２０に格納された制御プログラムに従って演算する演算部２２から構成される。
演算部（ＣＰＵ）２２は水晶発振子２３からのクロック信号で動作する。２４はサンプリング周期発生回路で、水晶発振子２３からのクロック信号を元にユーザが設定したサンプリング周期を作成し、割込信号Ｓ５を演算部へ入力する。演算部は割込信号Ｓ５が入ると、割込信号Ｓ４を発生させ、オプションモジュールとの間でデータＳ２の授受を行う。
【０００５】
３はオプションモジュールで、ＰＬＣモジュール２がセットしたデータを自モジュール内に格納するためのメモリ３３と、ＰＬＣモジュール２からのデータＳ２と、ＣＰＵ２２からの割込信号を受けるための共有メモリ３０と、水晶発振子３４で動作するＣＰＵ３１と、制御機器とのデータ授受をリアルタイムで行うためのデータ入出力部３２から構成される。ＰＬＣモジュール２とオプションモジュール３との間の同期は割込信号Ｓ４によって保たれる。
オプションモジュール３に搭載された更新周期発生回路３６からの信号を元にしてサンプリング周期を作成する場合のＰＬＣ装置の構成を図８に示す。図７と異なり、データを入出力する周期は更新周期発生回路３６により作成される。ＰＬＣモジュール２と制御機器４との間でデータの整合性をとるために、更新周期発生回路３６からの割込信号Ｓ６をオプションモジュール３のＣＰＵ３１とＰＬＣモジュール２のサンプリング周期発生回路２４に同時に入力する。ＰＬＣモジュール２は自モジュール内の水晶発振子からの信号を使うことなくオプションモジュール３内の更新周期発生回路３６からの割込信号を使用してサンプリング周期を作成する。
【０００６】
このようなモジュール型のＰＬＣ装置においては、ＰＬＣモジュールとオプションモジュールは、それぞれＣＰＵを搭載し、そのＣＰＵは一般に別々の発振器からのクロックで動作する。図８に示したようなオプションモジュールではＰＬＣモジュールからのデータはＰＬＣモジュールのサンプリング周期で確実に制御機器まで受け渡すことができる。
【０００７】
一方、図８に示したようなオプションモジュール３と図７に示したＰＬＣモジュール２とで構成されるＰＬＣ装置では、たとえ同じサンプリング周期を設定しても、ＰＬＣモジュール２とオプションモジュール３のサンプリング周期は微妙にずれてくる。そのため、ＰＬＣモジュール２からのデータをオプションモジュール３が受け取れないタイミングが生じ、ＰＬＣモジュール２からの時々刻々のデータをオプションモジュール３を介して制御機器４まで確実に受け渡すことができない。
【０００８】
図９を用いて説明する。図９において、▲１▼〜▲６▼はＰＬＣモジュール２が時々刻々払い出すデータを示している。この例では、オプションモジュール３および制御機器４の更新周期を２ｍｓ、ＰＬＣモジュール２のサンプリング周期を２ｍｓとしている。一般にクロックに使用する水晶発振子の精度は１００ｐｐｍ程度であるため、ＰＬＣモジュール２で使用している水晶発振子とオプションモジュール３で使用している水晶発振子の誤差は最大２００ｐｐｍである。よって、１／５０００の誤差となる。２ｍｓでは、２ｍｓ±０．４μｓとなり、１０秒で１回分２ｍｓ周期が多いか少なくなる。図９は、ＰＬＣモジュール２で使用している水晶発振子がオプションモジュール３で使用している水晶発振子よりα分遅いと仮定した時の各モジュールの周期を表したものである。
図９において、徐々にＰＬＣモジュール２のサンプリング周期とオプションモジュール３の更新周期がずれていき、時刻Ａ、Ｂと近づき、時刻Ｃでオプションモジュール３の更新周期がＰＬＣモジュール２のサンプリング周期を抜き、その結果、データ▲５▼が払い出せずデータを抜かす。時刻Ｃでは、本来はデータ▲６▼が制御機器４に送信されなければならないが、時刻Ｂと同じデータ▲５▼が制御機器４に送信されてしまう。すなわち、本来制御機器４に送信するデータは、▲１▼→▲２▼→▲３▼→▲４▼→▲５▼→▲６▼→・・・・であるのに対して、実際に制御機器４に送信されるデータは、▲１▼→▲２▼→▲３▼→▲４▼→▲５▼→▲５▼→▲６▼→・・・・となる。
【０００９】
上記問題を防ぐため、従来は図８に示したＰＬＣモジュール２を用いて、ＰＬＣモジュール２とオプションモジュール３のサンプリング周期がずれないようにしていた。
しかし、図８に示したＰＬＣモジュール２の場合、必ず図８に示した機能を持っオプションモジュール３が実装されなければならないが、１枚しか搭載できないといった問題があった。
【００１０】
【発明が解決しようとする課題】
そこで本発明の目的は、オプションモジュールの実装枚数に制限を加えることなく、コントローラと制御機器間のデータの受け渡しを確実に行うことができ、またＰＬＣモジュールのサンプリング周期を生成しているクロックと、オプションモジュールと制御機器間の更新周期を生成しているクロック差を意識する必要がないプログラマブルコントローラ装置を提供することを目的とする。
【００１１】
【課題を解決するための手段】
上記問題を解決するため、本発明のプログラマブルコントローラ装置は、プログラマブルコントローラとしての機能を有するＰＬＣモジュールと、制御機器とデータの入出力を行う機能を有するオプションモジュールを備え、前記オプションモジュールと前記制御機器間は前記オプションモジュールからのデータを確実に制御機器まで渡すことができるように定周期でデータの入出力を行う機能を有する装置において、前記ＰＬＣモジュールにおいて定周期に割込信号１を発生させる手段と、前記割込信号１をサンプリング周期とする手段と、前記ＰＬＣモジュールと前記オプションモジュールでデータの受け渡しを行う手段と、前記ＰＬＣモジュールがオプションモジュールとのデータ受け渡しを完了した時に同期信号を発生させる手段と、前記同期信号をオプションモジュールに入力する手段と、オプションモジュールにおいて前記同期信号を元に定周期に割込信号２、およびステータス信号を発生させる手段と、前記割込信号２が入力された時に前記ステータス信号を判別する手段と、前記オプションモジュールが前記ＰＬＣモジュールのデータを格納したことを前記ＰＬＣモジュールに知らせる手段とを有し、前記同期信号が入力された時に、前記オプションモジュールが前記ＰＬＣモジュールのデータを格納し、前記同期信号が入力された時に、前記オプションモジュールは制御機器に出力するデータを算出して、更新周期ごとにデータを制御機器に出力し、前記ＰＬＣモジュールは同ＰＬＣモジュールのデータをオプションモジュールが取り込むまでは、ユーザプログラムを実行せず待機状態を保持し、前記オプションモジュールからのデータ格納完了信号により、ユーザプログラムを前記ＰＬＣモジュールが実行することにより、前記ＰＬＣモジュールと前記オプションモジュールの同期をとる構成としたものである。
また本発明のプログラマブルコントローラ装置は、プログラマブルコントローラとしての機能を有するＰＬＣモジュールと、制御機器とデータの入出力を行う機能を有するオプションモジュールを備え、前記オプションモジュールと前記制御機器間は前記オプションモジュールからのデータを確実に制御機器まで渡すことができるように定周期でデータの入出力を行う機能を有する装置において、前記ＰＬＣモジュールにおいて定周期に割込信号１を発生させる手段と、前記割込信号１をサンプリング周期とする手段と、前記割込信号１をオプションモジュールに同期信号として入力させる手段と、前記ＰＬＣモジュールと前記オプションモジュールでデータの受け渡しを行う手段と、前記ＰＬＣモジュールのデータを前記オプションモジュールに格納することを前記オプションモジュールに知らせる手段と、オプションモジュールにおいて前記割込信号１を元に定周期に割込信号２、およびステータス信号を発生させる手段と、前記割込信号２が入力された時に前記ステータス信号を判別する手段と、前記オプションモジュールが前記ＰＬＣモジュールのデータを格納したことを前記ＰＬＣモジュールに知らせる手段とを有し、前記ＰＬＣモジュールからのデータ格納指令が入力された時に、前記オプションモジュールが前記ＰＬＣモジュールのデータを格納し、前記割込信号が入力された時にステータス信号を判別し更新周期であれば、前記オプションモジュールは制御機器に出力するデータを算出して、データを制御機器に出力し、前記ＰＬＣモジュールは同ＰＬＣモジュールのデータをオプションモジュールが取り込むまでは、ユーザプログラムを実行せず待機状態を保持し、前記オプションモジュールからのデータ格納完了信号により、ユーザプログラムを前記ＰＬＣモジュールが実行することにより、前記ＰＬＣモジュールと前記オプションモジュールの同期をとる構成としたものである。
【００１２】
【発明の実施の形態】
以下、本発明の実施例を図に基づいて説明する。
図１は、本発明による制御装置の構成例である。図１において、１００はＰＬＣモジュールで、プログラマブルコントローラとしての機能を有している。一般にプログラマブルコントローラは、外部の信号を取り込むための入力部１１０と、外部へ信号を出力するための出力部１１１と、データメモリ部１１２と、ユーザプログラムを記憶しているプログラムメモリ部１１４と、前記プログラムメモリ部に格納された制御プログラムに従って演算する演算部１１３から構成される。一般に演算部（ＣＰＵ）は水晶発振子１１５からのクロック信号で動作する。１１６はサンプリング周期発生回路で、ソフトウェアまたはハードウェアで設定された周期に従って、割込信号Ｓ１４が出力される。前記サンプリング周期発生回路１１６からの出力信号である割込信号Ｓ１４がＣＰＵ１１３に入力された時に、プログラマブルコントローラの入力、出力および演算を実行する。データの入出力が完了した時に、オプションモジュールに対し同期信号Ｓ１５が出力される。２００は、オプションモジュールで、ＰＬＣモジュールがセットしたデータを自モジュール内に格納するためのメモリ２２５と、ＰＬＣモジュール１００からのデータＳ１１と、データＳ１１をメモリ２２５に格納した時にＰＬＣモジュールｌ００にデータＳ１１の取り込みが完了したことを知らせるデータ格納完了Ｓ１２を格納するための共有メモリ２２０と、水晶発振子２２４で動作するＣＰＵ２２１と、制御機器にデータを出力するためのデータ入出力部２２２と、ＰＬＣモジュールｌ００からの出力信号である同期信号Ｓ１５に同期してオプションモジュール２００と制御機器間の更新周期を生成する更新周期発生回路２２３から構成される。また、更新周期発生回路２２３からの出力が割込信号Ｓ１３として、オプションモジュール２００のＣＰＵ２２１に入力される。
【００１３】
図２は、本発明の実施例におけるＰＬＣモジュール１００からの同期信号Ｓ１５に同期した更新周期を発生する更新周期発生回路の動作を説明した図である。図２において、同期信号Ｓ１５が更新周期より遅い場合と速い場合に分けて説明する。遅い場合の例では同期信号Ｓ１５を４ｍｓ、更新周期を２ｍｓとし、同期信号Ｓ１５が更新周期の２倍としている。この場合、同期信号Ｓ１５に同期して割込信号Ｓ１３、およびステータス信号Ｓ１６として▲１▼（▲１▼は同期信号Ｓ１５が入力され、かつ更新周期であることを表している）を発生し、この時点から２ｍｓ経過後、次の割込信号Ｓ１３、およびステータス信号Ｓ１６として▲２▼（▲２▼は同期信号Ｓ１５は入力されておらず、更新周期のみであることを表している）を発生し、次の同期信号Ｓ１５に同期して割込信号Ｓ１３、ステータス信号Ｓ１６として▲１▼を出力する。前記を繰り返して割込信号Ｓ１３、ステータス信号Ｓ１６を発生させる。更新周期は、割込信号Ｓ１３が入力された時に、ステータス信号Ｓ１６をソフトウェアもしくはハードウェアで判別することで生成される。
一方、速い場合の例では同期信号Ｓ１５を２ｍｓ、更新周期を４ｍｓとし、同期信号Ｓ１５が更新周期の１／２倍としている。この場合、同期信号Ｓ１５に同期して割込信号Ｓ１３、およびステータス信号Ｓ１６として▲１▼（▲１▼は同期信号Ｓ１５が入力され、かつ更新周期であることを表している）を発生し、次の同期信号Ｓ１５では、割込信号Ｓ１３、およびステータス信号Ｓ１６として▲３▼（▲３▼は同期信号Ｓ１５が入力され、かつ更新周期ではないことを表している）を発生し、次の同期信号Ｓ１５に同期して割込信号Ｓ１３、ステータス信号Ｓ１６として▲１▼を出力する。前記を繰り返して割込信号Ｓ１３、ステータス信号Ｓ１６を発生させる。
【００１４】
図３は、ＰＬＣモジュール１００のサンプリング周期発生回路１１６から割込信号Ｓ１４が入力された時の、オプションモジュール２００とＰＬＣモジュール１００のソフトウェアの動作、およびオプションモジュール２００の更新周期発生回路２２３から割込信号Ｓ１３が入力された時のオプションモジュール２００のソフトウェアの動作を説明した図である。
図３において、割込信号Ｓ１４がＰＬＣモジュール１００のＣＰＵ１１３に入力されると、ＰＬＣモジュール１００はまず、外部機器との入出力を行い（ステート１０）、入出力が完了した時に同期信号Ｓ１５をオプションモジュールに出力し、オプションモジュール２００からのデータ格納完了待ちとなる（ステート１１）。オプションモジュール２００からデータ格納完了Ｓ１２が共有メモリ２２０にセットされると、プログラムメモリ部１１４に格納されたユーザプログラムが実行され、そのユーザプログラムの中で時々刻々のデータが共有メモリ２２０にセットされる（ステート１２）。
一方、オプションモジュール２００は、同期信号Ｓ１５から更新周期発生回路により割込信号Ｓ１３、およびステータス信号Ｓ１６がオプションモジュールのＣＰＵ２２１に入力されると、まずステータス信号Ｓ１６を判別する。このステータス信号Ｓ１６の内容によりそれぞれの処理を実行する。まず、▲１▼（同期信号Ｓ１５が入力され、かつ更新周期である）の場合、ＰＬＣモジュール１００が共有メモリ２２０にセットしたデータを自モジュール内のメモリ２２５に格納する。このデータを積算して、制御機器への出力の総データ量とする（ステート２０）。格納が完了すると、データ格納完了Ｓ１２を共有メモリ２２０にセットして、データの取り込みが完了したことをＰＬＣモジュール１００に知らせる（ステート２１）。
【００１５】
次に、総データ量から今回出力するデータを作成して（ステート２２）、制御機器に出力する（ステート２３）。
次に▲２▼（同期信号Ｓ１５は入力されておらず、更新周期のみである）の場合は、総データ量から今回出力するデータを作成して（ステート２２）、制御機器に出力する（ステート２３）。
また▲３▼（同期信号Ｓ１５が入力され、かつ更新周期ではない）の場合は、ＰＬＣモジュール１００が共有メモリ２２０にセットしたデータを自モジュール内のメモリ２２５に格納する。このデータを総データ量に積算して、新たな総データ量とする（ステート２０）。格納が完了すると、データ格納完了Ｓ１２を共有メモリ２２０にセットして、データの取り込みが完了したことをＰＬＣモジュール１００に知らせる（ステート２１）。
【００１６】
次に、本発明の第２の実施例を図に基づいて説明する。
図４は、本発明による制御装置の構成例である。図４において、１００はＰＬＣモジュールで、プログラマブルコントローラとしての機能を有している。一般にプログラマブルコントローラは、外部の信号を取り込むための入力部１１０と、外部へ信号を出力するための出力部１１１と、データメモリ部１１２と、ユーザプログラムを記憶しているプログラムメモリ部１１４と、前記プログラムメモリ部に格納された制御プログラムに従って演算する演算部１１３から構成される。一般に演算部（ＣＰＵ）は水晶発振子１１５からのクロック信号で動作する。１１６はサンプリング周期発生回路で、ソフトウェアまたはハードウェアで設定された周期に従って、割込信号Ｓ１４およびオプションモジュール２００への出力信号である同期信号Ｓ１５が出力される。前記サンプリング周期発生回路１１６からの出力信号である割込信号Ｓ１４がＣＰＵ１１３に入力された時に、プログラマブルコントローラの入力、出力および演算を実行する。データの入出力が完了した時に、オプションモジュールに対しデータ格納指令Ｓ１７がオプションモジュール２００の共有メモリ２２０に格納される。２００は、オプションモジュールで、ＰＬＣモジュールがセットしたデータを自モジュール内に格納するためのメモリ２２５と、ＰＬＣモジュール１００からのデータＳ１１と、データＳ１１をメモリ２２５に格納した時にＰＬＣモジュール１００にデータＳ１１の取り込みが完了したことを知らせるデータ格納完了Ｓ１２を格納するための共有メモリ２２０と、水晶発振子２２４で動作するＣＰＵ２２１と、制御機器にデータを出力するためのデータ入出力部２２２と、ＰＬＣモジュール１００からの出力信号である同期信号Ｓ１５に同期してオプションモジュール２００と制御機器間の更新周期を生成する更新周期発生回路２２３から構成される。また、更新周期発生回路２２３からの出力が割込信号Ｓ１３として、オプションモジュール２００のＣＰＵ２２１に入力される。
【００１７】
図２は、最初の実施例と同じく、本発明の実施例におけるＰＬＣモジュール１００からの同期信号Ｓ１５に同期した更新周期を発生する更新周期発生回路の動作を説明した図である。図２において、同期信号Ｓ１５が更新周期より遅い場合と速い場合に分けて説明する。遅い場合の例では同期信号Ｓ１５を４ｍｓ、更新周期を２ｍｓとし、同期信号Ｓ１５が更新周期の２倍としている。この場合、同期信号Ｓ１５に同期して割込信号Ｓ１３、およびステータス信号Ｓ１６として▲１▼（▲１▼は同期信号Ｓ１５が入力され、かつ更新周期であることを表している）を発生し、この時点から２ｍｓ経過後、次の割込信号Ｓ１３、およびステータス信号Ｓ１６として▲２▼（▲２▼は同期信号Ｓ１５は入力されておらず、更新周期のみであることを表している）を発生し、次の同期信号Ｓ１５に同期して割込信号Ｓ１３、ステータス信号Ｓ１６として▲１▼を出力する。前記を繰り返して割込信号Ｓ１３、ステータス信号Ｓ１６を発生させる。更新周期は、割込信号Ｓ１３が入力された時に、ステータス信号Ｓ１６をソフトウェアもしくはハードウェアで判別することで生成される。
一方、速い場合の例では同期信号Ｓ１５を２ｍｓ、更新周期を４ｍｓとし、同期信号Ｓ１５が更新周期の１／２倍としている。この場合、同期信号Ｓ１５に同期して割込信号Ｓ１３、およびステータス信号Ｓ１６として▲１▼（▲１▼は同期信号Ｓ１５が入力され、かつ更新周期であることを表している）を発生し、次の同期信号Ｓ１５では、割込信号Ｓ１３、およびステータス信号Ｓ１６として▲３▼（▲３▼は同期信号Ｓ１５が入力され、かつ更新周期ではないことを表している）を発生し、次の同期信号Ｓ１５に同期して割込信号Ｓ１３、ステータス信号Ｓ１６として▲１▼を出力する。前記を繰り返して割込信号Ｓ１３、ステータス信号Ｓ１６を発生させる。
【００１８】
図５は、ＰＬＣモジュール１００のサンプリング周期発生回路１１６から割込信号Ｓ１４が入力された時の、オプションモジュール２００とＰＬＣモジュール１００のソフトウェアの動作、およびオプションモジュール２００の更新周期発生回路２２３から割込信号Ｓ１３が入力された時のオプションモジュール２００のソフトウェアの動作を説明した図である。
図５において、割込信号Ｓ１４がＰＬＣモジュール１００のＣＰＵ１１３に入力されると、ＰＬＣモジュール１００はまず、外部機器との入出力を行い（ステート１０）、入出力が完了した時にデータ格納指令Ｓ１７を共有メモリ２２０にセットし、オプションモジュール２００からのデータ格納完了待ちとなる（ステート１１）。オプションモジュール２００からデータ格納完了Ｓ１２が共有メモリ２２０にセットされると、プログラムメモリ部１１４に格納されたユーザプログラムが実行され、そのユーザプログラムの中で時々刻々のデータが共有メモリ２２０にセットされる（ステート１２）。
一方、オプションモジュール２００は、同期信号Ｓ１５から更新周期発生回路により割込信号Ｓ１３、およびステータス信号Ｓ１６がオプションモジュールのＣＰＵ２２１に入力されると、まずステータス信号Ｓ１６を判別する。このステータス信号Ｓ１６の内容によりそれぞれの処理を実行する。まず、▲１▼（同期信号Ｓ１５が入力され、かつ更新周期である）の場合、ＰＬＣモジュール１００からのデータ格納指令Ｓ１７待ちとなる（ステート２０）。ＰＬＣモジュール１００からデータ格納指令Ｓ１７が共有メモリ２２０にセットされると、ＰＬＣモジュール１００が共有メモリ２２０にセットしたデータを自モジュール内のメモリ２２５に格納する。このデータを積算して、制御機器への出力の総データ量とする（ステート２１）。格納が完了すると、データ格納完了Ｓ１２を共有メモリ２２０にセットして、データの取り込みが完了したことをＰＬＣモジュール１００に知らせる（ステート２２）。次に、総データ量から今回出力するデータを作成して（ステート２３）、制御機器に出力する（ステート２４）。
【００１９】
次に▲２▼（同期信号Ｓ１５は入力されておらず、更新周期のみである）の場合は、総データ量から今回出力するデータを作成して（ステート２３）、制御機器に出力する（ステート２４）。
また▲３▼（同期信号Ｓ１５が入力され、かつ更新周期ではない）の場合は、ＰＬＣモジュール１００からのデータ格納指令Ｓ１７待ちとなる（ステート２０）。ＰＬＣモジュール１００からデータ格納指令Ｓ１７が共有メモリ２２０にセットされると、ＰＬＣモジュール１００が共有メモリ２２０にセットしたデータを自モジュール内のメモリ２２５に格納する。このデータを総データ量に積算して、新たな総データ量とする（ステート２１）。格納が完了すると、データ格納完了Ｓ１２を共有メモリ２２０にセットして、データの取り込みが完了したことをＰＬＣモジュール１００に知らせる（ステート２２）。
【００２０】
【発明の効果】
以上述べたように本発明によれば、ＰＬＣモジュールが払い出すデータを、オプションモジュールを介して、確実に制御機器まで渡すことができ、モジュール型の制御装置で同期制御が可能となる効果がある。
また、１枚のオプションモジュールで接続可能な制御機器を超える制御装置においても、必要数分のオプションモジュールを追加し、ＰＬＣモジュールに同期させることで、ＰＬＣモジュールが払い出すデータを、複数のオプションモジュールを介して、確実に制御機器まで渡すことができ、複数のオプションモジュールを使用した多数の制御機器を使用した制御装置で同期制御が可能となる効果がある。また、データを生成するＰＬＣモジュールはプログラマブルであるため、任意のデータパターン（データの集まり）を生成することができるので、制御機器で構成される機械の動作に柔軟に対応できる。従って、高性能、高機能な機械をＰＬＣ装置で構成することが可能となる効果がある。
【図面の簡単な説明】
【図１】本発明の実施例である。
【図２】本発明の実施例における更新周期発生回路の説明図である。
【図３】本発明の実施例におけるＰＬＣモジュールとオプションモジュールのソフトウェア説明図である。
【図４】本発明の第２の実施例である。
【図５】本発明の第２の実施例におけるＰＬＣモジュールとオプションモジュールのソフトウェア説明図である。
【図６】一般のモジュール型のＰＬＣ装置の構成概略図である。
【図７】従来技術を示すブロック図である。
【図８】従来技術を示すブロック図である。
【図９】従来技術における問題点を説明するためのタイムチャートである。
【符号の説明】
１　プログラム入力装置
２、１００　ＰＬＣモジュール
３、２００　オプションモジュール
４、５　制御機器
２１、１１２　データメモリ部
２２、３１、１１３、２２１　ＣＰＵ
２０、１１４　プログラムメモリ部
２３、３４、１１５、２２４　水晶発振子
２４、１１６　サンプリング周期発生回路
３０、２２０　共有メモリ
３２、３５、２２２　データ入出力部
３６、２２３　更新周期発生回路
３３、２２５　メモリ
１１０　入力部
１１１　出力部
Ｓ２、Ｓ１１　データ
Ｓ４、Ｓ５、Ｓ６、Ｓ１３、Ｓ１４　割込信号
Ｓ１２　データ格納完了
Ｓ１５　同期信号
Ｓ１６　ステータス信号
Ｓ１７　データ格納指令
１０〜１４、２０〜２４　ステート
【図１】
2004102791.tif 000003
【図２】
2004102791.tif 000004
【図３】
2004102791.tif 000005
【図４】
2004102791.tif 000006
【図５】
2004102791.tif 000007
【図６】
2004102791.tif 000008
【図７】
2004102791.tif 000009
【図８】
2004102791.tif 000010
【図９】
2004102791.tif 000011