(57)【要約】【課題】シリアルバス構成による制御装置において，同期処理を行うための割込み信号を迅速かつ同じタイミングで必要とする装置へ通知し，同期割り込み信号の揺らぎを低減した制御装置を提供する。【解決手段】システムを構成する各基板に割込み処理回路を搭載し，各基板から出力される割込み信号をコントローラ基板から一番離れた基板から，コントローラ基板に向けて順次カスケード接続する割込み専用線を設置する。各基板に搭載された割込み処理回路では，テスト出力機能を持ちシリアルバスを介して割込み信号のテスト出力が可能であり，割込み信号の伝送遅延時間を確認して，その遅延情報を割込み処理回路に設定可能とする。【選択図】図１
2011086120.tif 000002
【特許請求の範囲】
【請求項１】
システムを統括するＣＰＵを搭載したコントローラ基板と，モータを制御する複数の制御基板と，外部機器との通信処理インターフェイスを搭載した通信基板と，外部信号の入出力インターフェイスを搭載したＩ／Ｏ基板とが，シリアルバスにて直接，あるいはバススイッチ回路を介して接続される制御装置において，
各基板から出力される割込み信号を他の基板へ伝達するためにカスケード接続された割込み専用線を備え，各基板に割込み処理回路を搭載し，
前記割込み処理回路は，自局と他局の割込み信号の優先度を判別する優先順位判別回路と，自局の割込み信号をレベル設定の情報をもとにパルス生成するパルス生成回路と，自局の割込み信号と他局の割込み信号とを合成した割込み信号を出力する合成回路と，他局の割込み信号をプルアップするプルアップ抵抗を備えたことを特徴とする制御装置。
【請求項２】
前記割込み処理回路は，テスト出力機能を持ち，シリアルバスを介してテスト出力有効設定を有効に設定することにより，前記コントローラ基板以外の割込み信号を前記コントローラ基板へ通知可能とし，前記コントローラ基板は，コントローラ基板以外の基板への前記テスト出力有効設定を有効に設定してからテスト出力の割込み信号を受け取るまでの時間を計測するタイマを備えることを特徴とする請求項１記載の制御装置。
【請求項３】
前記割込み処理回路は，他局の割込み信号のパルス数をカウントすることにより，割込み信号を特定するパルスカウンタ回路と，割込み信号幅を設定値の情報をもとに検出する信号幅有効検出回路と，前記パルスカウンタ回路により特定された割込み信号を遅延情報設定値に応じて遅延させる遅延回路と，前記遅延回路を通過した割込み信号のうち，自局に取り込む信号を選択する選択回路を備えることを特徴とする請求項２記載の制御装置。
【請求項４】
前記テスト出力機能により，コントローラ基板からのコントローラ基板以外の各基板への割込み信号のテスト出力要求から割込み信号を検出するまでの時間を計測し，その時間をもとにコントローラ基板以外の各基板の前記遅延時間を設定することを特徴とする請求項３記載の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，複数の基板がシリアルバスにて接続されて構成され，割込み信号をもとに複数のモータ等を同期制御する制御装置に関する。  
【背景技術】
【０００２】
複数のモータを制御する装置などでは，同期制御が必要とされており，システムの中で同期用割込み信号を生成して複数の装置に通知している。この同期用割込み信号をもとに，ＣＰＵは同じタイミングでモータへの指令払い出し処理を行うことが可能となる。もし，複数のモータ制御が同期していない場合，サーボ系の応答の差などにより位置ズレが生じたり，メカが振動したりするため，高精度を要求される制御装置では同期制御の精度が重要なポイントであり，同期割込み信号を必要とする装置に常に同じタイミングで，割込みを速やかに通知する仕組みが必要となる。
例えば，最近の制御装置では，各装置間の更なる省配線化を狙い，高速なシリアルバス通信を利用してシステムを構成するようになってきている。この際，割込み信号はシリアルバス通信にのせて，ＣＰＵへ通知されるようになっている（例えば，非特許文献１参照）。
図１０において，１０はコントローラ基板であり，システム全体を統括するための基板である。１３は，制御基板であり，複数のモータを制御するために，制御用のＣＰＵと制御回路，およびコントローラ基板との情報送受のためＤＰＲＡＭ(共有メモリ)が搭載されている。１６は，通信基板であり，外部機器との情報送受信を行うための通信回路が搭載されている。１８は，Ｉ／Ｏ基板であり，外部入出力情報の送受と，タイマ回路などが搭載されている。コントローラ基板と，その他各基板との間は，２７のバススイッチ回路を介してシリアルバス１００により接続されており，その他各基板にはシリアルバスをパラレルバス１０１に変換するため，２８のバス変換回路が搭載されている。コントローラ基板とその他各基板が，シリアルバスにより接続されて構成されるシステムでは，各基板で出力される割込み信号がシリアルバスを介してコントローラ基板に通知されるようになっている。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】PEX8311 DataBook_v0.95(PLXテクノロジ)，2007年3月7日，p504
【発明の概要】
【発明が解決しようとする課題】
【０００４】
非特許文献１のような最近のアプリケーション適用が増えてきたシリアルバスのシステム構成では，シリアルバススイッチなどで多段に接続し，シリアルバスをパラレルバスに変換するブリッジ回路が設置される。このため，シリアルバスのシステムでは，スイッチやブリッジによる物理的な遅延時間の差異や，通信データのトラフィックなどによる影響から，シリアルバスにのせて伝送される定周期割り込み信号の揺らぎが大きくなってしまう(図１１参照)。特に，多軸モータを制御するシステムでは，基準となる定周期割り込み信号が揺らぐと，システム性能の低下につながるという問題があった。
本発明はこのような問題点に鑑みてなされたものであり，シリアルバス構成によるシステムであっても，同期処理を行うための割込み信号を迅速かつ同じタイミングで必要とする装置へ通知し，同期割り込み信号の揺らぎを低減した制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００５】
上記問題を解決するため，本発明は次のようにしたのである。
請求項１に記載の発明では，各基板から出力される割込み信号を他の基板へ伝達するためにカスケード接続された割込み専用線を備え，各基板に割込み処理回路を搭載し，割込み処理回路は，自局と他局の割込み信号の優先度を判別する優先順位判別回路と，自局の割込み信号をレベル設定の情報をもとにパルス生成するパルス生成回路と，自局の割込み信号と他局の割込み信号とを合成した割込み信号を出力する合成回路と，他局の割込み信号をプルアップする抵抗を備えた。
請求項２の発明では，請求項１記載の装置において，割込み処理回路は，テスト出力機能を持ち，シリアルバスを介してテスト出力有効設定を有効に設定することにより，コントローラ基板以外の割込み信号をコントローラ基板へ通知可能とし，コントローラ基板は，コントローラ基板以外の基板へのテスト出力有効設定を有効に設定してからテスト出力の割込み信号を受け取るまでの時間を計測するタイマを備える。
請求項３の発明では，請求項２記載の装置において，割込み処理回路は，他局の割込み信号のパルス数をカウントすることにより，割込み信号を特定するパルスカウンタ回路と，割込み信号幅を設定値の情報をもとに検出する信号幅有効検出回路と，パルスカウンタ回路により特定された割込み信号を遅延情報設定値に応じて遅延させる遅延回路と，遅延回路を通過した割込み信号のうち，自局に取り込む信号を選択する選択回路を備える。
請求項４の発明では，請求項３記載の装置において，テスト出力機能により，コントローラ基板からのコントローラ基板以外の各基板への割込み信号のテスト出力要求から割込み信号を検出するまでの時間を計測し，その時間をもとにコントローラ基板以外の各基板の遅延時間を設定するようにした。
【発明の効果】
【０００６】
請求項１に記載の発明によると，シリアルバスを介して割込み信号をコントローラ基板へ通知しないため，シリアルバス通信による揺らぎのない割込み信号をコントローラ基板と複数の制御基板へ通知することが可能となる。また，各基板間の割り込み信号の本数を１本にしてカスケード接続することができるため，省配線化と割込みＩＦの共通化(標準化)を実現することができる。これにより，機器の拡張性も向上することができる。
また，自局と他局の割込み信号の優先度を判別する回路を搭載しているため，優先度の高い割込み信号を速やかに次段の基板へ通知することができ，その後優先度の低い割込み信号を割込み専用線に合成して出力することができる。また，割込み専用線に出力される割込み信号は，割込みレベルに応じたパルス数を事前設定された内部クロックに同期して生成されるため，細かな割込み信号パルスを出力することが可能となる。さらに，前記内部クロックは，コントローラ基板におけるシステム初期化の際に，シリアルバスを介して割込み処理回路の動作クロック周波数を設定できるため，アプリケーションに応じた割込み信号パルス幅を容易に設定変更することができる。
請求項２に記載の発明によると，コントローラ基板におけるシステム初期化の際に，シリアルバスを介して各基板の割込み信号をテスト出力することが可能なため，コントローラ基板にて各基板の割込みレベルの設定状態を確認することができる。これにより，アプリケーションに応じて使用する基板枚数が異なる際は，システム立ち上げ時の事前チェックにより，ソフトウェアによる自動化が可能となる。また，コントローラ基板に時間を計測するタイマ回路を設置していることで，前記初期化の割込み信号テスト出力を確認する際に，各基板間の割込み信号伝送遅延を確認することができる。
請求項３，４に記載の発明によると，前記基板間の割込み信号の伝送遅延情報を把握することで，コントローラ基板から各基板に各々の遅延情報を設定して，遅延回路を通過した後の割込み信号を同期させて出力することが可能となる。また，複数のコントローラ基板から構成されるシステムでは，各コントローラ基板で受け付ける割り込み信号のみを選択することができ，複雑なシステムの割込み処理にも対応可能となる。
【図面の簡単な説明】
【０００７】
【図１】本発明の第１のシリアルバスにより構成される制御装置を示す図
【図２】本発明の第１の割込み信号と各基板の処理内容を示す図
【図３】本発明の第２のシリアルバスにより構成される制御装置を示す図
【図４】本発明の割込み処理回路を示す図
【図５】本発明の割込み処理回路内部の合成回路を示す図
【図６】本発明の合成回路の割込み出力信号を示す図
【図７】本発明の割込み処理回路内部の検出回路を示す図
【図８】本発明の検出回路の割込み出力信号を示す図
【図９】本発明の制御装置の初期化処理を示す図
【図１０】従来のシリアルバスにより構成される制御装置を示す図
【図１１】従来のシリアルバスにより構成される制御装置の割込み波形を示す図
【発明を実施するための形態】
【０００８】
以下，本発明の制御装置の具体的実施例について，図に基づいて説明する。
【実施例１】
【０００９】
図１は，本発明の第１のシリアルバスにより構成される制御装置を示す図である。
図１において，システムを統括するＣＰＵ２１が搭載されたコントローラ基板１０と，モータを制御するための制御基板１，１４〜制御基板Ｎ，１５と，外部機器との通信インターフェイス回路を搭載した通信基板１６と外部入出力信号のＩ／Ｏ回路２５とタイマ回路２６を搭載したＩ／Ｏ基板１７の各基板は，複数のバススイッチ回路２７を介してシリアルバス１００により接続されて構成されている。また，各基板の内部には，割込み処理回路２０が搭載されており，コントローラ基板から一番離れているＩ／Ｏ基板から割込み信号が割込み専用線２００を介して通信基板に接続され，引き続き制御基板Ｎとカスケード接続され，最終的にはコントローラ基板に接続されている。割込み信号としては，Ｉ／Ｏ基板からはＩＮＴ１信号２０１を割込み専用線に出力し，通信基板からはＩＮＴ２信号２０２を割込み専用線に出力している。制御基板１〜制御基板Ｎでは，割込み専用線からＩＮＴ１信号を受け取り，内部のＣＰＵの割込みポートに入力している。また，コントローラ基板では，割込み専用線からＩＮＴ１信号とＩＮＴ２信号を受け取り，ＣＰＵの割込みポートに入力している。
コントローラ基板のＣＰＵ２１は，シリアルバスのインターフェイスを持っており，直接バススイッチ回路と接続されている。コントローラ基板以外の基板では，シリアルバスをパラレルバスに変換するためのバス変換回路２８を搭載している。制御基板１〜制御基板Ｎでは，バス変換回路とＤＰＲＡＭ２２がパラレルバス接続され，コントローラ基板との送受信データをＤＰＲＡＭに格納できるようになっている。制御基板１〜制御基板Ｎでは，このＤＰＲＡＭの送受信データをもとに，基板内のＣＰＵにてモータの制御を司る制御回路２３を利用して処理を行う。通信基板では，バス変換回路と通信回路２４がパラレルバス接続され，コントローラ基板のＣＰＵから外部通信の情報を確認することができる。Ｉ／Ｏ基板では，バス変換回路とＩ／Ｏ回路およびタイマ回路がパラレルバス接続され，コントローラ基板のＣＰＵから外部入出力信号やタイマ回路の情報を確認することができる。なお，コントローラ基板において，シリアルバスのインターフェイスを持たないＣＰＵを利用することもあり，その場合はバス変換回路を介して基板外部の機器とシリアルバス接続することになる。
【００１０】
図２は，本発明の第１の割込み信号と各基板の処理内容を示す図である。
図２では，図１にて使用されている割込み信号であるＩＮＴ１信号とＩＮＴ２信号のタイミングに応じて，コントローラ基板と制御基板１〜制御基板Ｎにてどのような処理が行われるか示したものである。
まず，ＩＮＴ１信号はＩ／Ｏ基板にて生成される定周期の割込み信号であり，システムの処理はＩＮＴ１信号の割り込みを基本として実行される。ＩＮＴ１信号のＬｏｗパルスが発生することにより，コントローラ基板では統括ＣＰＵのＣＰＵ処理４００が行われる。これと同時に制御基板１〜制御基板Ｎでは，各モータの制御処理４０２が並列で実行される。
つぎに，ＩＮＴ２信号は通信基板にて生成される通信処理専用の割込み信号であり，コントローラ基板ではＩＮＴ２信号のＬｏｗパルスが発生することにより通信処理４０１が実行される。
【００１１】
図４は，本発明の割込み処理回路を示す図である。
図４において，割込み処理回路２０は，各基板に搭載されている割込み処理回路の内部ブロックを示したものである。割込み処理回路の内部は，基板外部から入力されるＩＮＴｉｎ信号３００と基板内部から入力されるＩＮＴａ信号３０２を確認してＩＮＴｏｕｔ信号３０１として出力するための合成回路１と，ＩＮＴｉｎ信号の割込みレベルを確認するための検出回路２と，検出回路から出力される割込みレベルに振り分けられた信号を遅延させるための遅延回路３と，最終的に基板内部で使用するためのＩＮＴｂ信号３０３を出力するための選択回路４と，合成回路と検出回路と遅延回路を駆動するための内部クロック３１０を生成するためのクロック生成回路３１１とＩＮＴｉｎ信号に接続されたプルアップ抵抗１９から構成されている。
ここで，遅延回路はシフトレジスタなどの遅延部品から構成されており，検出回路から出力される複数の割込みレベル信号に対して，外部から遅延情報設定３０６を操作して変更することができる。選択回路においてもＩＮＴｂ信号として出力する信号に対して，外部からＩＮＴｂ出力設定３０５を操作して変更することができる。
また，クロック生成回路は，外部からクロック３０８とクロック選択設定３０９が入力され，分周回路または逓倍回路などにより生成された内部クロック３１０を出力し，クロック選択設定を外部から操作して変更することができる。
【００１２】
図５は，本発明の割込み処理回路内部の合成回路を示す図である。図６は，本発明の合成回路の割込み出力信号を示す図である。
図５において，合成回路１は内部クロック３１０に同期して駆動され，内部には割込み信号としてパルス出力するためのパルス生成回路５と，その内部にはＩＮＴｉｎ信号３００とＩＮＴａ信号３０２の優先レベルを判別するための優先順位判別回路６が搭載されている。優先順位判別回路では，ＩＮＴａ信号とＩＮＴｉｎ信号の入力タイミングが重なっている場合，ＩＮＴａレベル設定値とＩＮＴｉｎ信号を比較して割込みレベルの高い信号を優先的に出力する。最終的には，ＩＮＴｏｕｔ信号３０１が割込みレベルに応じたパルス波形が生成されてＯＲ回路７を介して出力される。また，合成回路にはシステム立ち上げ後の初期化時に，コントローラ基板からテスト用割込みを出力させるため，テスト出力有効設定３０７が設置されている。
図６において，（ａ）はテスト出力有効設定が無効(Ｌｏｗ)の状態における，ＩＮＴｉｎ信号とＩＮＴａ信号のタイミングを示すものである。本例では，ＩＮＴａ信号が入力された際には，ＩＮＴａレベル設定値が「０ｘ２」となっているため，２パルス分のＩＮＴｏｕｔ信号を出力している。ＩＮＴａレベル設定値によって，ＩＮＴｏｕｔ信号のパルス数は変わることになる。また，（ｂ）はテスト出力有効設定が有効(Ｈｉｇｈ)の状態における，ＩＮＴｏｕｔ信号のタイミングを示すものである。テスト出力有効設定がＨｉｇｈになった立ち上がりエッジを確認することで，ＩＮＴａレベル設定の値に応じたＩＮＴｏｕｔ信号を１回だけ出力する。本テストは，コントローラ基板から何度でもテスト出力有効設定に指令することで，テスト出力することが可能である。
【００１３】
図７は，本発明の割込み処理回路内部の検出回路を示す図である。図８は，本発明の検出回路の割込み出力信号を示す図である。
図７において，検出回路２は内部クロック３１０に同期して駆動され，内部にはＩＮＴｉｎ信号３００が入力されそのパルス数をカウントするパルスカウンタ回路８と，ＩＮＴｉｎ信号の有効となる幅を検出するための信号幅有効検出回路９が搭載されている。信号幅有効検出回路では，ＩＮＴｉｎ信号が何パルスであろうと，パルスが有効である幅の期間を示す信号を生成して，パルスカウンタ回路へ出力する。ＩＮＴｉｎ信号の最初の立下りから，期間設定３１２で設定された値(例えば，１μｓ)の期間はＩＮＴｉｎ信号のパルスが有効であると判断し，その間はパルスカウンタ回路を有効にしてカウント動作をさせることで，割込みレベル(ＩＮＴ１信号〜ＩＮＴｎ信号)に振り分けて出力する。
図８は，ＩＮＴｉｎ信号がＩＮＴ１信号〜ＩＮＴ３信号に振り分けられた結果を示している。１パルスの割込み信号はＩＮＴ１信号として判断され，２パルスの割込み信号はＩＮＴ２信号として判断され，３パルスの割込み信号はＩＮＴ３信号として判断されている。
【００１４】
図９は，本発明の制御装置の初期化処理を示す図である。
図９において，左からコントローラ基板，制御基板１，制御基板Ｎ，通信基板，Ｉ／Ｏ基板と配置されており，コントローラ基板からシリアルバス線を介して送られる指令を実線矢印で示し，コントローラ基板以外の基板から割込み専用線を介してカスケードで送られる割込み信号を破線矢印で示している。
まず，コントローラ基板は，ＣＰＵ内部のタイマを起動して，Ｉ／Ｏ基板に割込みのテスト出力を要求し，その結果Ｉ／Ｏ基板の割込み処理回路から通信基板に割込み信号が送信され，順次各基板の割込み処理回路を経由して，最終的にコントローラ基板へ通知される。これにより，コントローラ基板では，Ｉ／Ｏ基板が設定されている割込み信号のレベルを確認することができ，ＣＰＵ内部のタイマ値を確認することで，割込み信号要求から受信までに要する，伝送遅延(割込み処理回路による遅延時間とケーブル伝送遅延)を確認することができる。
コントローラ基板は，通信基板や各制御基板に対して同様の処理を行うことで，各基板の伝送遅延情報を入手することができる。その後，各基板の割込み処理回路に内蔵される遅延回路３に遅延情報設定３０６の情報をシリアルバスを介して設定することで，各基板でＩＮＴｂ信号として出力される信号のタイミングを調整することができる。例えば，制御基板１と制御基板ＮにてＩ／Ｏ基板から出力されるＩＮＴ１信号を同じタイミングで使用したい場合，初期化の際に計測した制御基板１と制御基板Ｎとの遅延情報の差分値を，制御基板１の遅延情報設定値とすることで，制御基板１と制御基板Ｎで実際に割込み処理回路から出力されるＩＮＴｂ信号はほぼ同じタイミングに調整できることになる。
【実施例２】
【００１５】
図３は，本発明の第２のシリアルバスにより構成される制御装置を示す図である。
図３において，図１と異なる点は，コントローラ基板が複数(２枚)となり，制御基板が１枚となった点である。また，Ｉ／Ｏ基板からＩＮＴ１信号，通信基板からＩＮＴ２信号，制御基板からＩＮＴ３信号の割込みをコントローラ基板１およびコントローラ基板２に通知できるようになっている。コントローラ基板１ではＩＮＴ１信号およびＩＮＴ２信号を受付け，コントローラ基板２ではＩＮＴ１信号およびＩＮＴ３信号を受付けることができ，マルチプロセッサ構成の制御装置においても，本割込み処理回路を搭載した基板は問題なく利用でき，コントローラ基板１とコントローラ基板２で共通に利用するＩＮＴ１信号を各ＣＰＵへ通知するタイミングをほぼ同じに設定可能とすることができる。
【産業上の利用可能性】
【００１６】
実施例では，シリアルバスを利用した制御装置を説明したが，パラレルバスを利用した制御装置においても，本発明の割込み処理回路を適用することができる。
【符号の説明】
【００１７】
１  合成回路
２  検出回路
３  遅延回路
４  選択回路
５  パルス生成回路
６  優先順位判別回路
７  ＯＲ回路
８  パルスカウンタ回路
９  信号幅有効検出回路
１０  コントローラ基板
１１  コントローラ基板１
１２  コントローラ基板２
１３  制御基板
１４  制御基板１
１５  制御基板Ｎ
１６  通信基板
１７  Ｉ／Ｏ基板
１８  Ｉ／Ｏ基板
１９  プルアップ抵抗
２０  割込み処理回路
２１  ＣＰＵ
２２  ＤＰＲＡＭ
２３  制御回路
２４  通信回路
２５  Ｉ／Ｏ回路
２６  タイマ回路
２７  バススイッチ回路
２８  バス変換回路
２９  コネクタ
１００  シリアルバス
１０１  パラレルバス
２００  割込み専用線
２０１  ＩＮＴ１信号
２０２  ＩＮＴ２信号
２０３  ＩＮＴ３信号
２０４  ＩＮＴｎ信号
３００  ＩＮＴｉｎ信号
３０１  ＩＮＴｏｕｔ信号
３０２  ＩＮＴａ信号
３０３  ＩＮＴｂ信号
３０４  ＩＮＴａレベル設定
３０５  ＩＮＴｂ出力設定
３０６  遅延情報設定
３０７  テスト出力有効設定
３０８  クロック
３０９  クロック選択設定
３１０  内部クロック
３１１  クロック生成回路
３１２  期間設定
【図１】
2011086120.tif 000003
【図２】
2011086120.tif 000004
【図３】
2011086120.tif 000005
【図４】
2011086120.tif 000006
【図５】
2011086120.tif 000007
【図６】
2011086120.tif 000008
【図７】
2011086120.tif 000009
【図８】
2011086120.tif 000010
【図９】
2011086120.tif 000011
【図１０】
2011086120.tif 000012
【図１１】
2011086120.tif 000013