(57)【要約】【課題】  配置されている駆動モジュールの種類を簡単な構成で判別することが可能となる駆動制御装置を提供する。【解決手段】  複数のインバータ回路２１が夫々が搭載される回路基板に、夫々容量が異なる判別用コンデンサ２２を配置し、コントローラ２０のＣＰＵ２４は、ＦＰＧＡ２３を介して判別用コンデンサ２２に対する充電を行い、その充電電位が所定の電位に達するまでの時間を計測することで、複数の駆動モジュール、即ちインバータ回路２１の種類を判別する。【選択図】  図１
2005117791.tif 000002
【特許請求の範囲】
【請求項１】
複数のアクチュエータを夫々駆動する複数の駆動回路と、これらの駆動回路に制御信号を出力するための制御回路とを備えて構成される駆動制御装置において、
前記複数の駆動回路が夫々搭載される回路基板は、装置本体に対して着脱可能となる駆動モジュールとして構成され、
前記回路基板には、夫々容量が異なる判別用コンデンサが配置されており、
前記制御回路は、前記判別用コンデンサに対する充電を行い、その充電電位が所定の電位に達するまでの時間を計測することで、前記複数の駆動モジュールの種類を判別することを特徴とする駆動制御装置。
【請求項２】
前記制御回路は、前記判別用コンデンサの充電電位が所定の電位に達するか否かを、論理回路素子を用いて判定することを特徴とする請求項１記載の駆動制御装置。
【請求項３】
前記制御回路は、前記複数のアクチュエータに関する定格情報が与えられると、夫々のアクチュエータに対応する駆動モジュールが夫々の定格に応じているか否かを判断し、両者が不一致となる組み合わせが存在する場合は、アクチュエータの駆動制御を停止することを特徴とする請求項１又は２記載の駆動制御装置。
【請求項４】
前記制御回路は、前記不一致となる組み合わせが存在する場合は、報知手段を介してユーザに対する報知動作を行なうことを特徴とする請求項３記載の駆動制御装置。
【請求項５】
前記複数のアクチュエータは、多関節型ロボットの関節部分を駆動するものであることを特徴とする請求項１乃至４の何れかに記載の駆動制御装置。
【請求項６】
複数のアクチュエータを夫々駆動する複数の駆動回路と、これらの駆動回路に制御信号を出力するための制御回路とを備え、前記複数の駆動回路が夫々搭載される回路基板は、装置本体に対して着脱可能となる駆動モジュールとして構成される駆動制御装置において、前記駆動モジュールの種類を判別する方法であって、
前記回路基板に、夫々容量が異なる判別用コンデンサを配置し、
前記判別用コンデンサに対する充電を行い、その充電電位が所定の電位に達するまでの時間を計測することで、前記複数の駆動モジュールの種類を判別することを特徴とする駆動制御装置の駆動モジュール判別方法。
【請求項７】
前記判別用コンデンサの充電電位が所定の電位に達するか否かを、論理回路素子を用いて判定することを特徴とする請求項６記載の駆動制御装置の駆動モジュール判別方法。
【請求項８】
前記複数のアクチュエータに関する定格情報が与えられると、夫々のアクチュエータに対応する駆動モジュールが夫々の定格に応じているか否かを判断し、両者が不一致となる組み合わせが存在する場合は、アクチュエータの駆動制御を停止することを特徴とする請求項６又は７記載の駆動制御装置の駆動モジュール判別方法。
【請求項９】
前記不一致となるい組み合わせが存在する場合は、ユーザに対する報知動作を行なうことを特徴とする請求項８記載の駆動制御装置の駆動モジュール判別方法。
【請求項１０】
前記複数のアクチュエータは、ロボットの関節部分を駆動するものであることを特徴とする請求項６乃至９の何れかに記載の駆動制御装置の駆動モジュール判別方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のアクチュエータを夫々駆動するための複数の駆動モジュールを供えてなる駆動制御装置、及びその駆動制御装置の駆動モジュール判別方法に関する。
【背景技術】
【０００２】
図６は、一般的な産業用ロボットの制御システム構成を示すものである。当該システムは、ロボット本体１と、このロボット本体１を制御するコントローラ２と、このコントローラ２に接続されたティーチングペンダント３とから構成されている。
上記ロボット本体１は多関節型として構成され、ベース４と、このベース４に水平方向に旋回可能に支持されたショルダ部５と、このショルダ部５に上下方向に旋回可能に支持された下アーム６と、この下アーム６に上下方向に旋回可能に支持された上アーム７と、この上アーム７に上下方向に旋回可能に支持された手首８とから構成されており、手首８は先端部に回転（捻り動作）可能なフランジ９を備えている。尚、図示はしないが、ワークを把持するハンドはフランジ９に取り付けられるようになっている。
【０００３】
また、図７には、ロボットの駆動系を概略的に示す。例えば単相２００Ｖの商用交流電源１０と主電源線１１ａ，１１ｂとの間には、サーキットブレーカ１２及び電源スイッチ１３が直列に接続されている。尚、電源スイッチ１３は、トライアックのような半導体スイッチング素子或いはリレースイッチのような機械的スイッチにより構成することができる。
【０００４】
主電源線１１ａ，１１ｂに接続された整流モジュール１４は、全波整流回路及び平滑コンデンサなど（何れも図示せず）を含んで構成されている。この整流モジュール１４の一対の出力端子に接続されたプラス側及びマイナス側の直流母線１５ａ及び１５ｂには、ロボット本体１の各関節部分に配置されている複数の駆動モータ（アクチュエータ）１６（Ａ，Ｂ，Ｃ，・・・）を駆動するため、複数のインバータ回路（駆動回路）１７（Ａ，Ｂ，Ｃ，・・・）が接続されている。尚、インバータ回路１７は、コントローラ２の本体内部に配置されるものである。
【０００５】
このインバータ回路１７は、６個のスイッチング素子１８（例えば、ＩＧＢＴ）を三相ブリッジ接続すると共に、各スイッチング素子１８と並列にフライホイールダイオード１９を接続した周知のものであり、各スイッチング素子１８は、コントローラ２によって出力されるＰＷＭ信号によりオンオフされる構成となっている。
また、具体的には図示しないが、ショルダ部５、各アーム６，７、手首８およびフランジ９部分夫々の変位位置を検出するため、対応する駆動モータ１６にはロータリエンコーダが組み込まれている。そして、コントローラ２は、ロータリエンコーダの検出信号によってショルダ部５、各アーム６，７、手首８およびフランジ９の変位位置を検出し、動作プログラムに基づいて各部を動作させる際にフィードバック制御するようになっている。
【０００６】
ところで、上記の制御システムにおいて、ロボット本体１とコントローラ２とは必ずしも１対１対応の構成ではなく、夫々が別個独立の製品として製造され、両者が適当な組み合わせによって使用される場合がある。そして、ロボット本体１の各関節を駆動する駆動モータ１６については、様々な定格のものが用いられている（例えば、７５０Ｗ，４００Ｗ，２００Ｗ，１００Ｗ，５０Ｗなど）。従って、コントローラ２に内蔵されるインバータ回路１７側も、夫々の駆動モータ１６の定格に応じた電流容量を有するものを対応させる必要がある。
【０００７】
このような要請から、インバータ回路１７は、通常はコントローラ２の本体に対して着脱可能となるモジュールとして構成されており、コントローラ２の制御対象となるロボット本体１の仕様に合わせてインバータ回路１７を適宜入れ替えて使用するようになっている。
尚、本発明に近似するような先行技術が開示されている文献については、一般的な産業用ロボットの構成が開示されているものの他、出願人は特に提示すべきものを発見することができなかった。
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、従来のコントローラ２では、ロボット本体１側の駆動モータ１６の定格とコントローラ２側のインバータ回路１７の種類との対応が適切か否かを確認する作業は、専ら作業者が目視で行うようになっていた。そのため、両者の対応が不適切である場合でも、確認を怠ればロボット本体１の運転が開始されてしまうという問題があった。そして、両者の対応が不適切のままロボット本体１の運転を継続すると、インバータ回路１７が過負荷となるおそれもある。
【０００９】
本発明は上記事情に鑑みて成されたものであり、その目的は、配置されている駆動モジュールの種類を簡単な構成で判別することが可能となる駆動制御装置、及びその駆動制御装置の駆動モジュール判別方法を提供することにある。
【課題を解決するための手段】
【００１０】
請求項１記載の駆動制御装置によれば、複数の駆動回路が夫々搭載される回路基板に、夫々容量が異なる判別用コンデンサを配置し、制御回路は、判別用コンデンサに対する充電を行い、その充電電位が所定の電位に達するまでの時間を計測することで、複数の駆動モジュールの種類を判別する。
例えば、駆動モジュールの種類を判別するために、回路基板にディップスイッチなどを用意し、種類に応じてオンオフの設定を切換え、その切換え状態を読取ることで判別することも考えられる。しかしながら、このような方式では、駆動モジュールの種類が増加するのに応じて判別用のデータビット数も増加することになる。例えば、５種類以上を判別するには各モジュール毎に３ビットを要するので、その分だけ信号線を余分に設ける必要がある。
【００１１】
これに対して、本発明のように容量が異なるコンデンサを用いれば、そのコンデンサの充電電位が所定の電位に達するまでの時間は容量に応じて変化するため、その時間を計測すれば駆動モジュールの種類を判別することができる。そして、その電位の観測は、各駆動モジュールに対応して配置される１本の信号線を順次切換えて観測することができるので、駆動モジュールの種類が増加するのに応じて各モジュール毎の信号線の数を増やす必要がない。
【００１２】
請求項２記載の駆動制御装置によれば、制御回路は、判別用コンデンサの充電電位が所定の電位に達するか否かを、論理回路素子を用いて判定する。即ち、前記充電電位を論理回路素子の入力信号として与えれば、スレッショルドレベルを超えた時点で当該論理回路素子の出力信号レベルが変化するので、制御回路は、充電電位が所定の電位に達したことを極めて容易に判定することができる。
【００１３】
請求項３記載の駆動制御装置によれば、制御回路は、夫々のアクチュエータに対応する駆動モジュールが夫々の定格に応じているか否かを判断し、両者が不一致となる組み合わせが存在するとアクチュエータの駆動制御を停止する。従って、駆動回路が過負荷となることを防止できる。
請求項４記載の駆動制御装置によれば、制御回路は、両者が不一致となる組み合わせが存在する場合は、報知手段を介してユーザに対する報知動作を行なうので、ユーザは、駆動モジュールの交換を行うなど駆動制御を再開させるための措置を迅速に行なうことが可能となる。
【００１４】
請求項５記載の駆動制御装置によれば、複数のアクチュエータを、多関節型ロボットの関節部分を駆動するものとする。即ち、多関節型ロボットにおいては、各関節（駆動軸）に対応して複数のアクチュエータが配置されているので、ロボットのコントローラに本発明の駆動制御装置を適用すれば、当該装置に配置されている駆動モジュールが多関節型ロボットの各部を駆動するのに適しているか否かを迅速に判断することができる。
【発明を実施するための最良の形態】
【００１５】
以下、本発明を産業用の多関節型ロボットを駆動制御するコントローラに適用した場合の一実施例について図１乃至図５を参照して説明する。尚、図６及び図７と同一部分には同一符号を付して説明を省略し、以下異なる部分についてのみ説明する。駆動系を中心とする電気的構成を示す図１において、コントローラ２に代わるコントローラ（駆動制御装置）２０では、インバータ回路１７（Ａ，Ｂ，Ｃ，・・・）に代わるインバータ回路（駆動回路）２１（Ａ，Ｂ，Ｃ，・・・）が配置されている。そして、そのインバータ回路２１（Ａ，Ｂ，Ｃ，・・・）が搭載されている回路基板には、夫々容量が異なる判別用コンデンサ２２（Ａ，Ｂ，Ｃ，・・・）が設けられている。判別用コンデンサ２２の一端は、回路グランドに接続されており、他端は、ＦＰＧＡ(Field Programmable Gate Array)２３の入力ポートに夫々接続されている。また、インバータ回路２１（Ａ，Ｂ，Ｃ，・・・）は、コントローラ２０本体に対して着脱可能な駆動モジュールとして構成されている。
【００１６】
コントローラ２０は、ＣＰＵ（制御回路）２４及びＦＰＧＡ（制御回路）２３を中心として、駆動モータ１６の駆動制御を行うようになっている。図２は、ＦＰＧＡ２３の内部構成を本発明の要旨に係る部分のみ示すものである。ＦＰＧＡ２３は、カウンタ２５、データラッチ２６、マルチプレクサ（ＭＰＸ）２７、ＡＮＤゲート（論理回路素子）２８などを備えている。マルチプレクサ２７の各入力端子には、各インバータ回路２１に配置されている判別用コンデンサ２２の他端側に接続される信号線２９（Ａ，Ｂ，Ｃ，・・・）が、入力抵抗３０及び入力バッファ３１を介して夫々接続されている。
【００１７】
また、入力バッファ３１の入力側には、出力バッファ３２の出力端子が接続されている。出力バッファ３２は、トライステート出力であり、その入力端子は回路グランド（即ち、データ「０」）に接続されている。信号線２９は、プルアップ抵抗３３を介して３．３Ｖの制御用電源に接続されており、プルアップ抵抗には、ダイオード３４が並列に接続されている。マルチプレクサ２７の出力端子は、ＡＮＤゲート２８の一方の入力端子に接続されており、ＡＮＤゲート２８の他方の入力端子には、カウンタ２５に対するイネーブル信号（ハイアクティブ）が与えられている。そして、ＡＮＤゲート２８の出力信号は、データラッチ２６に対するラッチ信号として与えられている。
【００１８】
次に、本実施例の作用について図３乃至図５も参照して説明する。図４は、コントローラ２０に電源が投入された場合に、ＣＰＵ２４，ＦＰＧＡ２３によって行なわれる処理の内容を示すフローチャートである。また、図３は、判別処理における各部の信号波形を示すタイミングチャートである。ＣＰＵ２４は、先ず、図示しない不揮発性のメモリに記憶されている制御用の各種パラメータを読み込む（ステップＳ１）。そのパラメータの中には、ティーチングペンダント３によって入力されたロボット本体１についての仕様データも含まれている。
【００１９】
それから、ＣＰＵ２４は、ＦＰＧＡ２３に制御信号を出力し、判別用コンデンサ２２の充電リセット（放電）を行う（ステップＳ２）。即ち、出力バッファ３２がディスエーブルであれば、判別用コンデンサ２２は、プルアップ抵抗３３を介して３．３Ｖに充電されている（図３（ａ），（ｂ）、時点（１）参照）。そして、出力バッファ３２をイネーブルにすると、信号線２９はグランドレベルにドライブされるので、判別用コンデンサ２２の充電電荷は放電される（同、時点（２）参照）。
【００２０】
続いて、ＣＰＵ２４は、ロボット本体１に接続されて実際に使用されている駆動モジュール（即ち、ロボット本体１が有する各駆動軸）の全てについて判別処理を行なったか否かを判断し（ステップＳ３）、全てについて行なっていなければ（「ＮＯ」）、その時点で判別対象となっている駆動モジュールの信号線２９に接続されている出力バッファをディスエーブルにすると同時に、カウンタ２５のイネーブル信号をアクティブにする（ステップＳ４、図３（ａ），（ｃ）、時点（３）参照）。
【００２１】
すると、判別用コンデンサ２２に対する充電が行われ、その端子電圧は上昇する（図３（ｂ）参照）。同時に、カウンタ２５はカウント動作を開始する（ステップＳ５）。そして、判別用コンデンサ２２の充電電位がＡＮＤゲート２８のスレッショルドレベル（ＶIH）である２．０Ｖ（所定電位）に達すると、ＡＮＤゲート２８の出力端子はハイレベルに変化する（図３（ｄ）、時点（４）参照）。従って、データラッチ２６は、図３に示す時点（４）でカウンタ２５のカウントデータをラッチする（ステップＳ６，「ＹＥＳ」）。それから、ＣＰＵ２４は、ＦＰＧＡ２３内のデータラッチ２６の出力データを読み込み、その値が、当該駆動モジュールが駆動しようとするロボット本体１の駆動モータ１６の定格に対応しているか否かを判断する（ステップＳ７）。
【００２２】
ここで、図５は、判別用コンデンサ２２の容量設定に対するカウンタ２５のカウント値の一例を示す。判別用コンデンサ２２は、「ＳＳ」の１２０ｐＦから、「ＬＬＬ」の２２００μＦまで６段階の容量を設定する。これらは、駆動モータ１６の定格の大きさに応じた駆動モジュールの種類に対応している。尚、判別用コンデンサ２２が未実装の場合であっても、ＦＰＧＡ２３の入力容量として２０ｐＦ程度が存在するので、「未実装」も１つの設定レベルとして使用が可能である。
【００２３】
尚、制御電源電圧３．３Ｖは標準値であり、実際には最小〜最大の間で０．３Ｖ程度は異なることが想定される。また、判別用コンデンサ２２としても、実際の製品の容量は±５％、±１０％などのものが一般的であるから、それらの条件によって所定電位までの充電時間，カウント値には幅が出る。充電時間は、判別用コンデンサ２２の設定容量における全レンジの最小から最大までで、数１０ｎ秒〜１０数秒程度の範囲となる。
【００２４】
そして、カウンタ２５は１６ビット、４０ＭＨｚクロックでカウント動作を行なう。すると、「未実装」の場合のカウント値は「０」〜「５」、「ＳＳ」の場合は「６」〜「２７」、「Ｓ」の場合は「３３」〜「１５５」、「Ｍ」の場合は「１５９」〜「７５４」、・・・のようになる。従って、ＣＰＵ２４は、カウンタ２５のカウント値が、これらの各レンジの何れに属するかによって、駆動モジュールの種類を判別する。
【００２５】
再び図４を参照する。ステップＳ７において、ＣＰＵ２４は、データラッチ２６より読取ったカウント値から上述のように駆動モジュールの種類を判別し、その種類が、当該駆動モジュールが駆動しようとする駆動モータ１６の定格に一致するか否かを判断する。そして、両者が一致すれば（「ＹＥＳ」）ステップＳ３に戻り、マルチプレクサ２７により信号線２９を切換え、次の駆動モジュールについての判別を行う。
【００２６】
一方、ステップＳ７において両者が不一致となる組み合わせがあった場合（「ＮＯ」）、ＣＰＵ２４は、例えば、コントローラ２０の本体に設けられている図示しないブザーを鳴動させたり警告ランプを点灯させるなど、報知手段によってユーザに対する報知処理を行なう（不一致エラー出力、ステップＳ９）。そして、そのまま処理を終了する。即ち、コントローラ２０によるロボット本体１の駆動制御は、その時点で中止される。
【００２７】
以上のように本実施例によれば、複数のインバータ回路２１が夫々搭載される回路基板に、夫々容量が異なる判別用コンデンサ２２を配置し、コントローラ２０のＣＰＵ２４は、ＦＰＧＡ２３を介して判別用コンデンサ２２に対する充電を行い、その充電電位が所定の電位に達するまでの時間を計測することで、複数の駆動モジュール、即ちインバータ回路２１の種類を判別するようにした。従って、判別用コンデンサ２２の容量の違いにより、駆動モジュールの種類を簡単に判別することができる。そして、判別用コンデンサ２２の充電電位の観測は、各駆動モジュール毎に設けられる１本の信号線２９を順次切換えて観測することができるので、駆動モジュールの種類が増加するのに応じて、各駆動モジュール毎の信号線の数を増やす必要がない。
【００２８】
そして、ＦＰＧＡ２３は、判別用コンデンサ２２の充電電位が所定の電位に達するか否かを、ＡＮＤゲート２８を用いて判定するので、充電電位が所定の電位に達したことを極めて容易に判定することができる。また、ＡＮＤゲート２８はＴＴＬであるから、ＣＭＯＳロジックに比較して電位の判定をより迅速に行うことができる。
更に、ＣＰＵ２４は、夫々の駆動モータ１６に対応する駆動モジュールが夫々の定格に応じているか否かを判断し、両者が不一致となる組み合わせが存在すると駆動モータ１６の駆動制御を停止するので、インバータ回路２１が過負荷となることを防止できる。加えて、ＣＰ０Ｕ２４は、両者が不一致となる組み合わせが存在する場合は、報知手段を介してユーザに対する報知動作を行なうので、ユーザは、駆動モジュールの交換を行うなど駆動制御を再開させるための措置を迅速に行なうことが可能となる。
【００２９】
そして、本発明を多関節型のロボット本体１を駆動制御するコントローラ２０に適用したので、各関節部分を駆動するため多くの駆動モータ１６を有しているロボット本体１について、駆動モジュールとのマッチングが適切か否かを迅速に判断することができる。
【００３０】
本発明は上記し且つ図面に記載した実施例にのみ限定されるものではなく、以下のような変形又は拡張が可能である。
報知手段による報知動作は、必要に応じて行えば良い。
コントローラ２０に内蔵する駆動モジュールの数に余裕がある場合には、マッチングが不適切である場合、駆動モータ１６の駆動を停止する処理に代えて、駆動モータ１６とのマッチングが適切となる駆動モジュールに接続を自動的に切換えた後、駆動モータ１６の駆動を開始するように構成しても良い。
【００３１】
ＦＰＧＡ２３に限ることなく、ゲートアレイやディスクリート素子を用いて同様の回路を構成しても良い。
充電電位の判定を行う回路については、ＡＮＤゲート２８に代えて、ＣＭＯＳロジックのＡＮＤゲートを用いたり、コンパレータを用いても良い。
インバータ回路２１を構成するスイッチング素子は、ＩＧＢＴに限ることなく、パワートランジスタやパワーＭＯＳＦＥＴであっても良い。
【００３２】
アクチュエータは、駆動モータ１６に限ることなく、電気信号に基づいて駆動対象を変位させるものであれば形態は問わない。
商用交流電源は、三相交流であっても、電圧が１００Ｖであっても良いことは言うまでもない。
ロボットのコントローラに限ることなく、複数のアクチュエータを駆動するための複数の駆動回路を備えている駆動制御装置であれば、適用が可能である。
【図面の簡単な説明】
【００３３】
【図１】本発明を産業用の多関節型ロボットを駆動制御するコントローラに適用した場合の一実施例であり、駆動系を中心とする電気的構成を示す図
【図２】コントローラに内蔵されるＦＰＧＡの内部構成を、本発明の要旨に係る部分のみ示す図
【図３】判別処理における各部の信号波形を示すタイミングチャート
【図４】コントローラに電源が投入された場合に、ＣＰＵ，ＦＰＧＡによって行なわれる処理の内容を示すフローチャート
【図５】判別用コンデンサの容量設定に対するカウンタのカウント値の一例を示す図
【図６】従来技術を示すもので、産業用ロボットの外観構成を示す斜視図
【図７】図１相当図
【符号の説明】
【００３４】
図面中、１はロボット本体、２０はコントローラ（駆動制御装置）、２１はインバータ回路（駆動回路）、２２は判別用コンデンサ、２３はＦＰＧＡ（制御回路）、２４はＣＰＵ（制御回路）、２８はＡＮＤゲート（論理回路素子）を示す。
【図１】
2005117791.tif 000003
【図２】
2005117791.tif 000004
【図３】
2005117791.tif 000005
【図４】
2005117791.tif 000006
【図５】
2005117791.tif 000007
【図６】
2005117791.tif 000008
【図７】
2005117791.tif 000009