(57)【要約】【課題】上位装置の同期信号を生成しているクロックと制御装置の制御周期信号を生成しているクロックの差を意識せずに上位装置からの同期信号に同期して制御処理を実行することができるとともに、制御の精度性能を向上する。【解決手段】制御割込処理部とを備えた制御装置において、同期割込処理部は、同期割込信号を生成するための水晶発振子と制御周期信号を生成するため水晶発振子の精度誤差以上遅れて制御周期信号が生成されるよう、制御周期信号を生成する手段を調整し制御割込信号を生成することにより、外部からの同期信号に同期して制御割込処理を実行させるものである。【選択図】    図１
2004264899.tif 000002
【特許請求の範囲】
【請求項１】
上位装置など外部から定周期に出力される同期信号が入力されると同期割込信号を生成する手段と、定周期に制御処理を行うための制御周期信号を生成する手段と、前記制御周期信号が入力されると制御割込信号を生成する手段と、上位装置からデータを入力し上位装置にデータを出力する手段と、前記同期割込信号が入力されると同期割込処理を実行する同期割込処理部と、前記制御割込信号が入力されると制御割込処理を実行する制御割込処理部とを備えた制御装置において、
前記同期割込処理部は、前記同期割込信号を生成するための水晶発振子と前記制御周期信号を生成するため水晶発振子の精度誤差以上遅れて前記制御周期信号が生成されるよう、前記制御周期信号を生成する手段を調整し前記制御割込信号を生成することにより、外部からの同期信号に同期して制御割込処理を実行させることを特徴とする外部同期可能な制御装置。
【請求項２】
前記同期割込処理部は、該同期割込処理部の実行時間の最大値以上遅れて前記制御周期信号が生成されるよう、前記制御周期信号を生成する手段を調整し、前記制御割込信号を生成することにより、前記同期割込処理部の実行時間や実行時間のばらつきに関係なく制御割込処理の周期を一定にすることを特徴とする請求項１記載の外部同期可能な制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、上位制御装置など外部からの同期信号に同期して制御処理を行う機能を有する制御装置に関するものである。
【０００２】
【従来の技術】
従来の制御装置について、図を用いて説明する。図４は、従来の制御装置の構成を示すブロック図であり、図５は、その動作を説明するタイムチャートである。
図４において、１は上位装置であり、外部に同期信号を出力する機能と、外部へデータを出力する機能と、外部からデータを入力する機能を有している。１０は水晶発振子であり、クロックを生成する。１１は同期信号発生回路であり、水晶発振子１０からのクロックを元に定周期に信号を生成し外部に出力する。１２は入出力回路であり、制御装置にデータを出力し、制御装置からデータを入力する。Ｓ１０は同期信号であり、同期信号発生回路１１で定周期に生成される。Ｓ１１は入出力データで、入出力回路１２を介して制御装置と授受される。
２は制御装置で、ＣＰＵと、割込回路と、入出力回路と、同期調整付制御周期発生回路から構成される。２０はＣＰＵであり、水晶発振子からのクロック信号で動作する。また、割込回路から同期割込信号が入力されると同期割込処理部を実行し、割込回路から制御割込信号が入力されると制御割込処理部を実行する。２１は割込回路であり、上位装置からの同期信号Ｓ１０が入力されると、同期割込信号を生成しＣＰＵ２０へ出力する。また、同期調整付制御周期発生回路から信号が入力されると、制御割込信号を生成しＣＰＵ２０へ出力する。２２は水晶発振子であり、クロックを生成する。２３は入出力回路であり、上位装置にデータを出力し、上位装置からデータを入力する。２４は同期割込処理部であり、入出力データＳ１１の処理を行う。２５は制御割込処理部であり、位置制御、速度制御、トルク制御などの処理を行う。２７は同期調整付制御周期発生回路であり、上位装置からの同期信号Ｓ１０が入力された時点から水晶発振子２２からのクロックを元に定周期に信号を生成し出力する。すなわち、上位装置で定周期に生成される同期信号Ｓ１０が入力されると、同期調整付制御周期発生回路は制御周期信号を出力すると同時に、水晶発振子２２からのクロックの計測を開始し、予め設定された周期に達すると制御周期信号を出力し、水晶発振子２２からのクロックの計測を開始する。この動作を繰り返し行うことで定周期に信号を生成する。Ｓ２０は同期割込信号であり、上位からの同期信号Ｓ１０が入力された時に割込回路２１で生成される。Ｓ２１は制御割込信号であり、同期調整付制御周期発生回路２７からの制御周期信号が入力された時に割込回路２１で生成される。Ｓ２２は制御周期信号であり、同期調整付制御周期発生回路２７で生成される。
図５において、上位装置で定周期に生成される同期信号Ｓ１０が入力されると、割込回路２１で同期割込信号が生成され、ＣＰＵ２０にて同期割込処理部が実行される。また、同期調整付制御周期発生回路が起動され、制御周期信号Ｓ２２より割込回路２１で制御割込信号が生成され、ＣＰＵ２０にて制御割込処理部が実行される。この例では、上位からの同期信号Ｓ１０および同期割込信号Ｓ２０は４００μｓごとに生成され、制御割込信号Ｓ２１は１００μｓごとに生成されるものとする。すなわち、同期信号周期である４００μｓごとに同期割込処理が実行され、４００μｓの間に１００μｓ周期の制御割込信号により制御割込処理が計４回実行される。一般にクロックに使用する水晶発振子の精度は１００ｐｐｍ程度であるため、上位装置１で使用している水晶発振子１０と制御装置２で使用している水晶発振子２２の誤差は最大２００ｐｐｍである。よって、１／５０００の誤差となる。４００μｓでは、４００μｓ±０．０８μｓとなる。上位装置の同期信号を生成しているクロックが制御装置の制御周期信号を生成しているクロックよりも速い場合は、４００μｓ間に１００μｓの制御周期信号は４回しか生成されず、それ以上は生成されないため、制御割込処理は正常に計４回実行される。一方、上位装置の同期信号を生成しているクロックが制御装置の制御周期信号を生成しているクロックよりも遅い場合は、時刻Ｄのようになり、上位からの同期信号が入力される前に、５回目の制御周期信号が生成され、４００μｓ間では本来４回実行されるべき制御割込処理が５回実行されることになる。
また、上位装置で定周期に生成される同期信号Ｓ１０が入力されると、同期割込信号と制御割込信号が生成されるが、一般的に同期割込処理の方が制御割込処理より割込優先順位が高いので、同期割込処理が先に実行され、制御割込処理は同期割込処理が完了するまで待たされる。この例では、同期割込処理の実行時間は２０μｓとする。本来は、制御割込処理の起動間隔は、制御周期である１００μｓであるが、時刻Ｃのように、上位装置で定周期に生成される同期信号Ｓ１０が入力された１回目の制御割込処理と２回目の制御割込処理の起動間隔は、制御周期１００μｓから同期割込処理の実行時間２０μｓを減算した８０μｓとなる。また、４回目の制御割込処理と次回の同期信号Ｓ１０が入力された１回目の制御割込処理の起動間隔は、同期割込処理が完了するまで待たされるため１２０μｓとなる。従って、２回目から４回目の制御割込処理の起動間隔は、１００μｓであるにもかかわらず、１回目と２回目の制御割込処理の起動間隔が８０μｓ、４回目と次１回目の制御割込処理の起動間隔が１２０μｓであるため、制御割込処理が実行される制御処理周期が変わり、一般的に制御精度が劣化する。
このように、従来の制御装置は、上位装置の同期信号を生成しているクロックと制御装置の制御周期信号を生成しているクロックの差を意識し、上位装置の同期信号を生成しているクロックが制御装置の制御周期信号を生成しているクロックよりも速くなるようにしているのである。
また、コントローラと制御機器間のデータの受け渡しを確実に行うことができるプログラマブルコントローラ装置として例えば、特許文献１、２がある。
【０００３】
【特許文献１】
特開平１１−２５９１０５号公報
【特許文献２】
特開２００２−３３３９０５号公報
【０００４】
【発明が解決しようとする課題】
しかしながら、従来の制御装置は、上位装置の同期信号を生成しているクロックが制御装置の制御周期信号を生成しているクロックよりも速くなるような上位装置との組み合わせになるように意識しなければならず、故障時の交換などが煩わしかった。万一、上位装置の同期信号を生成しているクロックが制御装置の制御周期信号を生成しているクロックよりも遅い制御装置と上位装置を組み合わせると、上位装置からの同期信号に同期して制御処理を実行できないという問題があった。また、同期信号が入力されたタイミングでは同期割込処理が終了するまで制御割込処理の起動が待たされるため、制御周期が一定ではなく、制御精度も劣化するという問題も抱えていた。
そこで、本発明はこのような問題点に鑑みてなされたものであり、上位装置の同期信号を生成しているクロックと制御装置の制御周期信号を生成しているクロックの差を意識せずに上位装置からの同期信号に同期して制御処理を実行することができるとともに、制御割込処理の起動間隔すなわち制御周期を一定とすることで制御の精度性能を向上することができる制御装置を提供することを目的とする。
【０００５】
【課題を解決するための手段】
上記問題を解決するため、本発明は、次のように構成したのである。
請求項１記載の発明は、上位装置など外部から定周期に出力される同期信号が入力されると同期割込信号を生成する手段と、定周期に制御処理を行うための制御周期信号を生成する手段と、前記制御周期信号が入力されると制御割込信号を生成する手段と、上位装置からデータを入力し上位装置にデータを出力する手段と、前記同期割込信号が入力されると同期割込処理を実行する同期割込処理部と、前記制御割込信号が入力されると制御割込処理を実行する制御割込処理部とを備えた制御装置において、
前記同期割込処理部は、前記同期割込信号を生成するための水晶発振子と前記制御周期信号を生成するため水晶発振子の精度誤差以上遅れて前記制御周期信号が生成されるよう、前記制御周期信号を生成する手段を調整し、前記制御割込信号を生成することにより、外部からの同期信号に同期して制御割込処理を実行させるようになっていることを特徴とするものである。
請求項１記載の制御装置によれば、同期割込処理において、２つの水晶発振子の精度誤差以上遅らせて制御周期信号が生成されるよう制御周期発生回路を調整することにより、上位装置の同期信号を生成しているクロックと制御装置の制御周期信号を生成しているクロックの差を意識することなく、上位装置など外部からの同期信号に同期して制御処理を行うことができる。
また、請求項２記載の発明は、請求項１記載の制御装置において、前記同期割込処理部において、該同期割込処理部の実行時間の最大値以上遅れて前記制御周期信号が生成されるよう、前記制御周期信号を生成する手段を調整し、前記制御割込信号を生成することにより、前記同期割込処理部の実行時間や実行時間のばらつきに関係なく制御割込処理の周期を一定にすることを特徴とするものである。
請求項２記載の制御装置によれば、同期割込処理において、同期割込処理最大時間経過後に制御周期信号が生成されるよう制御周期発生回路を調整することにより、上位装置からの同期信号入力時に実行される同期割込処理において実行される処理時間に影響されることなく、制御割込処理の起動間隔すなわち制御周期を一定とすることができ、その結果、制御の精度性能を向上することができる。
【０００６】
【発明の実施の形態】
以下、本発明の第１の実施の形態の制御装置について図に基づいて説明する。
図１は、本発明の制御装置の構成を示すブロック図である。図１において、１は上位装置であり、外部に同期信号を出力する機能と、外部へデータを出力する機能と、外部からデータを入力する機能を有している。１０は水晶発振子であり、クロックを生成する。１１は同期信号発生回路であり、水晶発振子１０からのクロックを元に定周期に信号を生成し外部に出力する。１２は入出力回路であり、制御装置にデータを出力し、制御装置からデータを入力する。Ｓ１０は同期信号であり、同期信号発生回路１１で定周期に生成される。Ｓ１１は入出力データで、入出力回路１２を介して制御装置と授受される。
【０００７】
２は制御装置で、ＣＰＵと、割込回路と、入出力回路と、制御周期発生回路から構成される。２０はＣＰＵであり、水晶発振子からのクロック信号で動作する。また、割込回路から同期割込信号が入力されると同期割込処理部を実行し、割込回路から制御割込信号が入力されると制御割込処理部を実行する。２１は割込回路であり、上位装置からの同期信号Ｓ１０が入力されると、同期割込信号を生成しＣＰＵ２０へ出力する。また、制御周期発生回路から制御周期信号Ｓ２２が入力されると、制御割込信号を生成しＣＰＵ２０へ出力する。２２は水晶発振子であり、クロックを生成する。２３は入出力回路であり、上位装置１にデータを出力し、上位装置１からデータを入力する。２４は同期割込処理部であり、入出力データＳ１１の処理を行い、制御周期補正値２７を算出し制御周期設定値２８を調整する。２５は制御割込処理部であり、位置制御、速度制御、トルク制御などの制御処理を行う。２６は制御周期発生回路であり、同期割込処理部で調整された制御周期設定値２８で起動され、起動された時点から水晶発振子２２からのクロックを元に定周期に信号を生成し出力する。すなわち、同期割込処理部から起動されると、制御周期発生回路は制御周期信号を出力すると同時に、水晶発振子２２からのクロックの計測を開始し、予め設定された周期に達すると制御周期信号を出力し、水晶発振子２２からのクロックの計測を開始する。この動作を繰り返し行うことで定周期に信号を生成する。Ｓ２０は同期割込信号であり、上位からの同期信号Ｓ１０が入力された時に割込回路２１で生成される。Ｓ２１は制御割込信号であり、制御周期発生回路２６からの制御周期信号Ｓ２２が入力された時に割込回路２１で生成される。Ｓ２２は制御周期信号であり、制御周期発生回路２６で生成される。
【０００８】
図２は、上位装置１で定周期に生成される同期信号Ｓ１０が入力された時のソフトウェアの動作を説明した図である。図２において、上位装置１で定周期に生成される同期信号Ｓ１０が入力されると、割込回路２１で同期割込信号Ｓ２０が生成され、ＣＰＵ２０にて同期割込処理部２４が実行される。同期割込処理部２４で実行される同期割込処理は、まず、制御周期発生回路２６のクロック計測値から、水晶発振子１０と水晶発振子２２の精度誤差以上経過後に制御周期信号が生成されるように制御周期補正値２７を算出し制御周期設定値２８を調整する（ステート１０）。
【０００９】
次に、入出力データＳ１１の処理を行う（ステート１１）。入出力データには、制御装置が入力する指令データと、制御装置が出力するフィードバックデータから構成される。指令データには、位置指令、速度指令、トルク指令などがある。また、フィードバックデータには現在位置、現在速度などがある。同期割込処理で調整された制御周期発生回路が起動されると、制御周期発生回路から制御周期信号Ｓ２２が出力され、割込回路２１より制御割込信号Ｓ２１が生成され、ＣＰＵ２０にて制御割込処理部が実行される。制御割込処理部では、位置制御、速度制御、トルク制御などの制御処理を行う（ステート２０）。同期割込処理で制御周期設定値を調整した直後の制御割込処理では制御周期設定値２８に固定周期の設定値を設定する（ステート２１）。
このように、上位装置１で定周期に生成される同期信号Ｓ１０が入力された時に実行される同期割込処理部２４で、制御割込処理を起動する制御周期発生回路２６をソフトウェアで２つの水晶発振子の精度誤差以上経過後に制御周期信号が生成されるように調整することにより、上位装置１の同期信号Ｓ１０を生成しているクロックが制御装置２の制御周期信号Ｓ２２を生成しているクロックよりも遅い場合でも上位装置１からの同期信号Ｓ１０に同期して制御処理を実行することができる。
【００１０】
次に、本発明の第２の具体的な実施の形態について図面を参照して説明する。
本発明の実施の形態における構成を示すブロック図は図１と、ソフトウェア動作を示す図は図２と同じである。第１の実施の形態との違いは制御周期発生回路の調整時間である。
【００１１】
図３は、本発明の制御装置の第２実施例の動作を示すタイムチャートである。図３において、上位装置で定周期に生成される同期信号Ｓ１０が入力されると、割込回路２１で同期割込信号Ｓ２０が生成され、ＣＰＵ２０にて同期割込処理部が起動され、同期割込処理が実行される。一般に、同期割込処理は条件判断がない場合は、同期割込処理に要する処理時間は一定であるが、条件判断があるとその条件の成立如何によって同期割込処理に要する処理時間は変わってくる。第１の実施の形態の場合は、この同期割込処理で制御周期補正値２７は同期割込処理の開始時に２つの水晶発振子の精度誤差以上経過後に制御周期信号Ｓ２２が生成されるように制御周期補正値２７が算出され制御周期発生回路２６の制御周期設定値２８を調整し、調整された制御周期設定値のタイミングで制御周期発生回路２６が起動され、制御周期信号Ｓ２２より割込回路２１で制御割込信号が生成されるが、同期割込処理の方が制御割込処理より優先度が高いため、同期割込処理終了後に、ＣＰＵ２０にて制御割込処理部２５が実行される。この例では、上位からの同期信号Ｓ１０および同期割込信号Ｓ２０は４００μｓごとに生成され、制御割込信号Ｓ２１は１００μｓごとに生成されるものとする。
【００１２】
しかし、同期割込処理が２０μｓ一定としても時刻Ａのように、同期割込信号が生成された前後の制御周期は制御割込信号が生成されても同期割込処理時間の２０μｓ後に制御割込処理が実行されるため、約１２０μｓと約８０μｓとなってしまい、また、同期割込処理部で実行される同期割込処理が一定ではなく、条件成立時は２０μｓ、不成立時は１０μｓとすると、時刻Ｂのように、同期割込信号が生成された前後の制御周期は約１１０μｓと約９０μｓとなってしまい、更に制御周期にばらつきが生じ、制御割込処理が実行される制御処理周期が変わり、一般的に制御精度が劣化する。高精度を得るためには制御処理周期の時間管理による補正処理が必要となってしまう。
【００１３】
ここで、同期割込処理において制御周期発生回路２６を同期割込処理の実行時間の最大値、この例では２０μｓ経過後に制御周期信号Ｓ２２が生成されるように制御周期補正値２７を算出し制御周期設定値２８を調整することにより、時刻Ａのように、上位からの同期信号により起動される同期割込処理が条件成立の場合を実行すると、同期割込処理終了後、直ぐ制御周期発生回路を介して制御割込信号が発生され制御割込処理が実行される。また、時刻Ｂのように、同期割込処理が条件不成立の場合を実行すると、同期割込処理終了後１０μｓ経過した後、制御周期発生回路を介して制御割込信号が発生され制御割込処理が実行される。つまり同期割込処理の条件判断の成立如何にかかわらず、同期割込処理開始から２０μｓと一定時間過後に制御周期信号が生成されるようにし、結果、制御割込処理が実行される制御周期は１００μｓと一定となる。
【００１４】
このように同期割込処理において、同期割込処理開始から同期割込処理の最大処理時間後に制御周期発生回路から制御周期信号が生成されるように調整を行うことで、同期割込処理に待たされることなく、また同期割込処理に条件判断がある場合は、同期割込処理の条件判断の成立如何にかかわらず、同期割込処理開始から一定時間経過後かつ、同期割込処理終了後に制御周期信号が生成されることで制御割込処理が即実行されるようになり、制御割込処理が実行される制御処理周期を一定に保つことができる。
【００１５】
【発明の効果】
以上述べたように、本発明の制御装置によれば、同期割込処理において、２つの水晶発振子の精度誤差以上遅らせて制御周期信号が生成されるよう制御周期発生回路を調整することにより、上位装置の同期信号を生成しているクロックと制御装置の制御周期信号を生成しているクロックの差を意識することなく、上位装置など外部からの同期信号に同期して制御処理を行うことができ、また、請求項２記載の制御装置によれば、同期割込処理において、同期処理最大時間経過後に制御周期信号が生成されるよう制御周期発生回路を調整することにより、上位装置からの同期信号入力時に実行される同期割込処理において実行される処理時間に影響されることなく、制御割込処理の起動間隔すなわち制御周期を一定とすることができ、その結果、制御の精度性能を向上することができる。
【図面の簡単な説明】
【図１】本発明の制御装置の第１実施例の構成を示すブロック図
【図２】本発明のソフトウェア動作を示す説明図
【図３】本発明の制御装置の第２実施例の動作を示すタイムチャート
【図４】従来の制御装置の構成を示すブロック図
【図５】従来の制御装置の動作を説明するタイムチャート
【符号の説明】
１  上位装置
２  制御装置
１０  水晶発振子
１１  同期信号発生回路
１２  入出力回路
２０  ＣＰＵ
２１  割込回路
２２  水晶発振子
２３  入出力回路
２４  同期割込処理部
２５  制御割込処理部
２６  制御周期発生回路
２７  同期調整付制御周期発生回路
２８  制御周期補正値
２９  制御周期設定値
Ｓ１０  同期信号
Ｓ１１  入出力データ
Ｓ２０  同期割込信号
Ｓ２１  制御割込信号
Ｓ２２  制御周期信号
【図１】
2004264899.tif 000003
【図２】
2004264899.tif 000004
【図３】
2004264899.tif 000005
【図４】
2004264899.tif 000006
【図５】
2004264899.tif 000007