(57)【要約】【課題】大きな搭載容量を有する駆動部を備えるとともに、ねじれの発生を抑制することができる搬送ロボットの提供。【解決手段】駆動部（２）と、駆動部（２）の上側に旋回可能に支持される本体（１）と、駆動部（２）と本体（１）との間に配置されるハーネス（６）とを含み、経路を追従する搬送ロボット（１０）である。搬送ロボット（１０）は、ねじれ判定部（５１）と、制御部（５０）とを含む。ねじれ判定部（５１）は、本体（１）と駆動部（２）との角度差（θＺ）に基づいて、ハーネス（６）にねじれが生じているか否かを判定する。制御部（５０）は、ハーネス（６）にねじれが生じていると判定され、かつ、経路が線分（Ｂ，Ｃ）を有し、線分（Ｂ、Ｃ）が往復運動可能な長さを有する場合において、線分上の往復運動によって、ねじれを解く指令速度を生成する。【選択図】図２
2015199370.tif 000002
【特許請求の範囲】
【請求項１】
駆動部と、前記駆動部の上側に旋回可能に支持される本体と、前記駆動部と前記本体との間に配置されるハーネスとを含み、経路を追従する搬送ロボットであって、
前記本体と前記駆動部との角度差に基づいて、前記ハーネスにねじれが生じているか否かを判定するねじれ判定部と、
前記ハーネスにねじれが生じていると判定され、かつ、前記経路が線分を有し、前記線分が往復運動可能な長さを有する場合において、前記線分上の往復運動によって、ねじれを解く指令速度を生成する制御部と、
を含む搬送ロボット。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は搬送ロボットに関し、特に、駆動部に対して旋回可能な本体を含む搬送ロボットに関する。
【背景技術】
【０００２】
駆動部と、駆動部の上側において旋回可能に支持される本体とを備える搬送ロボットがある。このような搬送ロボットでは、ハーネスが本体と駆動部との間に配置されており、本体の旋回運動により、ねじれることがある。このようなハーネスのねじれを解くことのできる搬送ロボットが開発されている。
【０００３】
例えば、特許文献１では、ハーネスをねじれと逆方向に回転させることで、ねじれを解くための機構を有する搬送ロボットが開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−１２６７０９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、搬送ロボットには、さらなる性能向上を目的として、モータアンプやバッテリなどの部品を駆動部に搭載することが望まれる。一方、特許文献１で開示される搬送ロボットは、ねじれを解くための機構を駆動部に搭載しており、駆動部の搭載容量に改善の余地を有する。
【０００６】
本発明は、上記した事情を背景としてなされたものであり、大きな搭載容量を有する駆動部を備えるとともに、ねじれの発生を抑制することができる搬送ロボットを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明にかかる搬送ロボットは、
駆動部と、前記駆動部の上側に旋回可能に支持される本体と、前記駆動部と前記本体との間に配置されるハーネスとを含み、経路を追従する搬送ロボットであって、
前記本体と前記駆動部との角度差に基づいて、前記ハーネスにねじれが生じているか否かを判定するねじれ判定部と、
前記ハーネスにねじれが生じていると判定され、かつ、前記経路が線分を有し、前記線分が往復運動可能な長さを有する場合において、前記線分上の往復運動によって、ねじれを解く指令速度を生成する制御部と、
を含む。
【０００８】
このような構成によれば、ねじれの解除動作を行うことができ、ハーネスのねじれの発生を抑制することができる。しかも、ねじれを解くための機構を必要としないので、駆動部の搭載容量が大きい。
【発明の効果】
【０００９】
本発明によれば、大きな搭載容量を有する駆動部を備えるとともに、ハーネスのねじれを抑制することができる搬送ロボットを提供することができる。
【図面の簡単な説明】
【００１０】
【図１】実施の形態１にかかるロボットの外観を示す概略図である。
【図２】実施の形態１にかかるロボットの制御構成を示すブロック図である。
【図３】実施の形態１にかかるロボットのねじれ解除動作の一例を示すフローチャートである。
【図４】実施の形態１にかかるロボットのねじれ解除動作の適用可否の判定方法を説明するための図である。
【図５】実施の形態１にかかるロボットのねじれ解除動作の適用可否の判定方法を説明するための図である。
【図６】修正指令速度の算出方法を説明するための模式図である。
【図７】実施の形態１にかかるロボットのねじれ解除動作の一例を示す図である。
【発明を実施するための形態】
【００１１】
本発明者らは、逆運動学の解が２つ得られる条件又はそれに近い条件において、ハーネスのねじれを解消する逆運動学の解を導出するように、指令速度を修正することを想到するに至った。逆運動学の解が２つ得られる条件又はそれに近い条件は、例えば、直線状の経路において、一定の区間を往復する動作である。このような動作は、工場内で用いられる搬送ロボットの動作、特に棚と棚との間の経路を往復する動作が挙げられる。
【００１２】
実施の形態１．
以下、図１を参照して実施の形態１にかかるロボットについて説明する。図１は、実施の形態１にかかるロボットの外観を示す概略図である。
【００１３】
図１に示すように、ロボット１０は、本体１と、駆動部２と、旋回軸３と、ハーネス６とを含む。ロボット１０は、駆動部２により移動することができるとともに、本体１を旋回軸３により旋回することができる。駆動部２の駆動軸と旋回軸３とは、所定の距離Ｓを空けて配置される。ロボット１０は、オフセットアーム式の搬送ロボットである。ロボット１０は、例えば、搬送台車として利用することができる。
【００１４】
本体１は、旋回軸３を介して駆動部２の上側に旋回可能に支持される。本体１は、電気機器（不図示）を搭載している。電気機器として、例えば、入力部、制御部、電池、モータアンプなどが挙げられる。本体１は、例えば、直方体や棒状体、円柱体であってもよい。また、本体１は、必要に応じて、荷物を把持するためのグリッパやハンドを搭載してもよい。なお、図１では、図面を見やすくするために、本体１は板状体として描いた。
【００１５】
駆動部２は、右側車輪４１と、左側車輪４２とを含む。右側車輪４１の駆動軸と、左側車輪４２の駆動軸とは、同じ直線状に配置されている。右側車輪４１及び左側車輪４２は半径ｒの車輪である。右側車輪４１及び左側車輪４２は、それぞれモータ４３、４４（図２参照。）により、独立に駆動される。駆動部２は、右側車輪４１及び左側車輪４２を、ある速度差をつけて駆動することができる。これにより、ロボット１０は、平面上を任意の方向に移動することができる。また、右側車輪４１と左側車輪４２とは、所定の距離Ｗを空けて配置される。なお、駆動部２は、電気機器（不図示）を搭載している。電気機器として、例えば、入力部、制御部、電池、モータアンプなどが挙げられる。また、駆動部２には、経路の情報を取得することのできる経路検出部２４が搭載されている。
【００１６】
旋回軸３は、モータ３１（図２参照。）により、旋回される筒状体である。旋回軸３又はその近傍には、後述する角度検出部２３（図２参照。）が設置されている。角度検出部２３は、駆動部２と本体１との角度差を検出し、この角度差をねじれ角θＺとして制御部５０（図２参照。）に送る。角度検出部２３は、例えば、レゾルバやエンコーダを使用することができる。なお、駆動部２は、バランスを取るために、さらに複数の車輪を備えてもよい。
【００１７】
ハーネス６は、本体１に搭載される電気機器と、駆動部２に搭載される電気機器とを結ぶ信号線及び／又は電力線である。ハーネス６は、本体１と駆動部２との間に配置される。具体的には、ハーネス６は、例えば、旋回軸３の中空穴を通って、本体１に搭載される電気機器と、駆動部２に搭載される電気機器とをつなぐ。
【００１８】
次に、図２を参照してロボット１０の制御構成について説明する。図２は、実施の形態１にかかるロボットの制御構成を示すブロック図である。
【００１９】
図２に示すように、制御部５０は、ねじれ判定部５１と、往復修正指令速度算出部５２と、右側車輪モータドライバ５３と、左側車輪モータドライバ５４と、旋回軸モータドライバ５５とを含む。制御部５０は、例えば、指令速度ｖ０などの入力を入力部（不図示）から、入力を受ける。また、制御部５０は、経路情報を経路検出部２４から、入力を受ける。
【００２０】
ねじれ判定部５１は、指令速度ｖ０と、角度検出部２３からねじれ角θＺと、経路情報とを送られる。指令速度ｖ０は、例えば、入力部（不図示）から入力されることにより、ねじれ判定部５１に送られる。ねじれ判定部５１は、ねじれ角θＺと指令速度ｖ０と経路情報とに応じて、ロボット１０がねじれ解除動作を行うか否かを判定する。
【００２１】
往復修正指令速度算出部５２は、指令速度ｖ０とねじれ角θＺとから、往復修正指令速度ｖ１を算出し、生成する。また、往復修正指令速度算出部５２は、往復修正指令速度ｖ１に実現するための入力右側車輪角速度ωＲと入力左側車輪角速度ωＬと入力旋回角速度ωＳとを算出する。また、往復修正指令速度算出部５２は、入力右側車輪角速度ωＲと入力左側車輪角速度ωＬと入力旋回角速度ωＳとを、右側車輪モータドライバ５３と左側車輪モータドライバ５４と旋回軸モータドライバ５５とにそれぞれ出力する。
【００２２】
ここで、図１を併せて参照すると、ロボット１０はｘｙ平面上を指令速度ｖに従って移動する。ロボット１０の運動学は、以下の数式（１）〜（７）により、表される。また、ロボット１０の逆運動学は、以下の数式（８）〜（１４）により、表される。これらの数式（１）〜（１４）を用いると、指令速度ｖから、入力右側車輪角速度ωＲと入力左側車輪角速度ωＬと入力旋回角速度ωＳとが求められる。なお、上記したように、Ｓは駆動部２の駆動軸と旋回軸３の距離を表し、ｒは右側車輪４１及び左側車輪４２の半径を表し、Ｗは右側車輪４１と左側車輪４２との距離を表す。
【数１】
2015199370.tif 000003
【数２】
2015199370.tif 000004
【数３】
2015199370.tif 000005
【数４】
2015199370.tif 000006
【数５】
2015199370.tif 000007
【数６】
2015199370.tif 000008
【数７】
2015199370.tif 000009
【数８】
2015199370.tif 000010
【数９】
2015199370.tif 000011
【数１０】
2015199370.tif 000012
【数１１】
2015199370.tif 000013
【数１２】
2015199370.tif 000014
【数１３】
2015199370.tif 000015
【数１４】
2015199370.tif 000016
【００２３】
右側車輪モータドライバ５３は、入力右側車輪角速度ωＲに基づいて、電力をモータ４３に供給する。また、左側車輪モータドライバ５４は、入力左側車輪角速度ωＬに基づいて、電力をモータ４４に供給する。また、旋回軸モータドライバ５５は、入力旋回角速度ωＳに基づいて、電力をモータ３１に供給する。
【００２４】
モータ４３は、右側車輪モータドライバ５３から電流の供給を受けて、右側車輪４１を駆動する。また、モータ４４は、左側車輪モータドライバ５４から電流の供給を受けて、左側車輪４２を駆動する。また、モータ３１は、旋回軸モータドライバ５５から電流の供給を受けて、旋回軸３を旋回させる。
【００２５】
ねじれ解除動作の一例．
次に、図３〜図７を用いて、実施の形態１にかかる搬送ロボットの動作の一例について説明する。図３は、実施の形態１にかかるロボットのねじれ解除動作の一例を示すフローチャートである。図４及び図５は、実施の形態１にかかるロボットのねじれ解除動作の適用可否の判定方法を説明するための図である。図６は、修正指令速度の算出方法を説明するための模式図である。図７は、実施の形態１にかかるロボットのねじれ解除動作の一例を示す図である。
【００２６】
まず、ロボット１０に経路に追従させる（経路追従ステップＳ１）。次いで、ねじれは解く必要を有するか否かを確認する（ねじれ確認ステップＳ２）。詳細には、ねじれ角θＺの絶対値が所定の角度以上であるか否かを確認し、ハーネス６に生じたねじれを解く必要を有するか否かを判定する。後述するように、このねじれ解除動作では、ねじれ角に±２πを加えて、ねじれを解く。そのため、現在のねじれ角θＺの絶対値がπ以上であると、ねじれ角がねじれ解除動作により、安定して減じる。図３に示すように、ねじれ解除動作を適用する要件の一つは、ねじれ角θＺの絶対値がπ以上であることである。
【００２７】
次いで、ねじれを解く必要を有すると確認する（ねじれ確認ステップＳ２：ＹＥＳ）と、経路が線分を有し、かつ、その線分が往復運動可能な長さを有するか否かを判定する（経路確認ステップＳ３）。図４に示すように、ロボット１０が追従する移動経路において、所定の範囲が線分か否かを判定する。具体的には、移動経路上の判定の範囲において、複数の点を計測する。続いて、この複数の点が直線方程式を用いて一定の精度で近似できるか否かを確認し、移動経路が線分を有するか否かを判定する。さらに、直線方程式を用いて一定の精度で近似できる点を抽出し、抽出した点から線分の距離を求める。求めた距離が往復運動可能な長さを上回るか否かを判定する。この経路確認ステップＳ３を経ることで、ねじれ解除動作では、ロボット１０は、より確実に往復運動をすることができる。
【００２８】
移動経路が線分を有し、かつ、その線分が往復運動可能な長さを有する（経路確認ステップＳ３：ＹＥＳ）と判定した場合、線分の傾きから修正指令速度を算出し、生成する（修正指令速度算出ステップＳ４）。追従する移動経路をロボット座標系で表現し、ロボット１０の移動速度の方向の傾きを求める。ロボット１０の追従する移動経路の傾きは、移動速度の拘束方向である。具体的には、下記の数式（１５）を用いて、係数ａ，ｂを求める。ロボット１０の移動速度の方向の傾きは、係数ａ，ｂから求められる。
【数１５】
2015199370.tif 000017
さらに、下記の数式（１６）〜（１８）を用いると、旋回軸３を入力として、数式（１５）の条件に従って、ロボット１０の往復修正指令速度ｖ１を導出することができる。なお、数式（１６）において、ロボット１０の往復修正指令速度ｖ１は、ロボット１０の旋回軸３の入力旋回角速度ωＳのみによって決定される。
【数１６】
2015199370.tif 000018
【数１７】
2015199370.tif 000019
【数１８】
2015199370.tif 000020
ねじれ解除動作では、ねじれ角θＺが適用除外範囲にあっても、旋回軸３を±２π回転させるまで、このような修正指令速度を時々刻々と導出し、導出した修正指令速度に基づいてロボット１０を動作させ続けると好ましい。
【００２９】
次いで、往復修正指令速度ｖ１を送信する（修正指令速度送信ステップＳ５２）。往復修正指令速度ｖ１に基づいて、入力右側車輪角速度ωＲと、入力左側車輪角速度ωＬと、入力旋回角速度ωＳとを計算し、これらを右側車輪モータドライバ５３と左側車輪モータドライバ５４と旋回軸モータドライバ５５とにそれぞれ送信する。
【００３０】
ロボット１０は、往復修正指令速度ｖ１又は指令速度ｖ０に基づいて、動作を行う（ロボット動作ステップＳ６）。ロボット１０が往復修正指令速度ｖ１に基づいて動作を行う場合では、指令速度ｖ０に基づいて動作を行う場合と同様に、ロボット１０を経路に沿って動作させることができる。しかも、指令速度ｖ０に基づいて動作を行う場合と比較して、ねじれをさらに解くようにロボット１０を動作させる。
【００３１】
次に、より具体的にねじれ解除動作の一例について説明する。図７に示すように、ロボット１０は、往復修正指令速度ｖ１に基づいて、例えば、直線状の追従経路に沿って、地点Ｂから地点Ｃに向かって進む。ロボット１０が地点Ｃに到達するまでに、本体１は旋回軸３を中心に、図面上の時計回りの方向に１８０°（π）回転する。ロボット１０が地点Ｃに到達した後、今まで進んだ方向とは逆方向に向かって進む。つまり、ロボット１０は、追従経路に沿って、地点Ｃから地点Ｂに向かって進む。ロボット１０が地点Ｂに到達するまでに、本体１は旋回軸３を中心に、図面上の時計回りの方向に１８０°（π）回転する。このねじれ解除動作では、本体１を＋２π旋回させて、ねじれ角θＺが減ずる。
【００３２】
なお、ねじれは解く必要を有しないと判定すると（ねじれ確認ステップＳ２：ＮＯ）、指令速度ｖ０をそのまま出力し（指令速度送信ステップＳ５１）、ロボット１０が指令速度ｖ０に基づいて動作する。また、経路が線分を有し、かつ、その線分が往復可能な長さを有しないと判定する（経路確認ステップＳ３）と、指令速度ｖ０をそのまま出力し（指令速度送信ステップＳ５１）、ロボット１０が指令速度ｖ０に基づいて動作する。
【００３３】
以上、実施の形態１のかかるロボットによれば、経路を追従する中でねじれと逆方向の回転を加えるように動作を行って、ねじれを解くことができる。また、ねじれを解くための機構を必要とすることなく、駆動部は大きな搭載容量を有する。
【００３４】
ところ、ねじれを解くためには、単にねじれと逆方向の回転を加えるように動作を行うことが考えられる。しかし、経路の周囲には、構造物が設けられていることがある。このような場合、ロボットが単にねじれと逆方向の回転を加えるように動作を行うと、周囲の構造物と衝突するおそれが大きい。ロボットの追従経路は、周囲の構造物と衝突することがないように作成される。従って、実施の形態１のかかるロボットによれば、追従経路上で、ねじれを解くための動作を行うため、周囲の構造物と衝突するおそれが少ない。
【００３５】
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
【符号の説明】
【００３６】
１０  ロボット
１  本体                                  ２  駆動部
３  旋回軸                                ６  ハーネス
２３  角度検出部                          ３１、４３、４４  モータ
４１  右側車輪                            ４２  左側車輪
５０  制御部
５１  ねじれ判定部                        ５２  往復修正指令速度算出部
５３  右側車輪モータドライバ              ５４  左側車輪モータドライバ
５５  旋回軸モータドライバ
Ｓ１  経路追従ステップ                    Ｓ２  ねじれ確認ステップ
Ｓ３  経路確認ステップ                    Ｓ４  修正指令速度算出ステップ
Ｓ５１  指令速度送信ステップ              Ｓ５２  修正指令速度送信ステップ
Ｓ６  ロボット動作ステップ
ｖ、ｖ０  指令速度                          ｖ１  往復修正指令速度
ωＬ  入力左側車輪角速度                    ωＲ  入力右側車輪角速度
ωＳ  入力旋回角速度
【図１】
2015199370.tif 000021
【図２】
2015199370.tif 000022
【図３】
2015199370.tif 000023
【図４】
2015199370.tif 000024
【図５】
2015199370.tif 000025
【図６】
2015199370.tif 000026
【図７】
2015199370.tif 000027