(57)【要約】【課題】  作業者の意図に合わせて効率的に消費エネルギーを低減するとともに、接触や衝突により発生する干渉力を低減して損傷を防止し、さらに、容量が小さい軸の負荷容量を上回る負荷をハンドリングできるロボットの制御装置を提供する。【解決手段】  ロボット５０を、あらかじめ設定された教示データ１を基に制御する動作制御部３と、ブレーキ付サーボモータ５１を駆動するサーボアンプ４と、前記ブレーキ付サーボモータ５１への電力供給を制御するサーボオン／オフとブレーキオン／オフを切り替えるサーボ・ブレーキ制御部５を有するロボットの制御装置において、前記ブレーキ付サーボモータ５１のサーボオン／オフとブレーキのオン／オフを軸毎に指令するサーボ・ブレーキ指令２を実行するサーボ・ブレーキ指令実行手段５ａを備える。  【選択図】図１
2005349535.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも１つのブレーキ付サーボモータを含む複数のサーボモータにより駆動される複数の関節軸から成るロボットを、あらかじめ設定された教示データを基に制御する動作制御部と、
前記ブレーキ付サーボモータを駆動するサーボアンプと、
前記ブレーキ付サーボモータへの電力供給を制御するサーボオン／オフとブレーキオン／オフを切り替えるサーボ・ブレーキ制御部を有するロボットの制御装置において、
前記ブレーキ付サーボモータのサーボオン／オフとブレーキのオン／オフを軸毎に指令するサーボ・ブレーキ指令を実行するサーボ・ブレーキ指令実行手段を備えることを特徴とするロボットの制御装置。
【請求項２】
前記サーボ・ブレーキ指令は教示データに記載されていることを特徴とする請求項１記載のロボットの制御装置。
【請求項３】
サーボオフかつブレーキオンに設定された軸の教示データの位置指令値の変化を検出し、該位置指令値に変化があった場合サーボオンかつブレーキオフにする動作指令確認手段を備えることを特徴とする請求項１または２記載のロボットの制御装置。
【請求項４】
サーボオフかつブレーキオンに設定された軸の教示データを先読みして位置指令値の変化を検出し、該位置指令値に変化があった場合サーボオンかつブレーキオフにする先読み指令確認手段を備えることを特徴とする請求項１乃至３記載のいずれかのロボットの制御装置。
【請求項５】
前記ロボットの制御装置の外部から入力されるセンサ信号により軸の位置指令値の補正量を演算する補正量演算手段と、
位置指令値と前記補正量から補正された位置指令値を演算する位置指令補正手段を備え、
補正された位置指令値の変化を検出し、該位置指令値に変化があった場合サーボオンかつブレーキオフにする補正動作指令確認手段を備えることを特徴とする請求項３または４記載のロボットの制御装置。
【請求項６】
前記補正量演算手段はインピーダンス制御により補正量を演算するインピーダンス制御手段であることを特徴とする請求項５記載のロボットの制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、教示データを基に作業するロボットの制御装置に関する。
【背景技術】
【０００２】
現在一般的に使用されているロボットは、図１５に示すように少なくとも１つのブレーキ付サーボモータ５１を含む複数の関節軸で接続されたリンク５２を有するロボット本体５０と、ロボットを制御する制御装置１０と、作業者が操作を入力する操作盤１０１で構成されている。制御装置１０は教示データ１を基にサーボアンプ４への指令を演算する動作制御部３と、操作盤１０１からの操作を基にサーボアンプ４およびブレーキ付サーボモータ５１を制御するサーボ・ブレーキ制御部５で構成されている。このような構成で、作業者が操作盤１０１を操作してサーボ・ブレーキ制御部５を介してサーボモータへの電力供給を制御するサーボオン／オフやブレーキのオン／オフを行い、前記ロボット本体５０が前記教示データ１に従って動作する。
このようなロボットは作業者が操作盤からサーボやブレーキを操作する構成であるため、ロボットの稼動時間中、常に全てのサーボモータがサーボオンかつブレーキオフになっているため、電力消費が大きいという問題がある。
【０００３】
この問題に対して、例えば特許文献１では、停止状態が一定時間径過したらサーボの励磁を解きモータへの電力供給を停止し、かつブレーキをかける産業用ロボットが開示されている。
また特許文献２では、教示ステップ間に動作指令が無い軸をサーボオフかつブレーキオンにする工業用ロボットが開示されている。
特許文献１について、図１６および図１７を用いて説明する。
図１６は特許文献１の実施例のロボットの構成を表す図である。
図１６において、１０２はロボットの制御装置、１０７はロボットの各軸のサーボモータを駆動するサーボアンプ、１０８はロボットの機構部を示す。制御装置１０２は中央処理装置（以下、ＣＰＵと記す）１０３を有し、ＣＰＵ１０３にはメモリ（ＲＯＭ）１０９、メモリ（ＲＡＭ）１１０、Ｉ／Ｏユニット１０４、軸制御器１０５が接続されている。メモリ（ＲＯＭ）１０９にはＣＰＵ１０３が実行すべき各種制御プログラムが格納されている。メモリ（ＲＡＭ）１１０には教示データや各種パラメータの設定値が格納されている。Ｉ／Ｏユニット１０４はサーボアンプ１０７の電源スイッチ、ロボット機構部１０８内のブレーキ装置に接続され、サーボアンプ１０７の電源のオン・オフ指令信号、ブレーキ装置のオン・オフ指令信号を出力するようになっている。
【０００４】
図１７は特許文献１のデータ処理を表すフローチャートである。まずロボットに電源が投入されると、ＣＰＵ１０３はＩ／Ｏユニット１０４を介してブレーキ装置を作動させ、ブレーキをかけ、サーボアンプ１０７の電源を切り、サーボモータの励磁を解く。移動指令が発生すると、サーボアンプ１０７の電源を接続し、サーボモータを励磁すると共にブレーキ装置の動作を解除し、ブレーキを解き、ロボットを駆動させる。そしてロボットが動作した後、その移動が停止したか否かを判断し、移動停止すると、パラメータで設定されたタイマをスタートさせ、計時を開始させる。その後、タイマがタイムアップしたか、次の移動指令が発生したかを順次判断する。次の移動指令が実行されるまでの間にタイムアップしたら、ブレーキをかけ、サーボモータの励磁を解く。
このようにして、停止状態が一定時間径過したらブレーキをかけ、サーボモータの励磁を解くのである。
【０００５】
特許文献２について、図１８および図１９を用いて説明する。
図１８は特許文献２のロボットの構成を表す図である。
図１８において１２０はコントローラであり、予め教示された教示データを基に各モータ１２３およびモータブレーキ１２５を制御するもので、ロボットの動作データの演算と実際の制御を行なうＣＰＵ１２１と、制御プログラムが記憶されたＲＯＭ１２６と、教示された動作プログラムや電流制御値を記憶させるＲＡＭ１２７とを有している。また、コントローラ１２０はモータ１２３を駆動してロボットを駆動させるモータドライバ１２２を有している。ＣＰＵ１２１は、ＲＯＭ１２６から制御プログラムを読み出し、さらに教示データなどのデータをＲＡＭ１２７から読み出してロボットの制御データの演算を行い、モータドライバ１２２に出力するとともに、モータ１２３の現在の位置データ等をモータドライバ１２２から読み出す。さらにＣＰＵ１２１はモータブレーキ１２５を制御するＩ／Ｏモジュール１２４を有しており、ＣＰＵ１２１からの信号によってモータブレーキ１２５のオン／オフを制御する。
そしてこの特許文献２においては、ＲＡＭ１２７に記憶された教示データからモータブレーキ１２５で制動可能な停止状態が軸に発生する期間を割り出し、この期間において軸駆動用のモータ１２３の電源供給を断ちかつモータブレーキ１２５で制動するようになっている。
【０００６】
この制御内容を図１９を用いて説明する。
図１９は軸の回転位置とブレーキ信号の時間的経過を表す図で、ロボットのある軌道での、第１軸θ１から第３軸θ３の回転位置と第２軸および第３軸のモータブレーキ１２５を作動させるブレーキ保持信号の時間的経過を示すものである。コントローラ１２０は教示された教示点（Ｐ０〜Ｐ６）を順次結ぶ線をロボットが追従するような軌道を演算し、その軌道に応じた各軸の回転位置を割り出してモータドライバ１２２に送る。
このときコントローラ１２０では演算された各軸の位置指令値から教示点Ｐ２〜Ｐ３の間に第３軸θ３の移動がなく、また教示点Ｐ４〜Ｐ５の間に第２軸θ２の移動が無いことを割り出す。そしてロボットが教示点Ｐ２に到達した時点で第３軸θ３のモータ１２３の電源を断ちかつブレーキ保持信号を出力して第３軸θ３を制動する。そしてこの状態を保持し、ロボットが教示点Ｐ３に到達したら第３軸θ３のモータ１２３に電源供給を開始しかつブレーキ保持信号の出力を停止してブレーキをオフにして該第３軸θ３を駆動する。
同様に第２軸θ２については教示点Ｐ４〜Ｐ５の間、モータ１２３の電源を断ちかつブレーキ保持信号を出力して制動する。
このようにして、教示点間に動作指令が無い軸のモータ１２３の電源供給を断ちかつモータブレーキ１２５で制動するのである。
【特許文献１】特許２７０９９３４号（第４−４頁、図１）
【特許文献２】特開２０００−３０８９９０号公報（第７―７頁、図４）
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかし、特許文献１においてはロボットの全軸の動作が停止し、さらに一定時間が経過しないと、サーボモータの励磁を解きかつブレーキをかけないため、エネルギーを無駄に消費してしまう。また、サーボモータの励磁を解きかつブレーキをかけている間に外部から接触や衝突があった場合に外部やロボット本体に損傷を与える可能性があるという問題や、作業者の意図に合わせてサーボモータの励磁とブレーキのオン／オフを選択できないという問題がある。
また特許文献２においても、モータへの電源供給を断ちかつブレーキで制動している間に外部から接触や衝突があった場合に外部やロボット本体に損傷を与える可能性があるという問題や、作業者の意図に合わせてモータへの電源供給やブレーキでの制動を選択できないという問題がある。
本発明はこのような問題点に鑑みてなされたものであり、作業者の意図に合わせて効率的に消費エネルギーを低減するとともに、サーボオフかつブレーキオン中の状態で生じた接触や衝突により発生する干渉力を低減して損傷を防止し、さらに、容量が小さい軸の負荷容量を上回る負荷をハンドリングできるロボットの制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記問題を解決するため、本発明は次のように構成した。
請求項１に記載の発明は、少なくとも１つのブレーキ付モータを含む複数のサーボモータにより駆動される複数の関節軸から成るロボットを、あらかじめ設定された教示データを基に制御する動作制御部と、前記ブレーキ付サーボモータを駆動するサーボアンプと、前記ブレーキ付サーボモータへの電力供給を制御するサーボオン／オフとブレーキオン／オフを切り替えるサーボ・ブレーキ制御部を有するロボットの制御装置において、前記ブレーキ付サーボモータのサーボオン／オフとブレーキのオン／オフを軸毎に指令するサーボ・ブレーキ指令を実行するサーボ・ブレーキ指令実行手段を備えるものである。
また、請求項２に記載の発明は、請求項１に記載のロボットの制御装置において、前記サーボ・ブレーキ指令は教示データに記載されているものである。
また、請求項３に記載の発明は、請求項１または２に記載のロボットの制御装置において、サーボオフかつブレーキオンに設定された軸の教示データの位置指令値の変化を検出し、該位置指令値に変化があった場合サーボオンかつブレーキオフにする動作指令確認手段を備えるものである。
また、請求項４に記載の発明は、請求項１乃至３に記載のいずれかのロボットの制御装置において、サーボオフかつブレーキオンに設定された軸の教示データを先読みして位置指令値の変化を検出し、該位置指令値に変化があった場合サーボオンかつブレーキオフにする先読み指令確認手段を備えるものである。
また、請求項５に記載の発明は、請求項３または請求項４記載のロボットの制御装置において、前記ロボットの制御装置の外部から入力されるセンサ信号により軸の位置指令値の補正量を演算する補正量演算手段と、位置指令値と前記補正量から補正された位置指令値を演算する位置指令補正手段を備え、補正された位置指令値の変化を検出し、該位置指令値に変化があった場合サーボオンかつブレーキオフにする補正動作指令確認手段を備えるものである。
また、請求項６に記載の発明は、請求項５記載のロボットの制御装置において、前記補正量演算手段はインピーダンス制御により補正量を演算するインピーダンス制御手段とするものである。
【発明の効果】
【０００９】
請求項１、請求項２に記載の発明によると、作業者の意図に合わせてサーボとブレーキのオン／オフを軸毎に切り替えることができるため、消費エネルギーを低減し、さらに負荷容量の小さいサーボモータで負荷容量を上回る負荷をハンドリングすることができる。
請求項３に記載の発明によると、作業者の設定ミスによる誤動作を回避することができる。
請求項４に記載の発明によると、現在から設定された数ステップ以内にサーボオンかつブレーキオフの指令があることを事前に検知し、サーボオンとブレーキオフを該当するステップの指令が実行される前に準備できるため、ロボットの作業時間を短縮することができる。
請求項５および６に記載の発明によると、ロボットがサーボオフかブレーキオンの状態にあっても、センサが検出した状況の変化に応じてサーボオンかつブレーキオフになり、ロボットが動作するため、サーボオフかつブレーキオンの状態で生じた接触や衝突により発生する干渉力を低減し、安全性を向上できる。
【発明を実施するための最良の形態】
【００１０】
以下、本発明の実施の形態について図を参照して説明する。
【実施例１】
【００１１】
本発明の基本構成について、図１乃至図５を用いて説明する。
図１は、本発明の第１実施例のロボットの構成を表す図である。図１において、１０は制御装置であり、予め設定された教示データ１と、教示データ１を基にロボットの動作を制御する動作制御部３と、制御部の出力を基にサーボモータを駆動するサーボアンプ４と、サーボとブレーキのオン／オフを制御するサーボ・ブレーキ制御部５で構成されている。５０はロボット本体であり、複数のブレーキ付サーボモータ５１と、ブレーキ付サーボモータ５１を接続するリンク５２から構成される。図では簡単化のため、ブレーキ付サーボモータは１個のみ記載している。２はサーボ・ブレーキ指令であり、教示データ１の行番号に対応した各軸のサーボとブレーキのオン／オフの指令を記録している。サーボ・ブレーキ指令はサーボ・ブレーキ制御部５にあるサーボ・ブレーキ指令実行手段５ａで実行される。１００は電源であり、制御装置１０に電力を供給する。
図２は教示データ１の具体的な例を示す図であり、行番号と、それに対応した位置指令が記述されている。図３はサーボ・ブレーキ指令２の具体的な例を示す図であり、教示データの行番号とサーボ・ブレーキ指令が対応づけて記述されている。すなわち、この例では、教示データ１０２の実行を開始すると、それに対応した第Ｎ軸のサーボオフかつブレーキオン指令１１が実行される。
本発明が特許文献１および特許文献２と異なる部分は、サーボ・ブレーキ指令２を基にブレーキ付サーボモータ５１のサーボとブレーキのオン／オフを軸毎に制御する構成とした点である。
【００１２】
以下に、サーボ・ブレーキ指令の実行の詳細を説明する。ここでは簡単化のため、ロボット本体５０を構成する第Ｎ軸のブレーキ付サーボモータ５１を例に説明する。
サーボ・ブレーキ制御部５のサーボ・ブレーキ指令実行手段５ａは、制御部３から現在実行中の教示データ１の行番号を読み込ム。サーボ・ブレーキ指令２は、教示データの行番号に対応して、どの軸のサーボ・ブレーキをオンまたはオフするかの情報が一覧表になっていて、行番号からサーボ・ブレーキ指令がインデックスできる。サーボ・ブレーキ指令実行手段５ａは、インデックスされたサーボ・ブレーキ指令の内容に従って第Ｎ軸のサーボとブレーキのオン／オフを切り替える。
【００１３】
図４はサーボ・ブレーキ指令実行手段５ａの処理を表すフローチャートである。
サーボ・ブレーキ指令実行手段５ａは、サーボオフかつブレーキオン（ステップＳ１）の状態で第Ｎ軸のサーボオンかつブレーキオフ指令を検出したら（ステップＳ２）第Ｎ軸をサーボオンかつブレーキオフ（ステップＳ３）にする。また第Ｎ軸がサーボオンかつブレーキオフ（図６のステップＳ３）の状態で第Ｎ軸のサーボオフかつブレーキオン指令（図７の１１）を検出したら（ステップＳ４）、サーボオフかつブレーキオン（ステップＳ１）にする。このようにして、サーボ・ブレーキ指令２に従って第Ｎ軸のサーボオフかつブレーキオンとサーボオンかつブレーキオフを軸毎に切り替えるのである。
上記ステップは同時に複数の軸についても適用することができる。
【００１４】
なお、サーボ・ブレーキ指令を発生させる方法としては、この動作制御部３から現在実行中の教示データ１の行番号を読み込む方法に限らず、例えば、作業者が操作盤（図１５の１０１）からサーボとブレーキのオン／オフを軸毎に設定し、指令とする方法や、制御装置１０内部にタイマを設けて、タイマの値を基にサーボとブレーキのオン／オフを軸毎に切り替える方法や、外界センサを設けて周辺の状況を検出した信号を基にサーボとブレーキのオン／オフを軸毎に切り替える方法でもよい。なお、これらのサーボ・ブレーキ指令を発生させる方法は、同時に複数の軸についても適用することができる。
【００１５】
これらの指令により、作業者の意図に合わせてサーボとブレーキのオン／オフを軸毎に指定できるので、例えば動作しなくてもよい軸をサーボオフかつブレーキオンにし、動作する軸をサーボオンかつブレーキオフの状態にできる。よって動作しなくてもよい軸へのエネルギー供給を停止し、消費エネルギーを低減することができる。これにより、例えばバッテリーを電力源とする移動型ロボットの稼動時間を延ばすことができる。
図５は一般的な構成のロボットで搬送物をハンドリングする作業を示す図である。一般的な構成のロボットは、自重を支えつつハンドリング作業を行なうため、図５に示すように根元付近に負荷容量の大きいサーボモータを配し、手先付近には負荷容量の小さいサーボモータを配している。
サーボオかつブレーキオンの状態を利用すると、一般的なロボットで図５に示すような手先の姿勢変化が必要ないハンドリング作業を行なう場合、手先付近の負荷容量の小さいサーボモータをブレーキオンにし、根元付近の容量の大きいサーボモータだけを動作させることで、手先付近の負荷容量の小さいサーボモータで負荷容量を上回る負荷をハンドリングすることができる。
【実施例２】
【００１６】
次に本発明の第２実施例について、図６、図７を用いて説明する。第２実施例が第１実施例の構成と異なる部分は、サーボ・ブレーキ指令２が教示データ１の中に有り、教示データとして記載されている点である。
図６は、第２実施例のロボットの構成を表す図である。図６において、サーボ・ブレーキ指令２の存在場所以外の点は図１と同じであるので説明を省略する。サーボ・ブレーキ指令２は図７に例を示すように教示データ１に記載されており、軸番号と、サーボオンかつブレーキオフまたはサーボオフかつブレーキオフを軸毎に指定する。
第１実施例のように教示データの行番号をインデックスにしてサーボ・ブレーキ指令を記述する場合、教示データを編集して１行追加あるいは削除した場合、行番号がずれるため、サーボ・ブレーキ指令の行番号を変更する必要があるが、第２実施例のように教示データに直接サーボ・ブレーキ指令を記述すると、他の教示データ編集時もサーボ・ブレーキ指令は変更する必要がない。
【実施例３】
【００１７】
次に本発明の第３実施例について、図８、図９を用いて説明する。
第３実施例は請求項３に対応している。
図８は第３実施例のロボットの構成を示す図である。第２実施例の構成と異なる部分は、教示データ１に記載されている教示値の変化を検出する教示動作指令確認手段６ａを動作指令確認部６に備えた点である。図９は第３実施例の教示動作指令確認手段６ａの処理を表すフローチャートである。
第Ｎ軸がサーボオフかつブレーキオン（図９のステップＳ１１）の状態で教示データ１に第Ｎ軸のサーボオンかつブレーキオフ指令（図７の１２）を検出したら、作業者の意図に従ってサーボオンかつブレーキオフ（ステップＳ１４）にする。サーボオンかつブレーキオフ指令が無い場合は教示データ１の第Ｎ軸の教示値の変化の有無を確認する（ステップＳ１３）。教示値に変化があれば第Ｎ軸をサーボオンかつブレーキオフ（ステップＳ１４）にし、教示値に変化が無い場合はサーボオフかつブレーキオン（ステップＳ１１）の状態を保持する。
【００１８】
また第Ｎ軸がサーボオンかつブレーキオフ（図９のステップＳ１４）の状態で教示データ１に第Ｎ軸のサーボオフかつブレーキオン指令（図７の１１）を検出したら（ステップＳ１５）、教示データの第Ｎ軸の教示値の変化の有無を確認する（ステップＳ１６）。教示値に変化がなければサーボオフかつブレーキオン指令に従って第Ｎ軸をサーボオフかつブレーキオン（ステップＳ１１）にし、教示値に変化がある場合はサーボオフかつブレーキオン指令を無視してサーボオンかつブレーキオフの状態を保持する（ステップＳ１４）。無視した第Ｎ軸のサーボオフかつブレーキオン指令は教示データの次の行を実行する時に再度実行する。
このようにして、教示データ１に記載されたサーボ・ブレーキ指令２および教示値の変化の有無に従って第Ｎ軸のサーボオフかつブレーキオンとサーボオンかつブレーキオフを軸毎に切り替えるのである。
なお、上記ステップは同時に複数の軸についても適用することができる。
以上のステップを繰り返すことにより、第１、第２実施例と同様の効果に加え、教示ミスなどによりある軸のサーボオンかつブレーキオフ指令を入力し忘れた場合でも、教示値に変化がある場合は自動的に当該軸がサーボオンかつブレーキオフ状態になって動作するので、誤動作を防止することができる。
【実施例４】
【００１９】
次に第４実施例について、図１０、図１１を用いて説明する。
第４実施例は請求項４に対応している。
図１０は第４実施例のロボットの構成を示す図である。第４実施例が第３実施例の構成と異なる部分は、教示データ１を複数のステップ分先読みする先読み指令確認手段７ａをデータ先読み部７に備えた点である。図１１は先読み指令確認手段７ａの処理を表すフローチャートである。
教示データの実行行が１行進むごとに、予め設定されたＭステップ分の教示データを先読みする（図１１のステップＳ２２）。サーボオフかつブレーキオン（ステップＳ２１）の状態では、先読みした教示データに第Ｎ軸のサーボオンかつブレーキオフ指令（図７の１２）を検出したら（ステップＳ２３）サーボオンかつブレーキオフ（ステップＳ２５）にする。先読みした教示データにサーボオンかつブレーキオフ指令が無い場合は、先読みした教示データ内の教示値の変化の有無を確認する（ステップＳ２４）。先読みした教示データに少なくとも１度教示値の変化があればサーボオンかつブレーキオフ（ステップＳ２５）にし、先読みした教示データに教示値の変化が無い場合はサーボオフかつブレーキオン（ステップＳ２１）の状態を保持する。
【００２０】
また第Ｎ軸がサーボオンかつブレーキオフ（ステップＳ２５）の状態で教示データ１に第Ｎ軸のサーボオフかつブレーキオン指令（図７の１１）を検出したら（ステップＳ２６）、第３実施例と同様にその教示データの教示値の変化の有無を確認する（ステップＳ２７）。教示値に変化がなければ前記サーボオフかつブレーキオン指令に従って第Ｎ軸をサーボオフかつブレーキオン（ステップＳ２１）にし、教示値に変化がある場合はサーボオフかつブレーキオン指令を無視してサーボオンかつブレーキオフの状態を保持する（ステップＳ２５）。無視した第Ｎ軸のサーボオフかつブレーキオン指令は教示データ１の次の行を実行する時に再度実行する。
このようにして、教示データ１に記載されたサーボ・ブレーキ指令２および教示値の変化の有無に従ってサーボオフかつブレーキオンとサーボオンかつブレーキオフを軸毎に切り替えるのである。
なお、上記ステップは同時に複数の軸についても適用することができる。
以上のステップを繰り返すことにより、第２実施例および第３実施例と同様の効果に加え、サーボオンとブレーキオフを該当する教示データの行が実行される前に準備するため、サーボオンおよびブレーキオフが実行されるまでの準備時間を失くし、ロボットの作業時間を短縮することができる。
【実施例５】
【００２１】
次に第５実施例について、図１２、図１３、図１４を用いて説明する。
第５実施例は請求項５および６に対応している。
図１２は第５実施例のロボットの一般的な構成を示す図である。第５実施例が第３実施例の構成と異なる部分は、ロボットおよび外部環境の状態を計測するセンサ５３と、センサ５３の検出値を基に位置指令の補正量を演算する補正量演算手段９ａを持つ補正量演算部９と、位置指令と補正量演算手段９ａの出力から補正された位置指令を演算する位置指令補正演算手段８ａを持つ位置指令補正部８を備え、動作指令確認部６には、教示ステップ毎にでは無く、サーボモータの制御周期毎に位置指令の変化を確認する補正動作指令確認手段６ｂを備えた構成とした点である。
図１３は第５実施例のロボットの具体的な構成の例を表す図である。ここでは具体例として、図１３に示すようにセンサ５３の例として力センサ５４、補正量演算手段９ａの例としてインピーダンス制御手段５５ａを用いて、衝突時の安全性を向上する方法を説明する。
【００２２】
図１４は第５実施例の補正動作指令確認手段６ｂの処理を表すフローチャートである。
サーボオフかつブレーキオン（ステップＳ３１）の状態で、教示データに第Ｎ軸のサーボオンかつブレーキオフ指令（図７の１２）を検出したら、作業者の意図に従って第Ｎ軸をサーボオンかつブレーキオフ（ステップＳ３４）にする。
第Ｎ軸のサーボオンかつブレーキオフ指令が無い場合は、補正動作指令確認手段６ｂで、サーボモータの制御周期毎に力センサ５４の検出値を基にインピーダンス制御手段５５ａで演算された、補正された第Ｎ軸の位置指令の変化の有無を確認する（ステップＳ３３）。
補正された位置指令に変化があればサーボオンかつブレーキオフ（ステップＳ３４）にし、変化が無い場合はサーボオフかつブレーキオン（ステップＳ３１）の状態を保持する。
また第Ｎ軸がサーボオンかつブレーキオフ（図１４のステップＳ３４）の状態で教示データ１に第Ｎ軸のサーボオフかつブレーキオン指令（図６の１１）を検出したら（ステップＳ３５および図６）、第２実施例と同様にその教示データの教示値の変化の有無を確認する（ステップＳ３６）。教示値に変化がなければ前記サーボオフかつブレーキオン指令（図６の１１）に従って第Ｎ軸をサーボオフかつブレーキオン（ステップＳ３１）にし、教示値に変化がある場合は前記サーボオフかつブレーキオン指令（図６の１１）を無視してサーボオンかつブレーキオフの状態を保持する（ステップＳ３４）。無視した第Ｎ軸のサーボオフかつブレーキオン指令（図６の１１）は前記教示データ１の次の行を実行する時に再度実行する。
【００２３】
以下に、インピーダンス制御の詳細を説明する。インピーダンス制御とは、ロボットと物体の間に働く力を入力し、ロボットの動作に望ましい特性を実現する位置指令補正量を出力する制御方法である。
補正量演算部では、力センサ５４の計測値をＦ、関節軸の指令位置、速度、加速度をそれぞれＸ０、Ｖ０、Ａ０とし、作業者が設定した望ましいインピーダンス特性を表す慣性行列Ｍ、粘性行列Ｄ、弾性行列Ｋを用いて、力センサ５４の計測値Ｆに対する関節軸の位置指令Ｘ、速度指令Ｖ、加速度指令Ａを演算式（１）から求める。
Ｆ＝Ｋ・（Ｘ−Ｘ０）＋Ｄ・（Ｖ−Ｖ０）＋Ｍ・（Ａ−Ａ０）        （１）
ただし、ＶはＸの１階微分（Ｖ＝ｄＸ／ｄｔ）であり、ＡはＸの２階微分（Ａ＝ｄ2Ｘ／ｄｔ2）である。
このように求めた位置指令Ｘから指令位置Ｘ０を差し引くことで、本実施例では位置の補正量ＸＥ（ＸＥ＝Ｘ−Ｘ０）を得るのである。
インピーダンス制御部では位置指令Ｘから補正量ＸＥを差し引き、補正された位置指令として出力する。ここでは例として、力センサで力を検出し、インピーダンス制御で位置の修正を行なう構成としたが、距離センサで手先と作業対象との距離を計測して位置の補正量を演算する構成などでもよい。また、補正された位置指令の変化の有無を確認する周期はサーボモータの制御周期に限らず、教示ステップごとでも良い。また、補正量演算部は一つだけでなく、複数ある構成でもよい。
【００２４】
このようにして、教示データ１に記載されたサーボ・ブレーキ指令２および前記力センサ５４の検出値を基にインピーダンス制御で補正された位置指令の変化の有無に従ってサーボオフかつブレーキオンとサーボオンかつブレーキオフを軸毎に切り替えるのである。
尚、上記ステップは同時に複数の軸についても適用することができる。
以上のステップを繰り返すことにより、第２実施例および第３実施例と同様の効果に加え、センサが検出した状況の変化に応じてサーボオンかつブレーキオフになり、ロボットが動作するため、サーボオフかつブレーキオンの状態で生じた接触や衝突により発生する干渉力を低減し、安全性を向上できる。
【図面の簡単な説明】
【００２５】
【図１】本発明の第１実施例のロボットの構成を表す図
【図２】本発明の第１実施例の教示データの具体的な例を示す図
【図３】本発明の第１実施例のサーボ・ブレーキ指令の具体的な例を示す図
【図４】本発明の第１実施例のサーボ・ブレーキ指令実行手段の処理を表すフローチャート
【図５】本発明を適用する一般的なロボットの構成を表す図
【図６】本発明の第２実施例のロボットの構成を表す図
【図７】本発明の第２実施例の教示データの具体的な例を示す図
【図８】本発明の第３実施例のロボットの構成を表す図
【図９】本発明の第３実施例の教示動作指令確認手段の処理を表すフローチャート
【図１０】本発明の第４実施例のロボットの構成を表す図
【図１１】本発明の第４実施例の先読み指令確認手段の処理を表すフローチャート
【図１２】本発明の第５実施例のロボットの一般的な構成を表す図
【図１３】本発明の第５実施例のロボットの具体的な構成の例を表す図
【図１４】本発明の第５実施例の補正動作指令確認手段の処理を表すフローチャート
【図１５】従来のロボットの構成を表す図
【図１６】第１の従来例のロボットの構成を表す図
【図１７】第１の従来例のデータ処理を表すフローチャート
【図１８】第２の従来例のロボットの構成を表す図
【図１９】第２の従来例の回転位置とブレーキ信号の時間的経過を表す図
【符号の説明】
【００２６】
１  教示データ
２  サーボ・ブレーキ指令
３  動作制御部
４  サーボアンプ
５  サーボ・ブレーキ制御部
５ａ  サーボ・ブレーキ指令実行手段
６  動作指令確認部
６ａ  教示動作指令確認手段
６ｂ  補正動作指令確認手段
７  データ先読み部
７ａ  先読み指令確認手段
８  位置指令補正部
８ａ  位置指令補正演算手段
９  補正量演算部
９ａ  補正量演算手段
１０  制御装置
１１  サーボオフかつブレーキオン指令
１２  サーボオンかつブレーキオフ指令
１３  搬送物
１４  教示データの行番号
５０  ロボット本体
５１  ブレーキ付サーボモータ
５２  リンク
５３  センサ
５４  力センサ
５５  インピーダンス制御部
５５ａ  インピーダンス制御手段
１００  電源
１０１  操作盤
１０２  制御装置
１０３  中央処理装置（ＣＰＵ）
１０４  Ｉ／Ｏユニット
１０５  軸制御器
１０６  サーボ回路
１０７  サーボアンプ
１０８  ロボット機構部
１０９  メモリ（ＲＯＭ）
１１０  メモリ（ＲＡＭ）
１２０  コントローラ
１２１  ＣＰＵ
１２２  モータドライバ
１２３  モータ
１２４  Ｉ／Ｏモジュール
１２５  モータブレーキ
１２６  ＲＯＭ
１２７  ＲＡＭ
【図１】
2005349535.tif 000003
【図２】
2005349535.tif 000004
【図３】
2005349535.tif 000005
【図４】
2005349535.tif 000006
【図５】
2005349535.tif 000007
【図６】
2005349535.tif 000008
【図７】
2005349535.tif 000009
【図８】
2005349535.tif 000010
【図９】
2005349535.tif 000011
【図１０】
2005349535.tif 000012
【図１１】
2005349535.tif 000013
【図１２】
2005349535.tif 000014
【図１３】
2005349535.tif 000015
【図１４】
2005349535.tif 000016
【図１５】
2005349535.tif 000017
【図１６】
2005349535.tif 000018
【図１７】
2005349535.tif 000019
【図１８】
2005349535.tif 000020
【図１９】
2005349535.tif 000021