(57)【特許請求の範囲】
【請求項１】
多可動軸型ロボット本体の各軸に配置される永久磁石型のモータにそれぞれ対応して配置される、前記モータの各相巻線に電流を出力する複数の駆動回路及び前記モータの電気角を検出する複数の位置検出器と、前記複数の位置検出器より各モータの電気角を得ると、前記複数の駆動回路を介して各モータを駆動制御する制御回路とを備えるロボットの制御装置において、
前記制御回路は、前記複数のモータの何れか１つを検査対象モータとして、
電源投入時に、前記検査対象モータに配置されている位置検出器によって得られる位置信号から、前記検査対象モータの電気角を初期位置として取得する初期位置取得手段と、
前記検査対象モータの電気角が前記初期位置を維持するように、対応する駆動回路を介して前記検査対象モータの各相巻線に駆動電流を出力する駆動制御手段と、
この駆動制御手段が前記駆動電流を出力している期間に、前記各軸に配置されるモータの何れかが回転した場合は、前記複数の駆動回路とそれぞれに対応するモータとの接続状態の不良を判定する接続状態判定手段とを備えることを特徴とするロボットの制御装置。
【請求項２】
前記制御回路は、前記複数のモータの内、最初に容量が最小のモータを前記検査対象モータとして選択すると、以降は容量が大きくなる順に前記検査対象モータを順次選択して、前記接続状態判定手段による判定を繰り返し実行することを特徴とする請求項１記載のロボットの制御装置。
【請求項３】
前記駆動制御手段は、前記接続状態判定手段による前記判定の結果が「良」である場合に、前記検査対象モータに付与する回転力を漸増させるように前記検査対象モータの各相巻線に駆動電流を出力し、
前記接続状態判定手段は、前記検査対象モータが前記駆動電流に応じて回転したか否かによって、更に前記接続状態の良否を判定することを特徴とする請求項１又は２記載のロボットの制御装置。
【請求項４】
多可動軸型ロボット本体の各軸に配置される永久磁石型のモータにそれぞれ対応して配置される、前記モータの各相巻線に電流を出力する複数の駆動回路及び前記モータの電気角を検出する複数の位置検出器と、前記複数の位置検出器より各モータの電気角を得ると、前記複数の駆動回路を介して各モータを駆動制御する場合、
前記複数のモータの何れか１つを検査対象モータとして、
電源投入時に、前記検査対象モータに配置されている位置検出器によって得られる位置信号から、前記検査対象モータの電気角を初期位置として取得すると、
前記検査対象モータの電気角が前記初期位置を維持するように、対応する駆動回路を介して前記検査対象モータの各相巻線に駆動電流を出力し、
前記駆動電流を出力している期間に、前記各軸に配置されるモータの何れかが回転した場合は、前記複数の駆動回路とそれぞれに対応するモータとの接続状態の不良を判定することを特徴とするロボットの接続不良判定方法。
【請求項５】
前記複数のモータの内、最初に容量が最小のモータを前記検査対象モータとして選択すると、以降は容量が大きくなる順に前記検査対象モータを順次選択して、前記接続状態の判定を繰り返し実行することを特徴とする請求項４記載のロボットの接続不良判定方法。
【請求項６】
前記接続状態の判定結果が「良」である場合に、前記検査対象モータに付与する回転力を漸増させるように前記検査対象モータの各相巻線に駆動電流を出力し、
前記検査対象モータが前記駆動電流に応じて回転したか否かによって、更に接続状態の良否を判定することを特徴とする請求項４又は５記載のロボットの接続不良判定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、多可動軸型ロボット本体の各軸に配置される永久磁石型の同期モータを駆動制御するロボットの制御装置，及びロボットの接続不良判定方法に関する。
【背景技術】
【０００２】
ロボットシステムについては、故障の発生を極力抑止するために十分な考慮を払った上で設計や生産が行われている。しかしながら、経年劣化や、設計時の想定を上回る負荷が加わるなどした結果、一部の部品に故障が発生することが避けられない場合がある。すると、故障の修理に伴い、ロボットの部品を交換したり配線を接続し直したりする必要があり、その際に作業ミスが発生すると配線接続を誤る場合もありうる。
モータの駆動制御系について誤配線がある状態でロボットを動作させようとすると、本来発生すべきトルクが発生しなかったり、動作を停止させようとすると逆にモータが加速したり、動作対象に指定したはずの軸とは異なる軸のモータが突然動作することなどが想定される。これらは、ユーザが予期しないロボットの動作を引き起こすことになるため、状況によっては安全上問題になることがある。
【０００３】
そして、モータの故障や、モータと駆動回路との間の配線誤り等を検出する技術は従来様々なものが提案されている。例えば特許文献１には、電源をオンした後に行う最初の加速時において、サーボモータのＵ，Ｖ相出力端子に流れる電流を検出し、その電流波形のパターンを監視してモータ出力端子の誤結線を検出する技術が開示されている。また、特許文献２には、ブレーキの解除後に、タイマをスタートさせると共にサーボアンプをオンして移動指令をサーボ制御器に出力して、各軸ごとにトルク指令値，電流フィードバック値，位置指令値，位置フィードバック値などの異常判断指標を記憶し、時間ｔ０の経過後にサーボアンプをオフしてブレーキをかけ、その時点の上記異常判断指標の各値を取得すると、それぞれの整合関係をチェックして異常を判定する技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平９−１６２３３号公報
【特許文献２】特開２０００−１８１５２１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１，２に開示されている判定方式では、判定に用いる電流等のパラメータがモータに係る負荷重量の大きさに影響を受けるため、判定に際しては事前に負荷重量の情報を得ておく必要がある。したがって、ユーザによる情報支援を受けることが必須となり、ユーザに作業負担を負わせてしまう。また、事前に与えた情報と、実際の負荷重量とが異なる場合もあるため、確実な検出が難しいという問題があった。
また、特許文献１，２の方式では、判定を行うためにモータをある程度回転させることが前提となっている。ところが、ロボットの動作制御は一般に、各軸モータの回転量をエンコーダ等の位置検出器により検出しつつ行うフィードバック制御である。そのため、複数の軸間で誤配線が生じていると、フィードバック制御量が本来の値とは異なる不適切な値となって誤動作量が大きく増加することも想定される。
【０００６】
また、１つの軸；モータの相間で誤配線が生じている場合には、与えられた指令値に対してモータの回転方向が逆になることがあるため、指令値と検出位置との偏差が大きくなって正帰還が作用し、やはり誤動作量が大きく増加するおそれがある。更に、位置検出器が位置検出信号を出力する配線に誤りや一部の断線が生じていると、検出位置と実際のモータの電気角とにずれが生じて、上記相間の誤配線と同様の事態に至る場合がある。
【０００７】
本発明は上記事情に鑑みてなされたものであり、その目的は、誤配線が生じている状態でも、モータの誤動作量を極力少なくした状態で、誤配線を検出できるロボットの制御装置，及びロボットの接続不良判定方法を提供することにある。
【課題を解決するための手段】
【０００８】
請求項１記載のロボットの制御装置によれば、制御回路は、複数のモータの何れか１つを検査対象モータとして、初期位置取得手段により、電源投入時に検査対象モータに配置されている位置検出器によって得られる位置信号から、検査対象モータの電気角を取得する。そして、検査対象モータの電気角が初期位置を維持するように吸引力が最大になる電流位相に固定した状態で、対応する駆動回路を介して検査対象モータの各相巻線に駆動電流を出力すると、その電流出力期間内にロボット本体の各軸に配置されるモータの何れかが回転した場合は、各駆動回路とそれぞれに対応するモータとの接続状態を不良と判定する。
【０００９】
このように判定を行えば、駆動回路と対応するモータとの接続が誤っていることで何れかのモータが回転する場合でも、その回転量は極めて僅かな値に留まる。すなわち、最大でもモータが機械角で１回転以上することはなく、回転子の極数と固定子のスロット数との関係で決まる数分の１回転以内に収まる。したがって、それに伴うロボット本体の動作変化量も僅かとなるから安全性を維持することができる。また、上記の判定は、制御回路が実行する制御プログラムを変更すれば容易に実施できるので、既存のロボットシステムに対しても容易に適用することができる。
【００１０】
請求項２記載のロボットの制御装置によれば、制御回路は、複数のモータの内、最初に容量が最小のモータを検査対象モータとして選択すると、以降は容量が大きくなる順に検査対象モータを順次選択して接続状態判定手段による判定を繰り返し実行する。斯様に構成すれば、接続判定を行うために駆動制御手段が流す駆動電流の量が最初は小さな値となり、そこから順次電流量が大きくなるように変化する。したがって、容量の小さい小型モータの巻線に大き過ぎる駆動電流を流すことが無く、巻線が発生する磁界によって回転子に配置されている永久磁石が減磁する事態を回避できる。
【００１１】
請求項３記載のロボットの制御装置によれば、駆動制御手段は、接続状態判定手段による前記判定の結果が「良」である場合に、検査対象モータに付与する回転力を漸増させるように駆動電流を出力し、接続状態判定手段は、検査対象モータが駆動電流に応じて回転したか否かにより更に接続状態の良否を判定する。すなわち、請求項１のように判定を行った結果、何れのモータも回転しなかった場合は、複数の軸間における一部の誤接続は無いことが確認される。
【００１２】
その上で、請求項３のように判定を行えば、検査対象モータと他の１つのモータとの間で全ての接続が入れ替わっている場合は、検査対象モータ以外のモータが回転することで判定できる。また、検査対象モータの相間に誤接続が生じている場合には、与えた駆動電流指令値に対して検査対象モータが逆方向に回転することで判定できる。したがって、誤接続判定を、様々なケースについて確実に行うことができる。
【図面の簡単な説明】
【００１３】
【図１】第１実施例であり、（ａ）は故障・誤接続判定処理を示すフローチャート、（ｂ）は（ａ）のステップＳ４で行う検査の詳細を示すフローチャート
【図２】ステップＳ１９で「ＹＥＳ」と判断する正常な場合のイメージ図
【図３】ステップＳ１８で「ＹＥＳ」と判断する異常な場合のイメージ図
【図４】ロボットシステムの構成を示す図
【図５】サーボモータの駆動系及び制御系を示すブロック図
【図６】サーボモータの構造を模式的に示す図
【図７】サーボモータの軸角（機械角）と電気角との関係を示す図
【図８】電気角と駆動電流との位相差に応じてサーボモータに発生する回転力と、固定子−回転子間に作用する吸引・反発力とが変化する状態を示す図
【図９】図８に示す一部の状態を回転座標系で示す図
【図１０】第２実施例を示す図１相当図
【発明を実施するための形態】
【００１４】
（第１実施例）
以下、第１実施例について図１ないし図９を参照して説明する。図４は、ロボットシステムの構成を示す。このロボット本体１は、ベース（回転軸）２上に、この場合６軸のアームを有し、そのアームの先端には、図示しないハンド等のツールが取り付けられる。前記ベース２上には、第１関節（可動軸）Ｊ１を介して第１のアーム３が回転可能に連結されている。この第１のアーム３には、第２関節Ｊ２を介して上方に延びる第２のアーム４の下端部が回転可能に連結され、さらに、この第２のアーム４の上端部には、第３関節Ｊ３を介して第３のアーム５が回転可能に連結されている。
【００１５】
この第３のアーム５の先端には第４関節Ｊ４を介して第４のアーム６が回転可能に連結され、この第４のアーム６の先端には第５関節Ｊ５を介して第５のアーム７が回転可能に連結され、この第５のアーム７には第６関節Ｊ６を介して第６のアーム８が回転可能に連結されている。なお、各関節Ｊ１〜Ｊ６においては、サーボモータ９（１〜６）により（図５参照）各アーム３〜８を回転駆動するようになっている。
【００１６】
制御装置１１は、各軸のサーボモータ９（１〜６）に対応して独立したドライバユニット１２（１〜６）を備えており、これらのドライバユニット１２は制御回路１３（図５参照）によって制御される。そして、ロボット１本体と各ドライバユニット１２（１〜６）との間は、モータ線１４及びエンコーダ線１５によって接続されている。モータ線１４は、ドライバユニット１２に内蔵されているインバータ（駆動回路，図５参照）１６の各相出力端子と、サーボモータ９の固定子巻線との間を接続する配線である。モータ線１４のドライバユニット１２側は６つに分岐しており、各分岐先がドライバユニット１２（１〜６）にそれぞれ接続されている。
【００１７】
また、エンコーダ線１５は、ロボット本体１の各軸について、サーボモータ９（１〜６）に配置されている位置検出器１７（１〜６）（図５参照）と、ドライバユニット１２（１〜６）とを接続する配線である。位置検出器１７は、例えばロータリエンコーダ等で構成され、サーボモータ９の回転子の絶対位置を例えば光学式により検出し、位置データをシリアル通信によってドライバユニット１２側に送信する。エンコーダ線１５のドライバユニット１２側も６つに分岐しており、各分岐先がドライバユニット１２（１〜６）にそれぞれ接続されている。
【００１８】
図５は、サーボモータ９の駆動系及び制御系を示すブロック図である。インバータ１６は、例えばパワートランジスタ等の６個のスイッチング素子を三相ブリッジ接続して構成されている。電源回路１８は、６個のダイオードを三相ブリッジ接続して構成される整流回路１９と平滑コンデンサ２０とで構成され、三相交流電源２１を整流・平滑してインバータ１６に直流電源を供給する。
【００１９】
また、図５には、例えばマイクロコンピュータにより構成される制御回路（初期位置判定手段，駆動制御手段，接続状態判定手段）１３がソフトウェアにより実現する各機能をブロック化して示している。減算器２２には、位置指令値と位置検出器１７により検出される位置（電気角）θａとが与えられ、両者の差分（位置偏差）が乗算器２３に出力される。乗算器２３では、上記差分に位置ループ比例ゲインＫｐｐが乗じられ、その乗算結果が速度指令値として減算器２４に出力される。減算器２４には、上記位置θａを微分器２５で微分して得られる速度が減算値として与えられる。
【００２０】
減算器２４における減算結果（速度偏差）は、乗算器２６に与えられて速度ループ比例ゲインＫｖｐが乗じられると加算器２７に出力され、また積分器２８に与えられて積分される。積分器２８による積分結果は、乗算器２９に与えられて速度ループ積分ゲインＫｖｉが乗じられると加算器２７に出力される。加算器２７における加算結果はトルク指令値となり、故障診断切換スイッチ３０の固定接点３０（ｔ１）に与えられる。
【００２１】
故障診断切換スイッチ３０の固定接点３０（ｔ２）には、最大トルク指令値付与部３１により最大トルク指令値が与えられ、可動接点３０（ｔ３）は、トルク制限器（リミッタ）３２の入力端子に接続されている。トルク制限器３２は、加算器２７より出力されるトルク指令値を上限，下限で制限して座標変換部３３Ｕ，３３Ｖに出力する。座標変換部３３Ｕ，３３Ｖには、サーボモータ９に正弦波状の電流を通電するための波形データが記憶されており、故障診断切換スイッチ３４を介して位置検出器１７が検出した位置（電気角）θａ（ｔ１側），又は故障診断装置３５より出力される故障診断用の電気角（ｔ２側）の何れか一方が与えられる。
【００２２】
故障診断切換スイッチ３０，３４の切換え制御は故障診断装置３５によって行われ、サーボモータ９を通常制御する場合、故障診断装置３５は、故障診断切換スイッチ３０，３４の可動接点３０（ｔ３），３４（ｔ３）を夫々固定接点３０（ｔ１），３４（ｔ１）側に切り替え、故障診断を行う場合は、可動接点３０（ｔ３），３４（ｔ３）を夫々固定接点３０（ｔ２），３４（ｔ２）側に切り替える。
【００２３】
座標変換部３３は、故障診断切換スイッチ３４を介して与えられる電気角に応じて正弦波状の電流波形データを読み出して出力する。そして、トルク制限器３２を介して与えられるトルク指令値は、上記電流波形データに乗じられて振幅値を設定する。尚、座標変換部３３Ｕ，３３Ｖより出力される波形データには、１２０°の位相差が付与されている。
座標変換部３３Ｕ，３３Ｖより出力される波形データは、減算器３６Ｕ，３６Ｖに夫々与えられ、インバータ１６のＵ，Ｖ相出力端子に夫々配置されている電流検出器３７Ｕ，３７Ｖにより検出されるＵ相電流，Ｖ相電流との差がとられる。電流検出器３７Ｕ，３７Ｖは、例えばカレントトランス（ＣＴ）等で構成される。減算器３６Ｕ，３６Ｖより出力される減算結果は、乗算器３８Ｕ，３８Ｖにより電流ループ比例ゲインＫｃｐが乗じられて、ＰＷＭ発生器・プリドライバ３９に出力される。
【００２４】
すなわち、ＰＷＭ発生器・プリドライバ３９には、Ｕ，Ｖ相のＰＷＭ指令値のみが与えられ、ＰＷＭ発生器・プリドライバ３９は、上記ＰＷＭ指令値に基づき内部でＷ相のＰＷＭ指令値を生成する。そしてＰＷＭ発生器・プリドライバ３９は、インバータ１６を構成する各スイッチング素子（例えばパワートランジスタやパワーＭＯＳＦＥＴ，ＩＧＢＴなど）の制御端子（ベース又はゲート）に三相ＰＷＭ信号を出力する。
【００２５】
図６は、サーボモータ９の構造を模式的に示す図である。サーボモータ９は、永久磁石型の同期モータで４極６スロットの内転型であり、回転子４１は、回転子鉄心４２の表面に永久磁石４３が４極分配置されて構成されている。一方、固定子４４は、回転子４１の外周を囲むように配置される固定子鉄心の６つの歯４５に、Ｕ，Ｖ，Ｗの各相コイル４６が順次巻装されている。そして、サーボモータ９（１〜６）の図示しない回転軸は、減速機構を介して各アーム３〜８を回転駆動する。
【００２６】
次に、本実施例の作用について図１ないし図３，図７，図８を参照して説明する。図４に示したように、ロボット本体１と、ドライバユニット１２（１〜６）との間は、モータ線１４及びエンコーダ線１５により接続されるが、ドライバユニット１２（１〜６）側については６つに分岐しているため、それらの接続先を誤る場合が起こり得る。そこで、本実施例ではシステムへの電源投入時に、以下のようにして接続状態の良否を判定する。
【００２７】
尚、ロボット本体１について、各サーボモータ９に対する通電が停止している状態で、且つ機械的なブレーキの作用が無いとすれば、アーム４，５は重力に抗して現状の位置を維持する必要がある。しかし、例えば減速機構にも一定の負荷があり、減速機構を構成するギア等を回転させるために所定値以上のトルクが必要であれば（例えばウォームギア等が介在している場合）、サーボモータ９が非通電の状態であってもロボット本体１の各軸が原位置を維持することは可能である。
【００２８】
図１（ａ）は、制御回路１３が行う故障・誤接続判定処理を示すフローチャート（メインルーチン）である。制御回路１３は、先ず、検査対象とする軸（サーボモータ９）を選択するためのカウンタｎを「１」にセットすると（ステップＳ１）、各軸に配置されているサーボモータ９（１〜６）のうち、容量すなわち通電可能な最大定格電流値がｎ番目に少ないものを選択し、その軸数をポインタｊに設定する（ステップＳ２）。
ここで、多可動軸型のロボットでは、一般にアームの基部に近いほどサーボモータの負荷が高くなるため、相対的に容量の大きいものが使用される。例えば６軸ロボットの場合について一例を挙げると、第１軸〜第６軸にかけて容量が１５００Ｗ，７５０Ｗ，４００Ｗ，２００Ｗ，２００Ｗ，１００Ｗとなっている。つまり、第６軸のサーボモータ９（６）の容量が最小であるから、最初は第６軸が選択される。
【００２９】
ステップＳ２に続くステップＳ３でカウンタｎをインクリメントすると、第ｊ軸について検査を行う（ステップＳ４）。図１（ｂ）は、ステップＳ４で行う検査の詳細を示すフローチャートである。先ず、全ての軸に配置されている位置検出器１７が、電源が投入された時点で検出している各サーボモータ９の回転子位置（初期位置）を取得する（ステップＳ１１）。尚、位置検出器１７が出力するのは機械角であるから、４極モータでは、その２倍が電気角を示す。すなわち、図７に示すように、モータの機械角（軸角）が０［ＤＥＧ］〜〜３６０［ＤＥＧ］に変化する間に、電気角は２周期に亘り変化する。ステップＳ１１を実行すると、検査対象軸のサーボモータ９（ｊ）について固定子−回転子間の吸引力が最大になる通電位相差で、ドライバユニット１２（ｊ）により最大電流を流す（ステップＳ１２）。
【００３０】
ここで、図８を参照する。図８は、電気角と駆動電流との位相差に応じて、サーボモータ９に発生する回転力（トルク）と、固定子−回転子間に作用する吸引・反発力とが変化する状態を示したものである。ここで、回転力はベクトル制御におけるトルク電流；ｑ軸電流に対応し、磁力は励磁電流；ｄ軸電流に対応しており、駆動電流はこれらのベクトル和である。そして、上記位相差（以降、通電位相差と称す）は、ｄ−ｑ座標上での角度を示す。
【００３１】
この図から、通電位相差が０度の場合にｄ軸電流が最大となって磁力の吸引力が最大になり、ｑ軸電流はゼロになって回転力は最小になることが判る。また、通電位相差が１８０度の場合は、ｄ軸電流が逆極性で最大となって磁力の反発力が最大となる。一方、通電位相差が９０度の場合はｄ軸電流がゼロとなって磁力は最小になり、ｑ軸電流が最大となって右回転力が最大になり、通電位相差が−９０度の場合は、ｑ軸電流が逆極性で最大となって左回転力が最大となる。
図９は、図８に示す一部の状態を回転座標系で示したものである。図９（ａ）は（電気角θａ）＝（電流位相角θｂ）；すなわち、図８の通電位相差が０度の場合に対応し、図９（ｂ）は（電気角θａ）−（電流位相角θｂ）＝９０［ＤＥＧ］；すなわち、図８の通電位相差が９０度の場合に対応している。
【００３２】
再び、図１を参照する。ステップＳ１２では、電気角と駆動電流との通電位相差を０度にしてｄ軸電流が最大となるように通電する。この場合、故障診断装置３５は、上述のように可動接点３０（ｔ３），３４（ｔ３）を夫々固定接点３０（ｔ２），３４（ｔ２）側に切り替えた状態で、最大トルク指令値を付与すると共に、位置検出器１７が検出した電気角θａから吸引力が最大となるような電気角を固定接点３４ｂに出力する。これにより、上記位相差が実態に一致していれば、検査対象軸のサーボモータ９（ｊ）には回転力が発生せず初期位置を維持する。
【００３３】
しかし、検査対象軸の位置検出器１７（ｊ）が出力する位置データに誤りがあったり、検査対象軸のエンコーダ線１５がそれ以外の軸と入れ替わって接続されている場合は、実際の電気角θａとのずれにより生じた位相差に基づいてｑ軸電流が流れ、サーボモータ９に回転力が発生する。
そこで、再びステップＳ１１と同様にして各サーボモータ９の位置θａを取得し（ステップＳ１３）、初期位置との差から何れかの軸のサーボモータ９が回転したか否かを判断する（ステップＳ１４）。そして、何れかの軸のサーボモータ９が回転した場合は（ＹＥＳ）、検査対象である第ｊ軸の判定結果は「異常」となり（ステップＳ２２）、処理を終了する。一方、何れの軸のサーボモータ９も回転しなかった場合は（ＮＯ）、ステップＳ１５に移行する。
【００３４】
ステップＳ１５以降は、異なる手法により更に検査を行う。次は、検査対象軸について、通電位相差を０度から９０度未満の範囲で（ステップＳ１６）次第にずらして（例えば５度ずつ）、すなわちｑ軸電流を次第に増加させてサーボモータ９（ｊ）に付与する回転力が徐々に大きくなるようにする。そして、通電位相差が９０度（絶対値）に達するまで（ＹＥＳ）、全ての軸について現在位置を取得し（ステップＳ１７）、検査対象軸以外の軸（他軸）が回転したか否か，若しくは自軸が通電位相差をずらした方向とは逆方向に回転した場合は（ステップＳ１８）、また検査対象軸（自軸）が通電位相差をずらした方向に回転したか否か（ステップＳ１９）を判断する。この場合、故障診断装置３５は、位置検出器１７（ｊ）が検出した電気角θａに対して、自身が付与する通電位相差を徐々に増加させながら固定接点３４（ｔ２）に出力する。
【００３５】
ステップＳ１８において、他軸の回転が検出された場合，若しくは自軸が通電位相差をずらした方向とは逆方向に回転した場合は（ＹＥＳ）、モータ線１４の配線接続に誤りがあることを示すのでステップＳ２２に移行する。また、ステップＳ１９において、検査対象軸が通電位相差をずらした方向に回転すれば（ＹＥＳ）、モータ線１４の配線接続は正常であることを示す。したがって、必要に応じて第ｊ軸の位置を初期位置に復帰させるように通電制御を行うと（ステップＳ２０）、第ｊ軸の判定結果を「正常」として（ステップＳ２１）検査を終了する。
【００３６】
また、ステップＳ１９において、検査対象軸の回転が検出されなければ（ＮＯ）ステップＳ１５に戻り通電位相差を増加させるが、上記回転が検出されないまま通電位相差が９０度に達した場合は（ステップＳ１６：ＮＯ）、サーボモータ９（ｊ）が故障しているか、モータ線１４の配線接続に問題があることを示す。したがって、この場合もステップＳ２２に移行する。
ここで図２は、ステップＳ１９で「ＹＥＳ」と判断した正常な場合のイメージであり、検査対象とする第ｊ軸のサーボモータ９（ｊ）が、検査を行う毎に順番に回転することになる。また、図３は、ステップＳ１８で「ＹＥＳ」と判断した異常な場合のイメージであり、第ｊ軸のサーボモータ９（ｊ）とは異なる他軸のサーボモータ９が回転した場合を示している。
【００３７】
上記のようにして第ｊ軸の検査が終了すると、図１（ａ）のフローにリターンしてステップＳ５に移行する。そして、第ｊ軸の検査結果が「正常」か否かを判断し、「正常」であれば（ＹＥＳ）、カウンタｎの値が検査する軸数（６軸であれば「６」）を超えたか否かを判断する（ステップＳ６）。検査軸数を超えていなければ（ＮＯ）ステップＳ２に戻り、容量が次に大きい（通電可能な最大定格電流値が次に少ない）サーボモータ９の軸数をポインタｊに設定して、引き続き検査を行う。
ステップＳ６において、検査軸数を超えた場合は（ＹＥＳ）全体の判定結果を「正常」として（ステップＳ８）処理を終了する。また、ステップS５において、第ｊ軸の検査結果が「異常」であれば（ＮＯ）、その時点で全体の判定結果を「異常」として（ステップＳ７）処理を終了する。
【００３８】
以上のように本実施例によれば、制御回路１３は、複数のサーボモータ９の何れか１つを検査対象モータ９（ｊ）として、電源投入時に検査対象モータ９（ｊ）に配置されている位置検出器１７（ｊ）によって得られる位置θａから検査対象モータ９（ｊ）の初期位置を取得すると、検査対象モータ９（ｊ）の回転子が初期位置を維持するように、対応するインバータ１６（ｊ）を介して検査対象モータ９（ｊ）の各相巻線に駆動電流を出力する。そして、その電流出力期間内にロボット本体１の各軸に配置されるサーボモータ９の何れかが回転したか否かによって、各インバータ１６とそれぞれに対応するサーボモータ９との接続状態の良否を判定する。また、エンコーダ線１５の接続状態の良否も判定できる。
【００３９】
このように判定を行えば、インバータ１６と対応するサーボモータ９との接続が誤っているため何れかのサーボモータ９が回転する場合でも、その回転量は極めて僅かな値に留まる。すなわち、最大でも、サーボモータ９が機械角で１回転以上することはなく、回転子４１の極数と固定子４４のスロット数との関係で決まる数分の１回転以内に収まる。したがって、それに伴うロボット本体１の動作変化量も僅かとなるから安全性を維持することができる。また、上記の判定は、制御回路１３が実行する制御プログラムを変更すれば容易に実施できるので、既存のロボットシステムに対しても容易に適用することができる。
【００４０】
また、制御回路１３は、複数のサーボモータ９の内、最初に容量が最小のサーボモータ９を検査対象モータ９（ｊ）として選択すると、以降は容量が大きくなる順に検査対象モータ９（ｊ）を順次選択して判定を繰り返し実行する。したがって、容量の小さいサーボモータ９の巻線に大き過ぎる駆動電流を流すことが無く、巻線が発生する磁界によって回転子に配置されている永久磁石が減磁する事態を回避できる。
【００４１】
更に、制御回路１３は、前記判定の結果が「良」である場合に、検査対象モータ９（ｊ）に付与する回転力を漸増させるように駆動電流を出力し、検査対象モータ９（ｊ）が駆動電流に応じて回転したか否かにより更に接続状態の良否を判定するので、検査対象モータ９（ｊ）と他の１つのサーボモータ９との間で全ての接続が入れ替わっている場合は、検査対象モータ９（ｊ）以外の何れかのサーボモータ９が回転することで判定できる。また、検査対象モータ９（ｊ）の相間に誤接続が生じている場合には、与えた駆動電流指令値に対して検査対象モータ９（ｊ）が逆方向に回転するか，若しくは回転しないことで判定できる。したがって、誤接続判定を、様々なケースについて確実に行うことができる。
【００４２】
（第２実施例）
図１０は第２実施例であり、第１実施例と同一部分には同一符号を付して説明を省略し、以下異なる部分について説明する。第２実施例は、具体的には図示しないが、ロボット本体１の各軸に機械ブレーキが作用する構成となっている場合で、機械ブレーキを解除すると、各軸の回転位置は重量の作用や外乱により容易に変化し得る状態にあるとする。この状態で故障検出を行う場合を示す。
【００４３】
そして、初期状態で、機械ブレーキがロボット本体１の各軸に作用しているとする。図１０（ａ）のステップＳ３０では、全ての軸の初期位置を取得すると、全ての軸についてｄ軸電流が最大となるように駆動電流を通電し（ステップＳ３１）、その状態で機械ブレーキを解除する（ステップＳ３２）。そして、全軸のその時点の回転位置を取得すると（ステップＳ３３）、何れかの軸が回転したか否かを判断する（ステップＳ３４）。
【００４４】
ステップＳ３４において、何れの軸も回転していなければ（ＮＯ）、カウンタｊを「１」に設定し（ステップＳ３５）、第ｊ軸の検査を行う。図９（ｂ）に示す第ｊ軸の検査内容は、第１実施例の図１（ｂ）よりステップＳ１２〜Ｓ１４を削除したものとほぼ同様である。そして、ステップＳ５の実行後に、カウンタｊをインクリメントする（ステップＳ３６）。
【００４５】
図１０（ａ）のステップＳ６’では、カウンタｊの値が検査する軸数を超えたか否かを判断する。また、ステップＳ７の実行後は、全軸の機械ブレーキを作用させてから（ステップＳ３７）全軸について通電をオフし（ステップＳ３８）、その後処理を終了する。
以上のように第２実施例によれば、ロボット本体１の各軸に機械ブレーキが作用する構成となっており、機械ブレーキを解除すると、各軸の回転位置が変化し得る構成においても、第１実施例と同様に故障診断を行うことができる。
【００４６】
本発明は上記し、又は図面に記載した実施例にのみ限定されるものではなく、以下のような変形又は拡張が可能である。
位置検出器には、その他例えばレゾルバ等を用いても良い。
永久磁石型の同期モータは、ＳＰＭ（Surface Permanent Magnet）型，ＩＰＭ（Interior Permanent Magnet）型の何れでも良い。また、４極６スロット構成に限ることもない。
水平多可動軸型のロボットに適用しても良い。
尚、「可動軸」は回転軸だけでなく、直動軸も含むものとする。
【符号の説明】
【００４７】
図面中、１はロボット本体、９はサーボモータ（永久磁石型モータ）、１６はインバータ（駆動回路）、１３は制御回路（初期位置判定手段，駆動制御手段，接続状態判定手段）、１７は位置検出器を示す。
【図１】
0005445229.tif 000002
【図２】
0005445229.tif 000003
【図３】
0005445229.tif 000004
【図４】
0005445229.tif 000005
【図５】
0005445229.tif 000006
【図６】
0005445229.tif 000007
【図７】
0005445229.tif 000008
【図８】
0005445229.tif 000009
【図９】
0005445229.tif 000010
【図１０】
0005445229.tif 000011