(57)【要約】  モータ（８）と、モータ（８）のモータ軸に接続された減速機と、減速機の出力軸に接続されたアームと、モータ（８）のモータ軸の回転角度を検出可能なモータ軸側角度センサ（１）と、減速機の出力軸の回転角度を検出可能な出力軸側角度センサ（２）を有したロボット本体と、モータ軸側角度センサ（１）が検出するモータ軸側回転角度と、出力側角度センサ（２）が検出する出力軸側回転角度と、モータ軸側角度センサ（１）と出力軸側角度センサ（２）の角度センサ組付ズレ補正値に基づいて、アームまたはアームに取り付けられた機器と他の物体の接触状態を検出するロボット制御装置（２１）を備えており、これにより、ロボットのアームまたはアームに取り付けられた機器と他の物体の接触を、精度良く検知可能なロボットシステムが提供できる。
2018203492.tif 000002
【特許請求の範囲】
【請求項１】
モータと、  前記モータのモータ軸に接続された減速機と、  前記減速機の出力軸に接続されたアームと、  前記モータのモータ軸の回転角度を検出するモータ軸側角度センサと、  前記減速機の出力軸の回転角度を検出する出力軸側角度センサと、を有するロボット本体と、  前記アームまたは該アームに取り付けられた機器と他の物体の接触状態を検出するロボット制御装置とを備え、  前記ロボット制御装置は、前記モータ軸側角度センサと前記出力軸側角度センサの組み付け時におけるズレ量から算出される角度センサ組付ズレ補正値を記憶する角度センサ組付ズレ補正値記憶部と、  前記モータ軸側の回転角度からモータ軸側角度を演算するモータ軸側角度演算部と、  前記出力軸側の回転角度から出力軸側角度を演算する出力軸側角度演算部と、  前記モータ軸側角度と前記出力軸側角度の角度差を算出し、前記角度センサ組付ズレ補正値を補正してねじれ変形量を求めるねじれ変形量演算部と、  前記モータから前記アームまでのバネ定数を記憶するバネ定数記憶部と、  前記アームの許容接触トルクを記憶する接触判定閾値記憶部と、  前記ねじれ変形量と前記バネ定数記憶部に記憶された前記バネ定数から前記アームの接触トルクを演算し、演算した前記接触トルクが前記接触判定閾値記憶部に記憶された前記許容接触トルクよりも大きい場合に前記接触状態を検出する接触判断部と、を有することを特徴とするロボットシステム。
【請求項２】
前記ロボット制御装置には、前記接触判断部が前記接触状態を検知した場合に前記モータを停止させるモータ制御指令部をさらに備えていることを特徴とする請求項１に記載のロボットシステム。
【請求項３】
前記ロボット制御装置には、前記アームの接触トルクに追従するゲインを記憶する接触追従ゲイン記憶部と、前記接触判断部が前記接触状態を検知した場合に、前記接触トルクと前記許容接触トルクの差分に前記ゲインを掛けた速度に従って前記モータを駆動するモータ制御指令部をさらに備えていることを特徴とする請求項１または２に記載のロボットシステム。
【発明の詳細な説明】
【技術分野】
【０００１】  本発明は、ロボットのアームまたはアームに取り付けられた機器と他の物体の接触を、精度良く検知するロボットシステムに関するものである。
【背景技術】
【０００２】  従来、工場等において、様々なロボットが使用されてきた。ロボットの開発は、位置決め精度や安全性などを向上させることを目的として、現在においても盛んに行われている。そして、より複雑な動作を行うための多関節を備えたロボットなどが、実用化され広く普及している。【０００３】  上記のように複雑な動作を行う多関節ロボットにおいては、アーム部などが、構造物、ワーク、作業者等と接触したことを検出し、接触による災害を低減する技術が重要である。ロボットと他の物体の接触を検出するために、従来からも様々な技術が提案されている。【０００４】  例えば、特許文献１では、水平多関節ロボットのアームに設けられて相対回転角度を検出する２つのエンコーダの信号を比較・監視して、アームの衝突を検出する技術が提案されている。【０００５】  また、特許文献２では、ロボットアームの関節が備える減速機の入力側と出力側にエンコーダ（角度検出手段）を設け、入力側回転角度と出力側回転角度の角度差から関節誤差を演算して衝突を判断する技術が提案されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００３−３９３７６号公報
【特許文献２】特開２０１５−３３５７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】  しかしながら、特許文献１，２に記載の技術は、エンコーダの組み付け時の軸心ズレ、ボルト締め付けトルクのばらつきなどの影響により、エンコーダから検出される角度が実際の値より僅かにズレる。このため、そのズレの分だけロボットアームの接触検知精度を下げる必要がある。接触検知の対象が構造物等の場合は問題ないが、対象が人間の場合は安全上の問題が生じる。【０００８】  また、ロボットアームの接触を検出するために、ロボットアームの表面に接触検知用のセンサを設ける方法もある。しかしながら、多関節ロボットのアームの場合、接触点がどこになるか明確でないため、多くのセンサを取り付けることが必要となり、製造原価のコストダウンを図ることができないという問題があった。【０００９】  本発明は、以上のような問題を解決するために提案されたものであり、人間を含めた他の物体への接触を検知する信頼性、経済性などを向上させることができ、接触トラブルによる損害を低減することが可能なロボットシステムの提供を目的とする。
【課題を解決するための手段】
【００１０】  上記目的を達成するため、本発明のロボットシステムは、モータと、前記モータのモータ軸に接続された減速機と、前記減速機の出力軸に接続されたアームと、前記モータのモータ軸の回転角度を検出可能なモータ軸側角度センサと、前記減速機の出力軸の回転角度を検出可能な出力軸側角度センサを有したロボット本体、および前記アームまたは該アームに取り付けられた機器と他の物体の接触状態を検出するロボット制御装置を少なくとも備えている。【００１１】  すなわち、ロボット制御装置は、前記モータ軸側角度センサと前記出力軸側角度センサの組み付け時におけるズレ量から算出される角度センサ組付ズレ補正値を記憶する角度センサ組付ズレ補正値記憶部と、前記モータ軸側の回転角度からモータ軸側角度を演算するモータ軸側角度演算部と、前記出力軸側の回転角度から出力軸側角度を演算する出力軸側角度演算部と、前記モータ軸側角度と前記出力軸側角度の角度差を算出し、前記角度センサ組付ズレ補正値を補正してねじれ変形量を求めるねじれ変形量演算部と、前記モータから前記アームまでのバネ定数を記憶するバネ定数記憶部と、前記アームの許容接触トルクを記憶する接触判定閾値記憶部と、前記ねじれ変形量と前記バネ定数記憶部に記憶された前記バネ定数から前記アームの接触トルクを演算し、演算した前記接触トルクが前記接触判定閾値記憶部に記憶された前記許容接触トルクよりも大きい場合に前記接触状態を検出する接触判断部と、を有している。【００１２】  更に、前記ロボット制御装置は、前記接触判断部が前記接触状態を検知した場合に前記モータを停止させるモータ制御指令部を備えていても良い。【００１３】  また、前記ロボット制御装置は、前記アームの接触トルクに追従するゲインを記憶する接触追従ゲイン記憶部と、前記接触判断部が前記接触状態を検知した場合に、前記接触トルクと前記許容接触トルクの差分に前記ゲインを掛けた速度に従って前記モータを駆動するモータ制御指令部を備えていても良い。
【発明の効果】
【００１４】  本発明のロボットシステムによれば、他の物体への接触を検知する信頼性、経済性を向上させることができる。また、従来に比べて接触検知精度を上げることが可能なので、接触トラブルによる損害をより低減することができる。
【図面の簡単な説明】
【００１５】
【図１】本発明にかかるロボットシステム２０の概略図である。
【図２】角度センサ組付ズレの説明図である。
【図３】本発明にかかるロボットシステム２０の制御系（ロボット制御装置２１）を示す機能ブロック図である。
【図４】本発明にかかるロボットシステムの接触トルク算出処理動作を示すフローチャートである。
【図５】本発明にかかるロボットシステムの接触検知によるロボット停止処理動作を示すフローチャートである。
【図６】本発明にかかるロボットシステムの接触トルクによるロボット追従処理動作を示すフローチャートである。
【図７】本発明にかかるロボットシステムの角度センサ組付ズレ補正値測定処理動作を示すフローチャートである。
【符号の説明】
【００１６】１          モータ軸側角度センサ（エンコーダ）２          出力軸側角度センサ（エンコーダ）３          モータ軸側角度演算部４          出力軸側角度演算部５          ねじれ変形量演算部６          接触判断部７          モータ制御指令部８          モータ９          角度センサ組付ズレ補正値記憶部１０        バネ定数記憶部１１        接触判定閾値記憶部１２        接触追従ゲイン記憶部１５        アーム１６        減速機１８の出力軸１７        モータ８のモータ軸１８        減速機２０        ロボットシステム２１        ロボット制御装置２２        ロボット本体
【発明を実施するための形態】
【００１７】  図１は、本発明にかかるロボットシステム２０の要部の概略図を示している。図１において、本実施形態のロボットシステム２０は、モータ８と、減速機１８と、アーム１５と、モータ軸用のモータ軸側角度センサ１と、出力軸用の出力軸側角度センサ２と、ロボット制御装置２１を備えた構成である。アーム１５は、モータ８と減速機１８を介在して連結されているため、モータ８を回転駆動すると、アーム１５が回転することになる。なお、本実施形態のロボットシステム２０は、１個のモータ・減速機・モータ軸側角度センサ・出力軸側角度センサ・アームを有する構成である。しかし本発明はこれに限るものではなく、ロボットシステムが複数のモータ・減速機・モータ軸側角度センサ・出力軸側角度センサ・アームを有する構成であっても良い。
【００１８】  モータ８は、通常、サーボモータなどが用いられる。また、モータ８は、モータ軸１７の一方の端部が減速機１８の入力軸と接続され、他方の端部にモータ軸用のモータ軸側角度センサ１が組み付けられている。
【００１９】  本実施形態では、モータ軸用のモータ軸側角度センサ１にはエンコーダを用いており、モータ８のモータ軸１７の回転方向や回転角を検出し、測定信号をロボット制御装置２１に出力するように構成されている。なお、上記モータ軸側角度センサ１はモータ軸１７に固定されているが、避けることが出来ない加工精度の限界や組み付け精度などの影響で、モータ軸側角度センサ１の軸心は、モータ軸１７の軸心とズレを有している。
【００２０】  減速機１８は、図示しない複数の歯車や出力軸１６などから構成されている。この出力軸１６にはアーム１５が連結されており、また、端部には出力軸用の出力軸側角度センサ２が組み付けられている。なお、減速機１８としては、例えば、弾性ねじれ変形が支配的である波動歯車装置が使用される。しかし本発明はこれに限定するものではなく、出力軸と入力軸との間に弾性ねじれ変形を有する別の種類の減速機を使用してもよい。
【００２１】  本実施形態では、出力軸用の出力軸側角度センサ２にもエンコーダを用いている。出力軸側角度センサ２は出力軸１６の回転方向や回転角を検出し、測定信号をロボット制御装置２１に出力する。  なお、上記出力軸側角度センサ２は出力軸１６に固定されているが、避けることが出来ない加工精度の限界や組み付け精度などの影響で、出力軸側角度センサ２の軸心は、出力軸１６の軸心とズレを有している。
【００２２】  アーム１５は所定の長さを有しており、図示していないが、先端部に工具やワーク保持手段などが取り付けられる。
【００２３】  図３は、本発明にかかるロボットシステム２０の制御系（ロボット制御装置２１）を示す機能ブロック図である。図３において、ロボット制御装置２１は、モータ軸側角度演算部３、出力軸側角度演算部４、ねじれ変形量演算部５、接触判断部６、モータ制御指令部７、角度センサ組付ズレ補正値記憶部９、バネ定数記憶部１０、接触判定閾値記憶部１１、接触追従ゲイン記憶部１２を有している。
【００２４】  モータ軸側角度演算部３は、モータ軸側角度センサ１から受けた信号からモータ軸側回転角度θmを求め、減速機１８の減速比Ｎから出力側の角度に換算したモータ軸側角度θ１を演算する。つまり、モータ軸側角度演算部３はθ１=θｍ÷Ｎを演算する。出力軸側角度演算部４は、出力軸側角度センサ２から受けた信号から出力軸側角度θ２を演算する。
【００２５】  ねじれ変形量演算部５は、モータ軸側角度演算部３の演算結果のモータ軸側角度θ１と、出力軸側角度演算部４の演算結果の出力軸側角度θ２から、角度差Δθｄを求める。即ち、Δθｄ＝θ１−θ２となる。さらに、この角度差を角度センサ組付ズレ補正値記憶部９に保存されている角度センサ組付ズレ補正値θｇ［θ２］により補正してねじれ変形量Δθを求める。すなわちΔθ＝Δθｄ−θｇ［θ２］を演算する。ここで、角度センサ組付ズレ補正値θｇは、出力軸側角度θ２を引数とした配列として、角度センサ組付ズレ補正値記憶部９に保存されている。
【００２６】  ここで、図２に角度センサ組付ズレの説明図を示す。図２は、縦軸を角度差Δθｄ、横軸を出力軸側角度θ２とし、出力軸１６を−３６０度から＋３６０度まで回転させた場合の角度差について表したものである。図２に示すとおり、出力軸１６を一回転させるごとに同じ角度差Δθｄが観測される。これは、加工精度や組み付け精度などの影響で、入力側角度センサ１とモータ軸１７の間や、出力側角度センサ２と出力軸１６の間に軸心ズレが有るために生じるズレであり、減速機固有の角度伝達誤差とは別の現象である。出力軸側角度センサ２の取り付け上の制限から、この角度センサ組付ズレは、実際面では減速機固有の角度伝達誤差より大きな値を示す場合が多い。このズレが大きい場合、外力によってねじれることにより発生するねじれ変形量を高精度に測定できない。従って、ねじれ変形量を高精度に測定するためには、角度センサ組付ズレを補正することが必要不可欠である。なお、角度センサ組付ズレ補正値は、無負荷状態でモータ８を回転させた際の角度差Δθｄと出力軸側角度θ２の関係を、予め測定しておけば良い。
【００２７】  接触判断部６は、ねじれ変形量演算部５により演算されたねじれ変形量Δθとバネ定数記憶部１０に記憶されているモータ８からアーム１５までのバネ定数Ｋから、アーム１５の接触トルクＴを演算する。即ちＴ=Δθ×Ｋの演算を行う。さらに、接触判定閾値記憶部１１に記憶されている接触判定閾値Ｔｃと比較することで、接触に相当する外力が発生したかを検知する。即ちＴがＴｃを超えた場合に接触として検知する。ねじれ変形量Δθから接触トルクが計算できる理由は、減速機１８として、弾性ねじれ変形が支配的である波動歯車装置などを使用した場合、ねじれ変形量Δθが減速機１８のねじれ量と等価として扱うことができるからである。
【００２８】  上記の接触トルクの演算は、図４にその流れを示す。    S1にて接触判断部６がバネ定数Ｋを読み込む。S2にてねじれ変形量演算部５が角度センサ組付ズレ補正値θｇを読み込む。S3にてモータ軸側角度演算部３がモータ軸側角度θ１を演算し、出力軸側角度演算部４が出力軸側角度θ２を演算する。S4にてねじれ変形量演算部５が角度差Δθｄを求める。即ち、Δθｄ＝θ１−θ２となる。S5にてねじれ変形量演算部５がこの角度差を角度センサ組付ズレ補正値θｇにより補正して、ねじれ変形量Δθを求める。S6にて接触判断部６がアーム１５の接触トルクＴを演算する。即ちＴ=Δθ×Ｋの演算を行う。
【００２９】  モータ制御指令部７は、接触判断部６のアームまたはアームに取り付けられた機器と他の物体との接触判断の状態により、モータ８に指令を送る。通常は、ロボット制御装置２１のモータ制御指令部７からロボット本体２２のモータ８へ、モータ８に回転トルクを発生させる電流指令が送られる。
【００３０】  図５は、アームまたはアームに取り付けられた機器と他の物体との接触を検知してロボットが停止する流れを示す。S7,S9〜S13は、図４のS1,S2〜S6と同様である。S8にて接触判断部６は接触判定閾値Ｔｃを読み込み、S14にて演算した接触トルクＴと接触判定閾値Ｔｃの比較を行い、接触トルクＴが接触判定閾値Ｔｃを超える場合はモータ８を停止する。
【００３１】  図６は、アームまたはアームに取り付けられた機器と他の物体との接触を検知し、接触トルクに従ってロボットを追従させる流れを示す。S15,S18〜S24は、図５のS7,S8〜S14と同様である。S16にてロボット制御装置２１は、ロボットを接触トルクに従って追従させる「接触追従モード」に移行する。S17にて接触判断部６は、接触追従ゲイン記憶部１２から接触追従ゲインＧｖを読み込む。接触判断部６は、S24にて接触の判定をした場合、S25にて接触追従速度Ｖｍを算出する。Ｖｍは、接触トルクＴと接触判定閾値Ｔｃとの差分に接触追従ゲインＧｖをかけることで算出する。すなわち、Ｖｍ=(Ｔ−Ｔｃ)×Ｇｖの演算を行う。ロボット制御装置２１は、算出されたＶｍに従って、モータ８を駆動する。
【００３２】  図７を使って、角度センサ組み付けズレ補正値の測定の流れを説明する。S27,S28は、図４のS3,S4と同様である。まず、S26にて減速機１８の出力側に負荷が無い状態で測定軸のモータ８を回転させる。次に、S27,S28にてねじれ変形量演算部５が角度差Δθｄを演算する。S29にてねじれ変形量演算部５は、演算された角度差Δθｄを、角度センサ組付ズレ補正値θｇとして角度センサ組付ズレ補正値記憶部９に格納する。角度センサ組付ズレ補正値θｇは、出力軸側角度θ２を引数とした配列θｇ［θ２］である。上記S26〜S29の処理を、出力軸側角度θ２が一回転以上回転するまで繰り返し、角度センサ組付ズレ補正値の配列θｇ［θ２］を完成させる。
【産業上の利用可能性】
【００３３】  本発明は、ロボットのアームまたはアームに取り付けられた機器と他の物体の接触を、精度良く検知するロボットシステムとして利用可能である。
【図１】
2018203492.tif 000003
【図２】
2018203492.tif 000004
【図３】
2018203492.tif 000005
【図４】
2018203492.tif 000006
【図５】
2018203492.tif 000007
【図６】
2018203492.tif 000008
【図７】
2018203492.tif 000009
【国際調査報告】
2018203492.tif 000010
2018203492.tif 000011
2018203492.tif 000012