JP6743572B2 - 移動装置 - Google Patents

移動装置 Download PDF

Info

Publication number
JP6743572B2
JP6743572B2 JP2016158716A JP2016158716A JP6743572B2 JP 6743572 B2 JP6743572 B2 JP 6743572B2 JP 2016158716 A JP2016158716 A JP 2016158716A JP 2016158716 A JP2016158716 A JP 2016158716A JP 6743572 B2 JP6743572 B2 JP 6743572B2
Authority
JP
Japan
Prior art keywords
driving
angular velocity
unit
turning
drive
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2016158716A
Other languages
English (en)
Other versions
JP2018026047A (ja
Inventor
亮吉 落合
亮吉 落合
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toyota Motor Corp
Original Assignee
Toyota Motor Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toyota Motor Corp filed Critical Toyota Motor Corp
Priority to JP2016158716A priority Critical patent/JP6743572B2/ja
Publication of JP2018026047A publication Critical patent/JP2018026047A/ja
Application granted granted Critical
Publication of JP6743572B2 publication Critical patent/JP6743572B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Manipulator (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Description

本発明は、移動装置に関する。
台車に一対の駆動輪と従動輪とを備えた全方位移動車両が知られている。例えば特許文献1によれば、全方位移動車両を電動車椅子に応用し、着座部の姿勢を変えることなく、車両本体を任意の方向へ移動させることができる。
特開2007−152019号公報
移動車両としては全方位に移動できる機構を有していても、移動を実現するために生成された速度指令値が駆動系の能力を超えてしまい、想定する動作とは異なる動作を示すことがあった。また、駆動系の能力を基準として生成する速度指令値を制限すると、極めて低速でしか動作しなくなることがあった。
本発明は、このような問題を解決するためになされたものであり、安全でかつ速度低下を抑えた全方位移動を実現する技術を提供するものである。
本発明の一態様における移動装置は、互いに独立して回転駆動される2つの駆動輪および少なくとも1つの従動輪を有する台車部と、台車部に対して旋回可能に載置される荷台部と、荷台部を台車部に対して旋回駆動する旋回駆動部と、2つの駆動輪および旋回駆動部を制御する制御部とを備え、制御部は、走行面方向の第1軸方向の第1速度、走行面方向であって第1軸とは異なる第2軸方向の第2速度、および第1軸と第2軸に直交する第3軸周りの走行面に対する角速度として与えられる速度指令値を、2つの駆動輪のそれぞれの回転角速度である第1駆動角速度、第2駆動角速度、および旋回駆動部の旋回角速度に変換し、変換された第1駆動角速度、第2駆動角速度、および旋回角速度の少なくともいずれかが、2つの駆動輪および旋回駆動部の駆動能力を上回る場合には、速度指令値における第1速度、第2速度、および角速度の相互の比率を変更することなく、それぞれが駆動能力に収まるように、第1駆動角速度、第2駆動角速度、および旋回角速度を修正して、2つの駆動輪および旋回駆動部を制御する。
このような制御により、駆動系の駆動能力を過度に制限することなく、かつ、もとの速度指令値で想定された動作姿勢と同様の動作姿勢で移動するので、高速かつ安全に全方位移動を実現できる。
本発明により、安全でかつ高速な全方位移動を実現した移動装置を提供できる。
本実施形態に係る移動ロボットの一部を分解して示す外観斜視図である。 移動ロボットの制御ブロック図である。 全方位移動制御を説明する説明図である。 駆動系の角速度を修正する概念を説明する説明図である。 制御の流れを示す機能ブロック図である。
以下、発明の実施の形態を通じて本発明を説明するが、特許請求の範囲に係る発明を以下の実施形態に限定するものではない。また、実施形態で説明する構成の全てが課題を解決するための手段として必須であるとは限らない。
図1は、本実施形態に係る移動ロボット100の一部を分解して示す外観斜視図である。移動装置の一例としての移動ロボット100は、大きく分けて台車部110と荷台部120によって構成される。図は、荷台部120を台車部110から少し持ち上げた状態を表している。
台車部110は、主に、上方から観察した場合におよそ四角形を成す台車ベース111と、台車ベース111に取り付けられた2つの駆動輪112と1つのキャスタ113とから構成される。台車ベース111は、台車部110の基体となる役割を担い、例えばフレーム構造を有する。2つの駆動輪112は、台車ベース111の対向する側方のそれぞれに、回転軸芯が一致するように配設されている。それぞれの駆動輪112は、不図示のモータによって独立して回転駆動される。キャスタ113は、従動輪であり、台車ベース111から鉛直方向に延びる旋回軸が車輪の回転軸から離れて車輪を軸支するように設けられており、台車部110の移動方向に倣うように追従する従動キャスタとして機能する。移動ロボット100は、例えば、2つの駆動輪112が同じ方向に同じ回転速度で回転されれば直進し、逆方向に同じ回転速度で回転されれば重心を通る鉛直軸周りに旋回する。すなわち、移動ロボット100は、2つの駆動輪112の回転方向、回転速度がそれぞれ制御されることにより、前進、後進、旋回することができる。
台車部110は、障害物検知や周辺環境認識のための各種センサが設けられている。カメラ114は、そのセンサ類の一つであり、台車ベース111の四隅に配置されている。カメラ114は、例えばCMOSイメージセンサを含み、撮影した画像信号を後述の制御部へ送信する。隣接する2つのカメラ114が同一の障害物を捉えれば視差画像を取得でき、当該障害物までの距離を算出することもできる。また、画角に占める障害物の割合と、算出した距離を利用して、障害物の大きさを算出することもできる。
台車ベース111の上面中央部には旋回機構119が設けられている。旋回機構119には荷台部120を構成する上体ベース125の噛合部(不図示)が嵌め込まれ、台車ベース111に上体ベース125が載置された状態となる。上体ベース125は、台車ベース111に設けられた不図示のモータにより、旋回機構119を介して鉛直軸周りに旋回駆動される。
荷台部120は、上体ベース125の他にも、主に、複数のアーム121と、ハンド124とを備える。複数のアーム121は、それぞれの端部で回動するように互いに接続されている。一連のアーム121の基端側は上体ベース125に固定されており、先端側はハンド124を回転自在に軸支している。ハンド124は、搬送物を把持できるように、把持機構を備える。アーム121とハンド124は、不図示のモータを介して駆動され、所定の姿勢をとったり、搬送物を把持したりする。
図2は、移動ロボット100の制御ブロック図である。制御部200は、例えばCPUであり、台車部110に設けられている。駆動輪ユニット210は、駆動輪112を駆動するための駆動回路やモータを含み、台車部110に設けられている。制御部200は、駆動輪ユニット210へ駆動信号を送ることにより、駆動輪112の回転制御を実行する。具体的な駆動信号については後に詳述する。
旋回駆動ユニット212は、上体ベース125を旋回駆動するための駆動回路やモータを含み、台車部110に設けられている。制御部200は、旋回駆動ユニット212へ駆動信号を送ることにより、上体ベース125の旋回制御を実行する。なお、上体ベース125が旋回されると、ハンド124が把持する搬送物も含めて荷台部120の全体が鉛直軸周りに旋回されることになる。また、駆動輪112が駆動されることによって台車部110が路面に対して旋回する場合に、制御部200が台車部110の旋回に同期させて上体ベース125を逆向きに旋回させれば、荷台部120の全体は、見かけ上は路面に対して鉛直軸周りに回転することはなく、相対的にその姿勢を維持できる。具体的な駆動信号については後に詳述する。
アームユニット220は、アーム121およびハンド124を駆動するための駆動回路やモータを含み、荷台部120に設けられている。制御部200は、アームユニット220へ駆動信号を送ることにより、荷台部120の姿勢制御や把持制御を実行する。
センサユニット230は、周辺環境を探索したり荷台部120の姿勢を監視したりする各種センサを含み、台車部110および荷台部120に分散して配置されている。制御部200は、センサユニット230に制御信号を送ることにより、各種センサを駆動してその出力を取得する。カメラ114は、センサユニット230に含まれ、制御信号に従って撮影動作を実行する。
メモリ240は、不揮発性の記憶媒体であり、例えばソリッドステートドライブが用いられる。メモリ240は、移動ロボット100を制御するための制御プログラムの他にも、制御に用いられる様々なパラメータ値、関数、ルックアップテーブル等を記憶している。メモリ240は、移動ロボット100が自律走行する環境を表現する環境地図を格納した環境地図DB241を含む。
制御部200は、駆動輪ユニット210、旋回駆動ユニット212、アームユニット220、センサユニット230およびメモリ240との間で情報を送受信することにより、制御に関わる様々な演算を実行する機能演算部としての役割も担う。移動ロボット100は、計画された移動経路を目標位置まで自律的に移動したり、ユーザから移動方向を適宜与えられつつも障害物については自律的に回避しながら移動したりする。このとき、移動ロボット100は、計画された移動経路に沿って走行したり、カメラ114が捉えた障害物を回避したりするための速度指令を生成する。
次に、移動ロボット100の全方位移動制御について説明する。移動ロボット100は、荷台部120の姿勢を維持したまま、台車部110を全方位へ移動させることができる全方位移動制御を実行する。図3は、全方位移動制御を説明する図である。図示するように、キャスタ113を前側とした場合の右側の駆動輪を右駆動輪112aとし、左側の駆動輪を左駆動輪112bとする。また、走行面方向の第1軸方向としてx軸を、走行面方向方向であってx軸とは直交する第2軸方向としてy軸を、x軸およびy軸に直交する第3軸をz軸と定める。図の例は、荷台部120のうち旋回駆動される上体ベース125が、x軸プラス方向を向く姿勢(z軸周りの走行面に対する旋回角θが0度)の様子を表している。
図示するように、右駆動輪112aの角速度をω、左駆動輪112bの角速度をω、それぞれの半径をr(同一)、右駆動輪112aと左駆動輪112bの間隔(トレッド)をW、旋回中心と駆動輪車軸間のオフセット量をs、上体ベース125と台車ベース111の旋回角をθv、台車ベース111に対する上体ベース125の旋回角速度をωとする。
このとき、走行面に対するx軸方向の速度をxドット、走行面に対するy軸方向の速度をyドット、走行面に対するz軸周りの角速度をθドットで表すと、以下の関係式(1)が成立する。
Figure 0006743572
ここで、変換行列Jは、θの関数となっているが、この角度がどのような値になっても逆行列J-1は計算可能である。このことから、この制御においては特異点が存在せず、順方向、逆方向の計算が常に可能であることがわかる。すなわち、全方位移動制御は、ホロノミック制御であることがわかる。
制御部200は、環境地図DB241から取得した環境地図や、取得した障害物情報に基づいて次に移動する目標位置を定める。そして、その目標位置まで移動するために、現在の台車部110の位置と姿勢を考慮して速度指令値を生成する。この速度指令値が、上記のxドット、yドット、θドットである。しかし、移動ロボット100の駆動系は、右駆動輪112a、左駆動輪112b、および旋回機構119であるので、制御部200は、実際に駆動系を駆動するために、速度指令値をこれら駆動系の角速度にそれぞれ変換する必要がある。そのための変換行列が上記のJ-1であり、変換されて得られる駆動系のそれぞれの角速度が、上記のω、ω、ωである。
制御部200は、移動したい目標位置を初期値として駆動系の角速度(ω、ω、ω)を算出するが、駆動系のモータにはそれぞれ駆動能力に限界があるので、算出された角速度が駆動能力の限界を超えている場合には、想定した制御を実行できなくなる。そのまま制御を実行すると、台車部110が想定した経路から外れたり、荷台部120が想定した姿勢にならなかったりする。その結果、移動ロボット100の一部や把持した搬送物の一部が、経路の壁面や障害物に衝突することもあり得る。一方で、全方向移動のあらゆる状況を想定して、それぞれのモータの駆動能力から、速度指令値(xドット、yドット、θドット)の最大値を予め制限すると、著しく低速でしか移動できない状況が発生し得る。
そこで、本実施形態にかかる移動ロボット100の制御部200は、速度指令値から変換された駆動系の角速度(ω、ω、ω)の少なくともいずれかが右駆動輪112a、左駆動輪112b、および旋回機構119の駆動能力(ωR_MAX、ωL_MAX、ωS_MAX)を上回る場合には、速度指令値(xドット、yドット、θドット)の相互の比率を変更することなく、それぞれが駆動能力に収まるように、角速度(ω、ω、ω)を修正して右駆動輪112a、左駆動輪112b、および旋回機構119を制御する。この修正演算について説明する。図4は、速度指令値から変換される駆動系の角速度を修正する概念を説明する説明図である。図4は、右駆動輪112a、左駆動輪112b、および旋回機構119の角速度(ω、ω、ω)を三次元空間として表し、それぞれの軸上に、駆動能力(ωR_MAX、ωL_MAX、ωS_MAX)をプロットして示している。
速度指令値をベクトルvとして式(2)で表すと、関係式(1)を用いて変換される角速度(ω、ω、ω)のベクトルωは、式(3)で表される。
Figure 0006743572
Figure 0006743572
ここで、制御部200は、変換された(ω、ω、ω)のそれぞれが、対応する駆動能力(ωR_MAX、ωL_MAX、ωS_MAX)に対していずれか一つでも上回ったか否かを判断する。いずれも上回っていなければ、制御部200は、ベクトルωによって駆動制御を行う。いずれか一つでも上回ったら以下の修正演算を行う。図4において太線で表すベクトルωは、ωがωS_MAXを上回っている例を示している。
速度指令値のノルムτは、式(4)で表され、ノルムτを用いて速度指令のベクトルを単位ベクトル化すると、式(5)となる。
Figure 0006743572
Figure 0006743572
右駆動輪112a、左駆動輪112b、および旋回機構119の駆動能力(ωR_MAX、ωL_MAX、ωS_MAX)に対する速度安全係数をそれぞれτ、τ、τとして、以下の式(6)で定義する。
Figure 0006743572
そして、以下の式(7)により、速度安全係数の最小値をτSAFEと定める。
Figure 0006743572
すると、右駆動輪112a、左駆動輪112b、および旋回機構119の修正された角速度(ベクトルωSAFE)は、以下の式(8)により算出される。
Figure 0006743572
このような修正演算は、図4の三次元空間で幾何学的に表すと、太線で表すベクトルωの例で言えば、ベクトルωをその向きを変えないように、駆動能力を超えていたωの成分が駆動能力と等しいωS_MAXとなるまで長さを縮めるものである。このような修正演算によれば、少なくとも1つの成分は駆動能力の最大値となるので、移動ロボット100の移動が著しく低下することはない。また、ベクトルωSAFEの各成分の比率は、当初算出されたベクトルωの各成分の比率と等しく、つまり、速度指令値(xドット、yドット、θドット)の各成分の比率も保たれているので、ωSAFEで制御される移動ロボット100の動作は、想定された動作に対して若干スローになっただけである。換言すれば、移動速度を除けば、もとの速度指令値で想定された動作姿勢と同様の動作姿勢で移動すると言える。したがって、想定された経路を外れたり障害物に衝突したりする可能性を低減することができる。
なお、上記の説明においては、一旦(ω、ω、ω)を算出し、これらが駆動能力(ωR_MAX、ωL_MAX、ωS_MAX)を超えるかの判断を行ってから修正演算を実行したが、この判断を省くこともできる。具体的には、以下の式(9)により、τも対象に含めて速度安全係数の最小値τSAFEを定める。
Figure 0006743572
この場合、(ω、ω、ω)のいずれもが対応する(ωR_MAX、ωL_MAX、ωS_MAX)を下回っている場合には、τSAFEとしてτが選ばれ、式(8)によって計算されるベクトルωSAFEは、結局はベクトルωと等しくなる。
以上の制御を機能ブロックに対するパラメータの入出力で表すと、図5のように表される。図5は、制御の流れを示す機能ブロック図である。
制御部200は、主に速度指令生成器201と変換器202の機能を担う。速度指令生成器201は、目標位置、台車部110の姿勢を取得すると、走行面に対する荷台部120の速度指令としてのベクトルvを生成する。変換器202は、速度指令生成器201からベクトルvを取得すると共に、各モータの駆動能力として最大角速度(ωR_MAX、ωL_MAX、ωS_MAX)を取得する。最大角速度(ωR_MAX、ωL_MAX、ωS_MAX)は、メモリ240に記憶されている。
また、変換器202は、旋回駆動ユニット212から現在の台車部110に対する荷台部120の角度θ、走行面に対する荷台部120の角度θを取得する。変換器202は、これらの取得情報に基づいて上述の演算を行い、角速度指令としてベクトルωSAFEを生成する。そして、駆動輪ユニット210へはωR_SAFE、ωL_SAFEを指令信号として送信し、旋回駆動ユニット212へはωS_SAFEを指令信号として送信する。なお、変換器202によって修正演算を行わない場合には、角速度指令としてベクトルωを採用し、駆動輪ユニット210へはω、ωを指令信号として送信し、旋回駆動ユニット212へはωを指令信号として送信する。
なお、以上の実施例においては移動ロボット100を例として説明したが、上述の速度制御は移動ロボット以外にも様々な移動装置に適用し得る。例えば、荷台部に座席を設けた電動車椅子へ応用する場合には、椅子の向きを変えずに搭乗者が指示する位置や方向へ向かって移動する速度制御に適用し得る。
また、座標系の定義は上述した例に限らない。移動装置が利用される環境等に合わせて適宜三次元空間が定義されれば良い。例えば、走行面方向に定義されるx軸とy軸は、互いに直交していなくても良い。
また、従動キャスタの形式は、上述した例に限らない。従動輪であれば、オムニホイール、メカナムホイール、ボールキャスタなどであっても構わない。また、走行面と接触して移動装置の一部の荷重を支える、低摩擦部材で形成された突起などであっても良い。
100 移動ロボット、110 台車部、111 台車ベース、112 駆動輪、113 キャスタ、114 カメラ、119 旋回機構、120 荷台部、121 アーム、124 ハンド、125 上体ベース、200 制御部、201 速度指令生成器、202 変換器、210 駆動輪ユニット、212 旋回駆動ユニット、220 アームユニット、230 センサユニット、240 メモリ、241 環境地図DB

Claims (1)

  1. 互いに独立して回転駆動される2つの駆動輪および少なくとも1つの従動輪を有する台車部と、
    前記台車部に対して旋回可能に載置される荷台部と、
    前記荷台部を前記台車部に対して旋回駆動する旋回駆動部と、
    前記2つの駆動輪および前記旋回駆動部を制御する制御部と
    を備え、
    前記制御部は、
    走行面方向の第1軸方向の第1速度、前記走行面方向であって前記第1軸とは異なる第2軸方向の第2速度、および前記第1軸と前記第2軸に直交する第3軸周りの走行面に対する角速度として与えられる速度指令値を、前記2つの駆動輪のそれぞれの回転角速度である第1駆動角速度、第2駆動角速度、および前記旋回駆動部の旋回角速度に変換し、
    変換された前記第1駆動角速度、前記第2駆動角速度、および前記旋回角速度の少なくともいずれかが、前記2つの駆動輪および前記旋回駆動部の駆動能力を上回る場合には、前記速度指令値における前記第1速度、前記第2速度、および前記角速度の相互の比率を変更することなく、それぞれが前記駆動能力に収まるように、前記第1駆動角速度、前記第2駆動角速度、および前記旋回角速度を修正して、前記2つの駆動輪および前記旋回駆動部を制御する移動装置。
JP2016158716A 2016-08-12 2016-08-12 移動装置 Expired - Fee Related JP6743572B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016158716A JP6743572B2 (ja) 2016-08-12 2016-08-12 移動装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016158716A JP6743572B2 (ja) 2016-08-12 2016-08-12 移動装置

Publications (2)

Publication Number Publication Date
JP2018026047A JP2018026047A (ja) 2018-02-15
JP6743572B2 true JP6743572B2 (ja) 2020-08-19

Family

ID=61194588

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016158716A Expired - Fee Related JP6743572B2 (ja) 2016-08-12 2016-08-12 移動装置

Country Status (1)

Country Link
JP (1) JP6743572B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111745618A (zh) * 2020-07-14 2020-10-09 浙江大学昆山创新中心 一种机器人底盘

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09282020A (ja) * 1996-04-16 1997-10-31 Denso Corp サーボモータ駆動装置
JP2009217417A (ja) * 2008-03-10 2009-09-24 Kyoto Univ 油圧駆動システムの制御方式
JP5065206B2 (ja) * 2008-09-02 2012-10-31 トヨタ自動車株式会社 移動体、倒立型移動体、及びその制御方法
JP2015128973A (ja) * 2014-01-09 2015-07-16 トヨタ自動車株式会社 移動体
JP6183324B2 (ja) * 2014-09-02 2017-08-23 トヨタ自動車株式会社 倒立二輪型移動体及びその制御方法

Also Published As

Publication number Publication date
JP2018026047A (ja) 2018-02-15

Similar Documents

Publication Publication Date Title
Fuchs et al. Rollin'Justin-Design considerations and realization of a mobile platform for a humanoid upper body
JP5322562B2 (ja) 移動台車
US7798264B2 (en) Reconfigurable balancing robot and method for dynamically transitioning between statically stable mode and dynamically balanced mode
US9475193B2 (en) Unmanned ground vehicle stability control
JP2008052362A (ja) 自律移動装置
JP2018005771A (ja) 自律移動体および自律移動体の移動制御方法
JP2003271243A (ja) コミュニケーションロボット
JP5624445B2 (ja) 車両移動装置の運転方法
JP2017013214A (ja) 複数ロボットによる荷物積込み・積降ろしシステム及び方法
Yun et al. Development of an agile omnidirectional mobile robot with GRF compensated wheel-leg mechanisms for human environments
JP2009154256A (ja) 車輪付脚式移動装置
Datta et al. Development of autonomous mobile robot with manipulator for manufacturing environment
CN116027775A (zh) 人工拴系的电动拖车的动态控制
JP6743572B2 (ja) 移動装置
JP3560403B2 (ja) 全方向移動車両およびその制御方法
US8944448B2 (en) Trochoid drive system and moving body
KR101232584B1 (ko) 이동 로봇의 제어 장치 및 그 방법
WO2022264673A1 (ja) 走行システム
JP2009101898A (ja) 倒立車輪型移動体、及びその制御方法
JP2012188104A (ja) 車両移動装置の運転方法
JP2009101897A (ja) 倒立車輪型移動体、及びその制御方法
Endo et al. A car transportation system by multiple mobile robots-iCART
Munakata et al. A five-wheel wheelchair with an active-caster drive system
Aguilera et al. Control of Cart-Like Nonholonomic Systems Using a Mobile Manipulator
JP6841062B2 (ja) 全方位移動ロボット

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190529

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200519

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200630

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200713

R151 Written notification of patent or utility model registration

Ref document number: 6743572

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees