WO2026014247A1 - モバイルロボット - Google Patents

モバイルロボット

Info

Publication number
WO2026014247A1
WO2026014247A1 PCT/JP2025/022921 JP2025022921W WO2026014247A1 WO 2026014247 A1 WO2026014247 A1 WO 2026014247A1 JP 2025022921 W JP2025022921 W JP 2025022921W WO 2026014247 A1 WO2026014247 A1 WO 2026014247A1
Authority
WO
WIPO (PCT)
Prior art keywords
state
manipulator
mobile robot
center
gravity
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.)
Pending
Application number
PCT/JP2025/022921
Other languages
English (en)
French (fr)
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.)
Omron Corp
Original Assignee
Omron Corp
Omron Tateisi Electronics Co
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 Omron Corp, Omron Tateisi Electronics Co filed Critical Omron Corp
Publication of WO2026014247A1 publication Critical patent/WO2026014247A1/ja
Pending legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J5/00Manipulators mounted on wheels or on carriages

Definitions

  • This disclosure relates to a mobile robot.
  • Mobile robots are used in factories and other places. Some mobile robots are equipped with a manipulator equipped with an arm (multiple links) with multiple joints, and a cart on which the manipulator is mounted, with the manipulator being movable by driving the cart. Such mobile robots are required to be able to quickly move to their target location while preventing the manipulator from tipping over.
  • Non-Patent Documents 1 and 2 disclose a mobile robot that can prevent tipping over while moving by controlling the motion of five-degree-of-freedom inverted pendulum hardware to which a two-degree-of-freedom inverted pendulum model is applied, and the translational speed of the mobile platform (hereinafter referred to as the cart).
  • the movement of each joint of the 5-DOF inverted pendulum hardware is determined by inverse kinematics from the command for the target center of gravity position (X pen , Y pen ) of the 5-DOF inverted pendulum.
  • the computational load related to the center of gravity position is small, there is a problem in that the purpose of the movement of each joint is limited to realizing the target center of gravity position.
  • Memory 104 can temporarily store programs and various data as a working area.
  • the input device 108 is a device for making various inputs to the computer 100.
  • the input device 108 includes operation switches and operation buttons, and may also include pointing devices such as keyboards and mice used in personal computers.
  • the output device 110 is a device for outputting various types of information from the computer 100, and includes, for example, a display, indicator lamps, speakers, etc.
  • a touch panel display can also be used as the output device 110, in which case the touch panel display also functions as the input device 108.
  • the input device 108 and output device 110 may be detachable when the mobile robot 1 is in operation. Without the input device 108 and output device 110, operational commands and other information for the mobile robot 1 may be input and the operational status and other information of the mobile robot 1 may be output via wireless communication via the communication I/F 114.
  • the storage medium reader 112 is a device that reads data stored on various storage media and writes data to storage media.
  • Examples of storage media include CD (Compact Disc)-ROM, DVD (Digital Versatile Disc)-ROM, Blu-ray Disc, and USB (Universal Serial Bus) memory.
  • the communication I/F 114 is an interface for communicating with other devices.
  • Standards such as Ethernet (registered trademark) and FDDI (Fiber Distributed Data Interface) are used for communication.
  • each joint J rotates around its respective rotation axis AX as a result of a drive source (not shown) being controlled by the motor driver MD via the control unit 30.
  • the end effector H also has a drive source (not shown) controlled by the motor driver MD via the control unit 30, and performs predetermined gripping, suction, manipulation, movement, processing, etc. on an object.
  • the drive wheels WA rotate as a rotational drive source (not shown) is controlled by the control unit 30.
  • control unit 30 of the mobile robot 1 is broadly composed of an action generation unit 31, an execution control unit 32, and a target cart state generation unit 33, which are implemented within the computer 100 by the control program 118.
  • the coarse-grained model motion planning unit 34 generates, as a motion plan, commands to minimize the value of the objective function of the optimization problem that is determined in accordance with the set objective function and constraint conditions, in accordance with the target vehicle state information received from the target vehicle state generation unit 33, and outputs the generated command to the whole-body motion generation unit 35.
  • the commands output by the coarse-grained model motion planning unit 34 can be adjusted model state commands (e.g., adjusted pendulum angles q pitch_c , q roll_c , adjusted pendulum angular velocities ⁇ q pitch_c , ⁇ q roll_c ) that command adjusted state quantities of the coarse-grained model, and adjusted cart state commands (e.g., adjusted translational velocity v c , adjusted angular velocity ⁇ c ) that command adjusted state quantities of the cart 10.
  • adjusted model state commands and adjusted cart state commands it is possible to bring the state of the cart 10 closer to the target cart state while preventing the mobile robot 1 from tipping over.
  • the coarse-grained model is a virtual mechanism in which the total mass of multiple mass points is equal to the mass of the manipulator 20, has fewer links than the manipulator 20, and moves the manipulator 20 with fewer degrees of freedom.
  • the adjusted state of the coarse-grained model (adjusted model state) and the adjusted state of the carriage 10 (adjusted carriage state) can be the state of the coarse-grained model and the state of the carriage 10 that allow the position of the zero moment point of the mobile robot 1 to move within a predetermined range set within the support area of the mobile robot 1, and minimize the value of an objective function that includes a term for the error amount between the target state and the predicted state of the mobile robot 1 over a certain time range in the future.
  • the whole-body movement generation unit 35 generates and outputs various commands to be supplied to the motor driver MD in accordance with the commands supplied from the coarse-grained model movement planning unit 34.
  • the whole-body movement generation unit 35 can include a center of gravity command generation unit 36 and a whole-body command generation unit 37.
  • the center of gravity command generator 36 outputs a manipulator center of gravity command, which is an operation command related to the center of gravity of the manipulator 20, in accordance with the adjusted model state command.
  • the manipulator center of gravity command may include, for example, a manipulator center of gravity position command ⁇ p(cmd, CoG) related to the position of the center of gravity of the manipulator 20, and a manipulator center of gravity velocity command ⁇ p ⁇ (cmd, CoG) related to the velocity of the center of gravity.
  • the whole-body command generation unit 37 outputs joint command signals and wheel command signals for controlling the motor driver MD based on the manipulator center of gravity command and the adjustment carriage state command.
  • the coarse-grained model motion planning unit 34 will be described in more detail with reference to Figure 4.
  • the coarse-grained model motion planning unit 34 uses an inverted pendulum model as the coarse-grained model to coarse-grain the manipulator 20.
  • the inverted pendulum model In the inverted pendulum model, the roll and pitch rotate independently.
  • ZMP zero moment point
  • the ZMP can be calculated, for example, using the method described below.
  • gravity F1 and inertial force F2 act on the center of gravity GP1 of the entire mobile robot 1.
  • Inertial force F2 is the resultant of the inertial force associated with the mobile robot 1's forward/backward acceleration, the centrifugal force associated with its turning, and the inertial force associated with the movement of link L due to the drive of multiple joints J.
  • the point where the direction of resultant force F3 of gravity F1 and inertial force F2 intersects with the floor LF is called the zero moment point (ZMP).
  • ZMP zero moment point
  • C Z1 , C Z2 , and C Z3 are scalar quantities determined from geometric characteristics.
  • the scalar quantities C Z1 , C Z2 , and C Z3 may be determined by identification or calculated using design values. Furthermore, by using [Equation 2], it can be transformed into the following equations for the state quantities and input quantities.
  • the centrifugal acceleration a L can be approximated as follows using the turning velocity ⁇ (actual angular velocity or predicted angular velocity predicted as a current value) and the target translational velocity v ref so that the centrifugal acceleration a L is linearly related to the state quantity:
  • C Z4 , C Z5 , and C Z6 are scalar quantities determined from geometric characteristics.
  • the scalar quantities C Z4 , C Z5 , and C Z6 may be determined by identification or may be calculated using design values.
  • [Equation 7] can be transformed into the following equations for state quantities and input quantities. Since v ref is time-varying, d b also becomes time-varying.
  • ⁇ ref and v ref are command values sent from the target vehicle state generation unit 33, which is a higher-level controller, and k is a discrete time.
  • the input amount u that reduces the tracking error of the command within a finite time while keeping the norm of the input amount small can be expressed by the objective function of the following equation 11.
  • K(x, zb) and K(y, zb) are adjustment parameters introduced to mitigate modeling errors.
  • Equation 14 The above explanation can be summarized into a single optimization problem as shown in [Equation 14] below.
  • the ZMP position is allowed to move within a specified range.
  • the means for allowing the ZMP position to move within a specified range can be an inequality constraint such as the above [Equation 13], or by including an error term for the ZMP position in the objective function.
  • the ZMP position can be allowed to move within a specified range by appropriately setting the parameters of the objective function using experimental techniques, given the specifications of the mobile robot 1 and limitations on running acceleration.
  • the translational velocity (adjusted translational velocity v c ), rotational velocity (adjusted angular velocity ⁇ c ), virtual pendulum angle (adjusted pendulum angle q pitch_c ), and virtual pendulum angular velocity (adjusted pendulum angular velocity ⁇ q pitch , ⁇ q roll_c ) for the next time point are generated.
  • the pendulum angle and angular velocity are converted into the position (center of gravity position command ⁇ p(cmd, CoG)) and velocity (center of gravity velocity command ⁇ p(cmd, CoG)), respectively. These are output to the whole-body command generation unit 37 in the lower stage.
  • M is the mass of the cart 10
  • m is the mass of the inverted pendulum
  • g is the acceleration of gravity
  • x is the X-axis component of the center of gravity of the cart 10 in the global coordinate system
  • l is the length from the base of the inverted pendulum to its center of gravity
  • xj1 , z0 , and z1 are the X-axis component of the base position of the virtual pendulum, the height of the center of gravity of the cart 10, and the height of the center of gravity of the virtual pendulum, respectively.
  • Iwh is the moment of inertia around the wheel axle.
  • the X-axis component of the target ZMP position, XZMP0 can be set, for example, as follows:
  • step S14 determines whether the command value series at that time is sent to the subsequent whole-body movement generation unit 35. If the determination is No, step S13 is repeated until a Yes determination is made. The above process is repeated in steps k, k+1, k+2 (step S16), and so on, until the final control objective is achieved.
  • the coarse-grained model motion planning unit 35 can make the height of mass point M B track the target height by adding a term representing the error between the target value and the height of mass point M B to the objective function.
  • the whole-body motion generation unit 35 can solve the optimization problem of the whole-body motion generation unit 35 by dividing the term ⁇ J C0G ⁇ in [Equation 25 ] into two terms using the reference values ⁇ p(ref,A) and ⁇ p(ref,B) of the center of gravity velocities corresponding to mass point M A and mass point M B , respectively, and the center of gravity Jacobian ⁇ J(CoG,A) that projects the velocity ⁇ of all joints J onto the center of gravity velocity ⁇ p(CoG,A) of link group A and the center of gravity Jacobian ⁇ J(CoG,B) that projects the center of gravity velocity ⁇ p(CoG,B) of link group B.
  • a coarse-grained model with three or more mass points can also be used in the same way.
  • the coarse-grained model motion planning unit 34 generates a single mass point model as a coarse-grained model, and uses this single mass point model to generate commands to be output to the motor driver MD without using a center of gravity command.
  • commands related to the position and velocity of the center of gravity as in the first embodiment are not generated from the state of the single mass point model generated by the coarse-grained model motion planning unit 34, but rather commands related to the state of the joints of the manipulator 20 are directly obtained.
  • the coarse-grained model motion planning unit 34 can determine a virtual pendulum torque ⁇ pitch of the single mass point model.
  • the force ⁇ f to be applied to the center of gravity can be determined as follows. Simply considering only the X direction, it can be expressed as follows:

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)

Abstract

重心位置に関する計算負荷を小さくしながら、転倒防止以外の動作目的をも追求することが可能な制御方式を備えたモバイルロボットを提供する。 全身動作生成部は、調整モデル状態に対応するマニピュレータの重心状態を実現するための項を含む目的関数の値を最小化する最適制御であって、モバイルロボットが粗視化モデルよりも自由度の大きいマニピュレータを備えていること、又は台車が特定の機構形式を備えていることに伴う転倒防止以外の動作目的に関する事項を、目的関数の項又は最適化の制約条件として含む最適制御によって、マニピュレータの各関節を駆動するモータドライバに対する動作指令である関節指令を生成するとともに、車輪を駆動するモータドライバに対する動作指令である車輪指令を生成する。

Description

モバイルロボット
 本開示は、モバイルロボットに関する。
 工場などにおいてモバイルロボットが用いられている。モバイルロボットの中には、複数の関節を有するアーム(複数のリンク)を備えるマニピュレータと、マニピュレータを搭載する台車とを備え、台車の駆動によりマニピュレータを移動可能にされたものもある。このようなモバイルロボットにおいては、マニピュレータの転倒を防止しつつも、迅速に目的位置に移動可能とされることが求められる。
 アーム又はマニピュレータと台車とを備えたモバイルロボットとして、例えば非特許文献1、2に記載されたものが知られている。非特許文献1、2は、2自由度倒立振子モデルが適用される5自由度倒立振子ハードウェアの運動とモバイルプラットフォーム(以下、台車とよぶ)の並進速度との制御によってモバイルロボットの走行時の転倒の防止を図ることができるモバイルロボットを開示している。
D. Choi, M. Kim, and J. Oh, "Development of a rapid mobile robot with a multi-degree-of-freedom inverted pendulum using the model-based zero-moment point stabilization method," Advanced Robotics, Vol. 26, No. 5-6, pp. 515-535, 2012. D. Choi, and J. Oh, "ZMP stabilization of Rapid Mobile Manipulator", in 2012 IEEE International Conference on Robotics and Automation, St Paul, MN, USA: IEEE, May 2012, pp. 883-888. doi: 10.1109/ICRA.2012.6225369.
 非特許文献1、2のモバイルロボットでは、5自由度倒立振子ハードウェアの各関節の運動は、5自由度倒立振子の目標重心位置の指令(Xpen、Ypen)から逆運動学によって決定されるため、重心位置に関する計算負荷は小さいものの各関節の動作の目的が目標重心位置の実現に限定されるという問題がある。
 本開示は上記の課題に鑑み、重心位置に関する計算負荷を小さくしながら、転倒防止以外の動作目的をも追求することが可能な制御方式を備えたモバイルロボットを提供することを目的とする。
 本開示に係るモバイルロボットは、車輪を有する台車、複数の関節を有するアームを備えるマニピュレータ、及びロボット制御部を備えるモバイルロボットであって、前記ロボット制御部は、前記モバイルロボットを走行計画に従って走行させるための台車の目標状態である目標台車状態を取得し、合計質量が前記マニピュレータの質量である1又は複数の質点及び前記アームの関節の数よりも少ない数の自由度で前記質点を移動させる仮想機構を備えた粗視化モデルを利用して、前記モバイルロボットの転倒を回避しながら前記台車の状態を前記目標台車状態に近づけるための、前記粗視化モデルの状態である調整モデル状態及び前記台車の状態である調整台車状態を求める粗視化モデル動作計画部と、前記調整モデル状態に対応する前記マニピュレータの重心状態を実現するための項を含む目的関数の値を最小化する最適制御であって、前記モバイルロボットが前記粗視化モデルよりも自由度の大きいマニピュレータを備えていること、又は台車が特定の機構形式を備えていることに伴う転倒防止以外の動作目的に関する事項を、前記目的関数の項又は最適化の制約条件として含む最適制御によって、前記マニピュレータの各関節を駆動するモータドライバに対する動作指令である関節指令を生成するとともに、前記車輪を駆動するモータドライバに対する動作指令である車輪指令を生成する全身動作生成部と、前記粗視化モデル動作計画部及び前記全身動作生成部を周期的に実行させることにより、前記モバイルロボットを動作させる実行制御部とを備える。
 本開示に係るモバイルロボットによれば、重心位置に関する計算負荷を小さくしながら、転倒防止以外の動作目的をも追求することが可能な制御方式を備えたモバイルロボットを提供することができる。
第1の実施の形態に係るモバイルロボット1の概略構成を説明する概略図である。 モバイルロボット1の動作を制御する制御部30のハードウェア構成を説明するブロック図である。 制御部30の構成の一例を機能ブロック図である。 粗視化モデル動作計画部34について説明する概略図である。 ゼロ・モーメント・ポイント(ZMP)の移動について説明する概略図である。 粗視化モデル動作計画部34における最適化問題の計算の手順について説明するフローチャートである。 第2の実施の形態の動作生成部31の構成を説明するブロック図である。 第3の実施の形態の動作生成部31の構成を説明するブロック図である。
 以下、添付図面を参照して本実施形態について説明する。添付図面では、機能的に同じ要素は同じ番号で表示される場合もある。なお、添付図面は本開示の原理に則った実施形態と実装例を示しているが、これらは本開示の理解のためのものであり、決して本開示を限定的に解釈するために用いられるものではない。本明細書の記述は典型的な例示に過ぎず、本開示の特許請求の範囲又は適用例を如何なる意味においても限定するものではない。各図面において同一又は実質的に同等な要素、部材及び部分には同一の参照符号を付与している。また、図面の寸法及び比率は、説明の都合上誇張されており、実際の比率とは異なる場合がある。
 本実施形態では、当業者が本開示を実施するのに十分詳細にその説明がなされているが、他の実装・形態も可能で、本開示の技術的思想の範囲と精神を逸脱することなく構成・構造の変更や多様な要素の置き換えが可能であることを理解する必要がある。従って、以降の記述をこれに限定して解釈してはならない。
[用語等の説明]
 実施の形態の説明の前に、実施の形態中の各種用語の意義について以下に述べる。
(1)「マニピュレータ」は、複数の関節により接続された複数リンクの先端にエンドエフェクタ、カメラなどが備えられているものであってよい。
(2)「走行計画」は、走行目的に応じて将来の必要な時間範囲について作成される経路、速度などについての計画である。「走行計画」は、走行開始前に作成される計画であってもよいし、走行中に動的に作成・修正される計画であってもよい。「走行計画」は、モバイルロボットの外部で作成されてモバイルロボットに与えられる計画でもよいし、モバイルロボット自身が作成する計画であってもよい。
(3)「モータドライバ」は、例えば入力する指令によって与えられる値を目標値として目標値に対する誤差が小さくなるようにモータを駆動する制御システムであってよい。この制御システムにおける具体的な制御方式としては、トルク制御、位置制御、速度制御、又はこれらの組み合わせであってよく、「全身動作生成部」は、モータドライバの制御方式に適合した種類の値を含む指令を作成することができる。
(4)「粗視化モデル動作計画部」は、「調整モデル状態」及び「調整台車状態」を、MPC(Model Predictive Control)の手法によって求めるほか、LQR(Linear Quadratic Regulator)などの手法によって求めてもよい。
(5)「前記調整モデル状態に対応する前記マニピュレータの重心状態」は、単一質点モデルの場合、質点の状態(例えば質点の位置、速度)とマニピュレータの重心状態(例えば重心の位置、速度)とが一致する場合だけでなく、例えば倒立振子モデルの質点が動く球面をマニピュレータの重心が動く高さ一定の平面に変換した場合(平面で近似した場合)に変換元の状態に対応する変換先の状態であってもよい。
(6)下記の説明に含まれる数式(イメージ)のうち、太字の表記は行列又はベクトルを表している。これらの行列又はベクトルは、スカラ量との区別のため、本文中では、太字表記ではなく「→」にて表記することがある。また、n回微分を示すn個のドットは、数式(イメージ)中では文字の上方に表記されるが、本文中では左横に表記される。その他、数式(イメージ)中での二段階の添え字が、本文中では括弧書きで並列表記(例(cmd、Cog))される場合がある。
[第1の実施の形態]
 まず、第1の実施の形態に係るモバイルロボット1を、図1の概略図を参照して説明する。このモバイルロボット1は、台車10、マニピュレータ20、制御部30、及び撮像部40を備える。台車10は、車輪W(WA、WB)を有して並進移動又は旋回可能に構成され上部にマニピュレータ20を搭載している。マニピュレータ20は、後述するように、複数の関節、複数のリンクを備える。制御部30は、走行計画に従って台車10及びマニピュレータ20を制御する。
 図1に示す例では、台車10は略直方体状であるが、これに限定されるものではない。以下において、台車10の座標系として、X軸、Y軸、及びZ軸を設定する。X軸方向は台車10の前後方向、Y軸は台車10の左右方向、Z軸は台車10の高さ方向である。この左右方向は、台車10の幅方向でもある。また、以下では、台車10の高さ方向が鉛直方向と一致している場合を例として説明する。
 台車10は、移動機構11を備えている。移動機構11は、2つの駆動輪WAと、2つの従動輪WBと、2つの駆動輪WAをそれぞれ独立に駆動する2つの図示しない回転駆動源(モータ)とを有している。駆動輪WAと従動輪WBを総称して「車輪W」ということがある。駆動輪WA及び従動輪WBは、床面LFに接しており、これによってモバイルロボット1を支持し、台車10を移動させる。駆動輪WA及び従動輪WBの4つの接地点を結ぶ四角形は、支持領域SAを構成する。なお、台車10は、マニピュレータ20を安定的に載置できるよう、3輪以上の車輪Wを有し、その3つ以上の車輪Wの各接地点を結ぶ領域が支持領域を構成していればよい。
 駆動輪WAは、図示しない回転駆動源によって回転駆動される。例えば、2つの駆動輪WAを一定の回転数で回転させることで、台車10を直線(並進)運動させることができる。また、2つの駆動輪WAの回転数を左右で異ならせる(差動させる)ことで、台車10を旋回させることができる。従動輪WBは、回転駆動源によって回転駆動されることはなく、駆動輪WAの駆動により、床面LFとの摩擦力に従って回転可能とされている。さらに、従動輪WBの回転軸は、水平面内で自由に方向が変わる。すなわち、従動輪WBは、自在キャスター(旋回キャスター)である。
 また、マニピュレータ20は、複数の関節Jと、複数のリンクLと、エンドエフェクタHとを備えている。リンクLは隣接する2つの関節Jの間の部分である。複数の関節Jは、それぞれ回転軸AX(図1において、符号AXは一部の関節Jについてのみ図示されている。)を中心に回転可能に構成される。これにより、マニピュレータ20は、関節Jの回転によりエンドエフェクタHを任意の位置に移動させることができる。エンドエフェクタHは、対象物を保持可能に構成される装置であり、例えばロボットハンド、又は吸着パッドであり得る。なお、撮像部40は、マニピュレータ20に搭載され、マニピュレータ20の周囲の画像を撮像する。
 図2のブロック図を参照して、モバイルロボット1の動作を制御する制御部30のハードウェア構成を説明する。制御部30は、コンピュータ100を有する。コンピュータ100は、プロセッサ102、メモリ104、ストレージ106、入力装置108、出力装置110、記憶媒体読取装置112及び通信I/F(Interface)114を有する。これらの各要素は、バス116を介して相互に通信可能に接続されている。
 ストレージ106には、モバイルロボット1を制御するための制御プログラム118が格納されている。プロセッサ102は、各種のプログラムを実行したり、各要素を制御したりすることが可能である。具体的には、プロセッサ102は、ストレージ106からプログラムを読み出し、メモリ104を作業領域としてプログラムを実行する。すなわち、プロセッサ102は、ストレージ106に格納されているプログラムに従って、各要素の制御及び各種の演算処理を行う。
 メモリ104には、作業領域として、一時的にプログラム及び各種のデータを記憶可能である。
 ストレージ106は、たとえば、ROM(Read Only Memory)、HDD(Hard Disc Drive)、及びSSD(Solid State Drive)等であり、各種プログラム及び各種データが格納される。このプログラムには、上記した制御プログラム等のアプリケーションプログラムだけでなく、オペレーティングシステムも含まれる。
 入力装置108は、コンピュータ100に対し各種の入力を行うための装置である。入力装置108としては、操作スイッチや操作ボタン等が含まれる他、パーソナルコンピュータ等に使用されるキーボードやマウス等のポインティングデバイス等を含んでいてもよい。
 出力装置110は、コンピュータ100からの各種の情報を出力するための装置であり、たとえば、ディスプレイや表示ランプ、スピーカー等が含まれる。出力装置110としてタッチパネルディスプレイを用いることも可能であり、この場合には、タッチパネルディスプレイが入力装置108としても機能する。
 入力装置108及び出力装置110は、モバイルロボット1を運用するときに取り外せるようになっていてもよい。入力装置108及び出力装置110を設けることなく、通信I/F114を介した無線通信によって、モバイルロボット1に対する動作指令その他の情報を入力し、モバイルロボット1の動作状態その他の情報を出力してもよい。
 記憶媒体読取装置112は、各種の記憶媒体に記憶されたデータの読み込み、及び、記憶媒体に対するデータの書き込みを行う装置である。記憶媒体としては、たとえば、CD(Compact Disc)-ROM、DVD(Digital Versatile Disc)-ROM、ブルーレイディスク、USB(Universal Serial Bus)メモリ等を挙げることができる。
 通信I/F114は、他の機器と通信するためのインターフェースである。通信のためには、たとえば、イーサネット(登録商標)、FDDI(Fiber Distributed Data Interface)等の規格が用いられる。
 上記した各関節J、リンクL、エンドエフェクタH、及び駆動輪WAは、制御部30を介して、モータドライバMDにより制御される。具体的には、たとえば、各関節Jは、図示しない駆動源が制御部30を介してモータドライバMDによって制御されることにより、それぞれの回転軸AXを中心として回転する。同様に、エンドエフェクタHも、図示しない駆動源が制御部30を介してモータドライバMDによって制御され、対象物に対し所定の把持、吸着、操作、移動、加工等を施す。駆動輪WAは、図示しない回転駆動源が制御部30によって制御されて回転する。
 図3の機能ブロック図を参照して、制御部30の構成の一例を説明する。本実施の形態のモバイルロボット1の制御部30は、制御プログラム118によりコンピュータ100内に実現される、動作生成部31、実行制御部32、及び目標台車状態生成部33から大略構成される。
 目標台車状態生成部33は、台車10の走行計画(目標台車軌道)に従って、台車10の目標状態(目標並進速度vref、角速度ωref等)を含む目標台車状態情報を生成することができる。目標台車状態情報は、モバイルロボット1の台車10を走行計画に従って走行させるための台車10の目標状態を示す情報である。動作生成部31は、この目標台車状態情報を受信して、台車10及びマニピュレータ20を制御するための指令信号(関節指令信号、車輪指令信号)を出力する。
 モータドライバMDは、この指令信号を受信して、駆動信号を生成し、図示しない各種回転駆動部を駆動する。なお、モータドライバMDは、動作生成部31に対し、現在の各種回転駆動部の状態を示す信号をフィードバック信号としてフィードバックする機能も備え得る。実行制御部32は、動作生成部31を周期的に動作させることにより、モバイルロボット1を動作させる。
 動作生成部31は、一例として、粗視化モデル動作計画部34と全身動作生成部35とから構成され得る。粗視化モデル動作計画部34は、マニピュレータ20の動作を粗視化モデル(例えば倒立振子モデル)に置き換え、その粗視化モデルの動作計画を生成する部分である。粗視化モデルは、合計質量がマニピュレータ20の質量である1又は複数の質点及びアームの関節の数よりも少ない数の自由度で前記質点を移動させる仮想機構である。具体的に粗視化モデル動作計画部34は、目標台車状態生成部33から受信した目標台車状態情報に従い、設定された目的関数及び制約条件に従って定められる最適化問題の目的関数の値を最小化する指令を動作計画として生成し、全身動作生成部35に向けて出力する。ここでは、粗視化モデル動作計画部34が出力する指令は、粗視化モデルの調整された状態量を指令する調整モデル状態指令(例えば、調整振子角度qpitch_c、qroll_c、調整振子角速度・qpitch_c、・qroll_c)、及び台車10の調整された状態量を指令する調整台車状態指令(例えば、調整並進速度v、調整角速度ω)とすることができる。調整モデル状態指令、及び調整台車状態指令が適宜変更されることにより、モバイルロボット1の転倒を回避しながら、台車10の状態を目標台車状態に近づけることができる。粗視化モデルは、複数の質点の合計質量がマニピュレータ20の質量と等しくされるとともに、マニピュレータ20よりも少ない数のリンクを有し、マニピュレータ20をより少ない自由度で移動させる仮想機構である。
 粗視化モデルの調整された状態(調整モデル状態)及び台車10の調整された状態(調整台車状態)は、モバイルロボット1のゼロ・モーメント・ポイントの位置をモバイルロボット1の支持領域内に設定された所定範囲内で移動することを許容し、かつ、将来の一定時間範囲にわたるモバイルロボット1についての目標状態と予測状態との間の誤差量の項を含む目的関数の値を最小にする、粗視化モデルの状態及び台車10の状態とすることができる。
 全身動作生成部35は、粗視化モデル動作計画部34から供給された指令に従い、モータドライバMDに供給するための各種指令を生成し出力する部分である。全身動作生成部35は、一例として、重心指令生成部36と全身指令生成部37とを備えたものとすることができる。
 重心指令生成部36は、調整モデル状態指令に従い、マニピュレータ20の重心に関する動作指令であるマニピュレータ重心指令を出力する。マニピュレータ重心指令は、一例として、マニピュレータ20の重心の位置に関するマニピュレータ重心位置指令→p(cmd、CoG)、及び重心の独度に関するマニピュレータ重心速度指令→p・(cmd、CoG)を含み得る。
 全身指令生成部37は、マニピュレータ重心指令、及び調整台車状態指令に基づき、モータドライバMDを制御するための関節指令信号、及び車輪指令信号を出力する。
 図4を参照して、粗視化モデル動作計画部34について、更に詳細に説明する。粗視化モデル動作計画部34は、一例として、粗視化モデルとして倒立振子モデルを用いて、マニピュレータ20を粗視化する。倒立振子モデルでは、ロールとピッチが独立に回転するモデルである。
 倒立振子モデルでは、状態量→z、入力→uを下記[数1]のように定義したとき、非線形の運動方程式を、振子が直上に立って静止した状態を平衡点として、平衡点周りでテーラー展開の1次で線形化する事で、このモデルの状態空間表現を以下の[数2]のように得ることができる。

 ここでは、台車10の車輪Wのトルクが、台車10の車体の旋回と並進のトルクに損失なく伝わり、振子のピッチ軸周りの姿勢変化が、車体のヨー周りのイナーシャの変化に与える影響は小さく無視できると仮定している。以降の式では、このシステムを元に、適当なサンプリング時間で離散化し、離散の状態方程式のシステム行列→Ad、→Bdも用いる。また、離散の状態方程式は、後述の最適化問題においてダイナミクスの等式制約としても用いられる。
 次に、ロボット座標系X軸方向のゼロ・モーメント・ポイント(ZMP)をモデル化する。ZMPは、例えば次に説明する方法により計算され得る。図5に示すように、モバイルロボット1全体の重心位置GP1には、重力F1及び慣性力F2が働く。慣性力F2はモバイルロボット1の前後方向の加速度走行に伴う慣性力、旋回走行に伴う遠心力、及び複数の関節Jの駆動によるリンクLの運動に伴う慣性力の合力である。重力F1及び慣性力F2の合力F3の方向が床面LFに交わる点をゼロ・モーメント・ポイント(ZMP)と呼ぶ。慣性力F2が大きくなってZMPが支持領域SAの端に到達すると、モバイルロボット1は車輪のいずれかが床面LFから離れて転倒し始める。
 具体的に、ZMPのX軸方向のモデル化について説明する。ZMPの計算方法については後述する。Z軸方向のマニピュレータの重心の変化量が小さく無視できると仮定して、重心移動量を振子角に対して平衡点付近で線形化すると、上述の状態量を用いて、ロボット中の任意の原点からのZMPのX軸方向の変化量X(d、ZMP)を、以下のように表現することができる。
 
 なお、CZ1 、CZ2、CZ3は、幾何学的特徴から決まるスカラ量である。スカラ量CZ1、CZ2、CZ3は、同定によって定めてもよいし、設計値を用いて算出してもよい。更に[数2]を利用すれば、以下のような状態量と入力量の式に変形することができる。
 続いて、ロボット座標系Y軸方向のZMPをモデル化について説明する。X軸方向のモデル化との違いとしては、図1に示すような差動二輪型ロボットは、Y軸方向に加速度を発生させる事ができない。ただし、並進と旋回を行う場合には、遠心力によって旋回中心から離れる方向に力を受けるため、それをZMPモデルに組み込むことが必要である。わずかな時間の間、マニピュレータ20がある旋回中心点の周りに等速円運動すると近似すれば、この時の遠心加速度aは、以下の式で表すことができる。
 さらに、本手法では遠心加速度aを状態量に線形になるように、旋回速度ω(実測角速度又は現在値として予測された予測角速度)と目標並進速度vrefを用いて、以下のように近似することができる。
 これらを踏まえ、X軸と同様にして、任意の原点からのZMPのY軸方向の変化量Y(d、ZMP)を、以下のように得ることができる。
 なお、CZ4、CZ5、CZ6は幾何学的特徴から決まるスカラ量である。スカラ量CZ4、CZ5、CZ6は、同定によって定めてもよいし、設計値を用いて算出してもよい。X軸方向の場合と同様に、[数7]は以下のような状態量と入力量の式に変形することができる。vrefが時変のため、dも時変となる。
 続いて、粗視化モデル動作計画部34におけるモデル予測制御の定式化について説明する。状態量に対する指令値を以下のように定義する。
 ここで、ωref、vrefは上位コントローラである目標台車状態生成部33から送られてくる指令値であり、kは離散時間である。
ここで、→zと→zrefの差→e[k]を以下の[数10]のように表現したとき、有限時間内の指令の追従誤差を小さくしつつ、入力量のノルムを小さく抑えた入力量→uは以下の[数11]の目的関数で表現することができる。

 Np、Ncはそれぞれ予測ホライゾンステップ、制御ホライゾンステップである(本例においてはNp=Ncとしている)。
 粗視化モデルのダイナミクスに関する制約は、[数2]を離散化した状態方程式として以下のように表現される。
 モバイルロボット1の転倒回避を目的とした制約は、[数4]、[数8]のZMPのモデルを用い、適当な制約範囲を設ける事で、以下のように表現することができる。
 ただし,K(x,zb)、K(y、zb)はモデル化誤差を緩和する目的で導入した調整パラメータである。以上の説明を一つの最適化問題にまとめると以下の[数14]のようになる。
 ZMPの位置は所定範囲内において変位することが許容される。ZMPの位置が所定範囲内で移動することを許容する手段は、上記の[数13]のような不等式制約によってでもよいし、目的関数にZMP位置の誤差項を入れることによってもよい。目的関数の誤差項による場合は、モバイルロボット1の仕様や走行加速度の制限を前提に、実験的な手法によって目的関数のパラメータを適切に設定することにより、ZMPの位置が所定範囲内で移動することを許容することができる。
 ここまでに求めた入力量→uと[数2]を用いて、次時刻の並進速度(調整並進速度v)、旋回速度(調整角速度ω) 、仮想振子角度(調整振子角度qpitch_c)、仮想振子角速度(調整振子角速度・qpitch、・qroll_c) を生成する。更に、マニピュレータ20の重心のZ方向の位置は変動しないという仮定の下で、振子角度・角速度を重心の位置(重心位置指令→p(cmd、CoG))と速度(重心速度指令→・p(cmd、CoG))にそれぞれ変換する。これらを下段の全身指令生成部37に出力する。
 ここで、ZMPの計算方法について説明する。2質点系で近似したZMPの位置は以下のように表現することができる。
 ただし、Mは台車10の質量、mは倒立振子の質量、gは重力加速度、xはグローバル座標系における台車10の重心位置のX軸成分、lは倒立振子の根元から倒立振子重心までの長さ、xj1,z,zはそれぞれ,仮想振子の付け根位置のX軸成分,台車10の重心高さ,仮想振子の重心高さである。また,Iwhは車輪の車軸まわりの慣性モーメントである。ここで、目標とするZMPの位置のX軸成分をXZMP0は、例えば以下のように設定することができる。
 そして、この目標ZMP位置からの誤差を、以下のように定義する。
 Z軸方向のアーム重心の変化量が小さいと仮定して、sinq_pitch≒q_pitch、及び,zを定数値とすれば,上述の状態量を用いて,モバイルロボット1中の任意の原点からのZMPの変化量X(d、ZMP)を、以下のように表すことができる。ただし、CZ1、CZ2、CZ3は定数値である。
 次に、全身指令生成部37の動作について説明する。全身指令生成部37では、マニピュレータ20の関節Jや車輪Wを駆動するモータドライバMDへの指令値を算出するための目的関数を最適化問題として定式化し、線形ソルバーを利用して解を算出することで、指令値を生成する。具体的には、マニピュレータ20の重心速度や手先速度を所望の値に追従させ、かつ車輪W及び台車10の速度を所望の値に追従させるための目的関数が、最適化問題として定式化される。
 目的関数の設計と制約の設計について説明する。この例においては、台車10の速度、マニピュレータ20の重心速度、及びマニピュレータ20の手先(エンドエフェクタH)の速度を所望の値に追従させるような目的関数が設計される。後述するように、本実施の形態の全身動作生成部35は、調整モデル状態に対応するマニピュレータ20の重心状態を実現するための項を含む目的関数の値を最小化する最適制御であって、モバイルロボット1が粗視化モデルよりも自由度の大きいマニピュレータ20を備えていること、又は台車10が特定の機構形式を備えていることに伴う転倒防止以外の動作目的に関する事項を、目的関数の項又は最適化の制約条件として含む最適制御によって、マニピュレータ20の各関節Jを駆動する動作指令である関節指令を生成するとともに、車輪Wを駆動する動作指令である車輪指令を生成する。
 まず、粗視化モデル動作計画部34から出力される調整並進速度v、調整角速度ωに追従するよう車輪Wの角速度を最適化する目的関数の設計について説明する。調整並進速度v、調整角速度ωを、次の[数19]のように定義すると、差動二輪型移動ロボットの非ホロノミック拘束条件を用いて、左右の車輪を含む各軸速度→・θと、台車10の調整並進速度v、調整角速度ωの関係は、以下の等式で表現することができる。 

 ただし,→Aξ、→Aθは台車10の幾何構造から一意に決まる拘束条件係数行列である。より具体的には、→Aξは台車10の姿勢及び両車輪間の距離に関する係数であり、→A_・θは車輪半径に関する係数である。→・θは各車輪の回転速度及び各関節の回転速度を含むが、ここで制御上の有意情報は各車輪の回転速度である。
 次に、マニピュレータ20の重心位置を所望の位置に追従させるため、マニピュレータの20の関節Jの速度を最適化するための目的関数の設計について説明する。重心指令生成部36から出力される、転倒回避のためのマニピュレータ部重心位置指令→p(cmd、CoG)と重心速度指令→・p(cmd、CoG)を用いて、以下のように重心速度のリファレンス値→・p(ref、CoG)を作成する。
 ここで、K(CoG、p)は、位置誤差に関するゲインである。このリファレンス値→・p(ref、CoG)とロボットの重心ヤコビアン→JCoGを用いて、重心の追従誤差は、次のように表現することができる。ここで、各軸速度→・θの制御上の有意情報は、各関節Jの角速度である。
 次に、与えられたマニピュレータ20の手先の位置(ツール・センタ・ポイントTCP)の指令を追従するようマニピュレータ20の各軸の速度を最適化する目的関数の設計について説明する。手先の速度に所望の指令・p(ref、TCP)がある場合には、重心位置の場合と同様に、ヤコビアン→JTCPを用いて,以下のように誤差を定義することができる。
 なお、手先の運動を極力抑えたい場合は,速度がロボット座標系で0となるような指令を設定すればよい。
 本実施の形態では,マニピュレータ20の各軸の速度の最大/最小値,重心速度の最大/最小値、手先速度の最大/最小値,及び自己干渉回避を制約として導入する。4つの制約の内のはじめの3つは、ハードウェアのスペックについて適当な閾値を設定し、対応する変数を挟んで以下のように不等式制約を設定する。
 このとき,位置リミットまでの減速マージン領域に入ったら位置リミットに近づくほど速度上限値を小さくするように働く速度ダンパを導入することで,現在の位置を使って閾値を動的に変化させることで,位置次元の制約も考慮することができる。4つめの自己干渉回避については、各リンクをカプセル形状で近似し,隣り合うカプセルを除くカプセル同士の最接近距離vself(→・θ)が、ある閾値dclosestを超えないように制約する。
 以上をひとつの最適化問題にまとめると以下の[数25]になる。全身指令生成部37においてこの最適化問題が解かれて関節速度指令及び車輪速度指令が生成される。
 [数25]の第2項の値を最小化することにより、調整モデル状態指令に対応して生成された重心指令からのマニピュレータ20の重心状態の誤差を小さくし、モバイルロボット1の転倒を防止することができる。その他の項の最小化により、モバイルロボット1の転倒の防止を前提として、粗視化モデルよりも自由度の大きいマニピュレータ20を備え又は台車10が特定の機構形式を備えている状況において、モバイルロボット1の転倒防止以外の動作目的に関する事項を、前記目的関数の項又は最適化の制約条件として含む最適制御として実行することができる。なお、台車の各車輪Wの回転速度は[数20]の関係を用いて直接算出し、[数25]の目的関数には、マニピュレータ20の関節Jの速度に関する項である2番目及び3番目の項のみを含めるようにしてもよい。また、ツール・センタ・ポイントTCPの位置の安定化を図らない場合は、3番目の項は不要である。
 モータドライバMDが速度指令を入力する仕様である場合は、全身指令生成部37は、算出したマニピュレータ20の各軸の速度指令及び車輪Wの速度指令を、関節指令及び車輪指令としてモータドライバMDに出力することができる。
 モータドライバMDが位置指令を入力する仕様である場合は、全身指令生成部37は、算出したマニピュレータ20の各軸の速度指令及び車輪Wの速度指令を積分して角度指令に変換して関節指令及び車輪指令としてモータドライバMDに出力することができる。
 モータドライバMDがトルク指令を入力する仕様である場合は、全身指令生成部37は、算出した各軸の速度指令を計算トルク法(動力学モデル)を用いてトルク指令に変換して関節指令及び車輪指令としてモータドライバMDに渡す。モータドライバMDにより駆動される回転駆動部(モータ)内では電流ループの制御コントローラを備えたものとすることができ、別途チューニングすることができる。
 図6のフローチャートを参照して、粗視化モデル動作計画部34における最適化問題の計算の手順について説明する。まず、ステップS11において、図示しないセンサ等からの情報に基づいて、モバイルロボット1の状態量→zを計算する。 現在の状態量は状態オブザーバ等による推定値として取得されてもよい。
 次に、ステップS12において、実行可能解を設定する。実行可能解は、等式制約及び不等式制約を充足する必要がある。k=0の時は現在の状態量が初期実行可能解として使用され、k=1以降は、従前のステップ(ステップk-1)で得られた最適解が実行可能解として使用される。
 続いて、ステップS13において、設定された実行可能解に基づいて目的関数([数11])の値を得て、前回の目的関数の値よりも小さくするような指令値系列を求められる。実行可能解の更新は、ニュートン法、準ニュートン法、逐次二次計画法等を用いた最適化アルゴリズムによって計算すればよく、目的関数の値を前回の目的関数の値よりも小さくするような指令値系列を求める。求められた指令値系列が最適解探索の終了条件を満たしているか否かが判定される(ステップS14)。ここで、最適解探索の終了条件の例としては、例えば(1)目的関数の値が所定値以下になったこと、(2)目的関数の値の前回からの変化の大きさが所定値以下になったこと、(3)ループ処理の回数が所定回数に達したことなどが挙げられる。
 ステップS14の判定がYesであればステップS15に移動し、そのときの指令値系列が後段の全身動作生成部35へ送信される。Noであれば、Yes判定がなされるまでステップS13が繰り返される。以上の処理をステップk、k+1、k+2、と繰り返し(ステップS16)、最終的な制御目的が達成されるまで処理が繰り返される。
 以上説明したように、この第1の実施の形態のモバイルロボット1によれば、粗視化モデルの状態である調整モデル状態指令及び調整台車状態指令を、粗視化モデル動作計画部34から出力し、全身動作生成部35において、調整モデル状態指令に対応するマニピュレータ20の重心状態を実現するよう目的関数の値を最小化する最適制御を行いながら、転倒防止以外の動作目的に関する事項も目的関数の項又は最適化の制約条件として含ませている。これにより、重心位置に関する計算負荷を小さくしながら、転倒防止以外の動作目的をも追求することが可能になる。
[第2の実施の形態]
 次に、第2の実施の形態に係るモバイルロボット1を、図7を参照して説明する。このモバイルロボット1の基本構成は第1の実施の形態と同一であるので、重複する説明は省略する。この第2の実施の形態では、粗視化モデルとして、図7に示すような2つの質点M、Mによりマニピュレータ20を表現する2質点モデルを採用する。この点が第1の実施の形態とは異なっている。
 粗視化モデル動作計画部34は、ZMPの位置がモバイルロボット1の支持領域SA内に設定された所定範囲内で移動することを許容しるように2質点モデルの動作計画を行い、全身動作生成部35にて2質点モデルの状態から全関節の状態を決定することができる。例えば、図7の構造のモバイルロボット1について、関節J3よりも下側のリンク群Aを質点Mで表し、関節J3よりもエンドエフェクタH側のリンク群Bを質点Mで表した2質点モデルを考える。2つの質点M、Mは、その合計質量がマニピュレータ20の質量と等しくなるように設定される。この2質点モデルによれば、マニピュレータ20の姿勢変化に伴う重心位置の高さの変化を表現することができる。
 粗視化モデル動作計画部35では、目的関数に質点Mの高さについての目標値との誤差を表す項を追加することにより、質点Mの高さを目標高さに追従させることができる。全身動作生成部35では、質点M、質点Mにそれぞれ対応する重心速度のリファレンス値→・p(ref、A)、→・p(ref、B)、及び全関節Jの速度・θをリンク群Aの重心速度→・p(CoG、A)へ射影する重心ヤコビアン→J(CoG、A)とリンク群Bの重心速度・p(CoG、B)へ射影する重心ヤコビアン→J(CoG、B)を用いて、[数25]の→JC0G・θの項を2つの項に分けることにより、全身動作生成部35の最適化問題を解くことができる。質点の数が3以上の粗視化モデルも同様にして利用することができる。
[第3の実施の形態]
 次に、第3の実施の形態に係るモバイルロボット1を、図8を参照して説明する。このモバイルロボット1の基本構成は第1の実施の形態と同一であるので、重複する説明は省略する。ただし、この第3の実施の形態は、全身動作生成部35の構成が前述の実施の形態とは異なっている。
 図8を参照して、この第3の実施の形態の動作生成部31の構成を説明する。この動作生成部31では、粗視化モデル動作計画部34において、粗視化モデルとして単質点モデルを生成し、この単質点モデルを用いて、重心指令を介せずにモータドライバMDに出力する指令を生成する。
 具体的には、粗視化モデル動作計画部34で生成された単質点モデルの状態から、第1の実施の形態のような重心の位置や速度に係る指令は生成せず、マニピュレータ20の関節の状態に係る指令を直接求める。一例として、粗視化モデル動作計画部34では、単質点モデルの仮想振子トルクτpitchを決定するようことができる。さらに、振子長さlを用いると、重心に加えたい力→fを以下のように決定することができる。簡単にX方向のみについて考えると、次のように表現することができる。
 この力→fを使って、全身動作生成部35では、例えば以下の[数27]のように、力→fと単質点モデルの全軸のトルク→τとの間の関係を示す等式制約の下で全軸のトルクを最小化する最適化問題を解くことで、モータドライバMDへの指令を生成することができる。

 
 ここで、→Jτ、comは、関節トルクに対する重心にかかる力のヤコビアンであり、ロボットの動力学モデルと重心ヤコビアンを用いて算出する。さらに、目的関数に台車の速度追従に関する項を追加したり、台車の機構によって決まる拘束、モータのスペックに関する制約などを追加したりしてもよい。
 本開示は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本開示を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
1…モバイルロボット、 10…台車、 11…移動機構、 20…マニピュレータ、 30…制御部、 WA…駆動輪、 WB…従動輪、 J…関節、 L…リンク、 H…エンドエフェクタ、AX…回転軸、 31…動作生成部、 32…実行制御部、 33…目標台車状態生成部、 34…粗視化モデル動作計画部、 35…全身動作生成部、 36…重心指令生成部、 37…全身指令生成部、 40…撮像部、 100…コンピュータ。 102…プロセッサ、 104…メモリ、 106…ストレージ、 108…入力装置、 110…出力装置、 112…記憶媒体読取装置、 116…バス、 118…制御プログラム、 MD…モータドライバ、 SA…支持領域。

Claims (4)

  1.  車輪を有する台車、複数の関節を有するアームを備えるマニピュレータ、及びロボット制御部を備えるモバイルロボットであって、
     前記ロボット制御部は、
     前記モバイルロボットを走行計画に従って走行させるための台車の目標状態である目標台車状態を取得し、合計質量が前記マニピュレータの質量である1又は複数の質点及び前記アームの関節の数よりも少ない数の自由度で前記質点を移動させる仮想機構を備えた粗視化モデルを利用して、前記モバイルロボットの転倒を回避しながら前記台車の状態を前記目標台車状態に近づけるための、前記粗視化モデルの状態である調整モデル状態及び前記台車の状態である調整台車状態を求める粗視化モデル動作計画部と、
     前記調整モデル状態に対応する前記マニピュレータの重心状態を実現するための項を含む目的関数の値を最小化する最適制御であって、前記モバイルロボットが前記粗視化モデルよりも自由度の大きいマニピュレータを備えていること、又は台車が特定の機構形式を備えていることに伴う転倒防止以外の動作目的に関する事項を、前記目的関数の項又は最適化の制約条件として含む最適制御によって、前記マニピュレータの各関節を駆動するモータドライバに対する動作指令である関節指令を生成するとともに、前記車輪を駆動するモータドライバに対する動作指令である車輪指令を生成する全身動作生成部と、
      前記粗視化モデル動作計画部及び前記全身動作生成部を周期的に実行させることにより、前記モバイルロボットを動作させる実行制御部と
    を備える、モバイルロボット。
  2.  前記最適制御における転倒防止以外の動作目的に関する事項は、
     前記目的関数が前記台車の状態を前記調整台車状態に追従させるための項を含むこと、
     前記目的関数が前記マニピュレータの先端位置を目標先端位置に追従させるための項を含むこと、
     少なくとも1の前記関節の回転速度が不等式制約に従うこと、
     前記車輪の回転速度が前記台車の機構上の拘束条件に従うこと、
     前記マニピュレータの重心の移動速度が不等式制約に従うこと、
     前記マニピュレータのツール・センタ・ポイントの速度が不等式制約に従うこと、及び
     前記関節の角度の組み合わせが前記マニピュレータの自己干渉回避の制約に従うこと
    のうちの少なくとも1つを含む、請求項1に記載のモバイルロボット。
  3.  前記調整モデル状態及び前記調整台車状態は、前記モバイルロボットのゼロ・モーメント・ポイントの位置を前記モバイルロボットの支持領域内に設定された所定範囲内で移動することを許容し、かつ、将来の一定時間範囲にわたる前記モバイルロボットについての目標状態と予測状態との間の誤差量の項を含む目的関数の値を最小にする前記粗視化モデルの状態及び前記台車の状態である、請求項1に記載のモバイルロボット。
  4.  前記全身動作生成部は、
     前記調整モデル状態の指令に従い、前記マニピュレータの重心に関する重心指令を生成する重心指令生成部と、
     前記重心指令、及び前記調整台車状態の指令に従い、前記マニピュレータ及び前記台車の動作に関する指令を生成する全身指令生成部と
    を更に備える、請求項3に記載のモバイルロボット。
PCT/JP2025/022921 2024-07-11 2025-06-25 モバイルロボット Pending WO2026014247A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2024-112026 2024-07-11
JP2024112026A JP2026011433A (ja) 2024-07-11 2024-07-11 モバイルロボット

Publications (1)

Publication Number Publication Date
WO2026014247A1 true WO2026014247A1 (ja) 2026-01-15

Family

ID=98386586

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2025/022921 Pending WO2026014247A1 (ja) 2024-07-11 2025-06-25 モバイルロボット

Country Status (2)

Country Link
JP (1) JP2026011433A (ja)
WO (1) WO2026014247A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006136962A (ja) * 2004-11-11 2006-06-01 Hitachi Ltd 移動ロボット
JP2014151370A (ja) * 2013-02-05 2014-08-25 Toyota Motor Corp 脚式ロボットの制御方法および脚式ロボット
JP2015120419A (ja) * 2013-12-24 2015-07-02 日立オートモティブシステムズ株式会社 サスペンション制御装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006136962A (ja) * 2004-11-11 2006-06-01 Hitachi Ltd 移動ロボット
JP2014151370A (ja) * 2013-02-05 2014-08-25 Toyota Motor Corp 脚式ロボットの制御方法および脚式ロボット
JP2015120419A (ja) * 2013-12-24 2015-07-02 日立オートモティブシステムズ株式会社 サスペンション制御装置

Also Published As

Publication number Publication date
JP2026011433A (ja) 2026-01-23

Similar Documents

Publication Publication Date Title
KR20210141664A (ko) 다물체 제어기 및 로봇
JP2020032481A (ja) ロボット制御装置、ロボット装置、ロボット制御のパラメータ調整方法、およびプログラム
CN112703090B (zh) 机器人控制装置、机器人控制方法及存储介质
US11130235B2 (en) Work mode and travel mode for mobile robots
Bacheti et al. Path-following with a ugv-uav formation considering that the uav lands on the ugv
JP6468127B2 (ja) 全方位移動体、その制御方法及びプログラム
CN117389317B (zh) 一种轮式双足机器人的运动控制方法及系统
Gans et al. Visual servo velocity and pose control of a wheeled inverted pendulum through partial-feedback linearization
Ding et al. Chat-PM: A class of composite hybrid aerial/terrestrial precise manipulator
CN113419433A (zh) 一种自平衡电动轮椅欠驱动系统跟踪控制器的设计方法
Jespersen et al. Path-following model predictive control of ballbots
Chung et al. Robust interaction control of a mobile manipulator–dynamic model based coordination
JP2026011433A (ja) モバイルロボット
Bascetta et al. A feedback linearisation algorithm for single-track models with structural stability properties
WO2026014246A1 (ja) モバイルロボット
US20250278097A1 (en) Autonomous Robot Double Drive Assembly
CN118789523B (zh) 机械臂拖动示教方法、装置、设备、介质和产品
Choi Model predictive control of autonomous delivery robot with non-minimum phase characteristic
Basal et al. Mathematical Modeling of a Unicycle Robot and Use of Advanced Control Methodologies for Multi-Paths Tracking Taking into Account Surface Friction Factors
Sasaki et al. Pushing operation by two-wheel inverted mobile manipulator
Fuentes et al. Stable operation of arm type robots on mobile platforms
KR101708903B1 (ko) 외바퀴로봇과 외바퀴로봇의 자세제어방법
CN117075525B (zh) 基于约束型模型预测控制的移动机器人控制方法
CN117055361B (zh) 基于滑模模型预测控制的移动机器人控制方法
Savnani et al. Modelling, Design and Control of a Four wheel Holonomic Drive

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 25836809

Country of ref document: EP

Kind code of ref document: A1