JPWO2015087504A1 - Mobile robot movement control method and mobile robot - Google Patents

Mobile robot movement control method and mobile robot Download PDF

Info

Publication number
JPWO2015087504A1
JPWO2015087504A1 JP2015552305A JP2015552305A JPWO2015087504A1 JP WO2015087504 A1 JPWO2015087504 A1 JP WO2015087504A1 JP 2015552305 A JP2015552305 A JP 2015552305A JP 2015552305 A JP2015552305 A JP 2015552305A JP WO2015087504 A1 JPWO2015087504 A1 JP WO2015087504A1
Authority
JP
Japan
Prior art keywords
trajectory
mobile robot
contact point
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.)
Granted
Application number
JP2015552305A
Other languages
Japanese (ja)
Other versions
JP6168158B2 (en
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
Publication of JPWO2015087504A1 publication Critical patent/JPWO2015087504A1/en
Application granted granted Critical
Publication of JP6168158B2 publication Critical patent/JP6168158B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62DMOTOR VEHICLES; TRAILERS
    • B62D57/00Vehicles characterised by having other propulsion or other ground- engaging means than wheels or endless track, alone or in addition to wheels or endless track
    • B62D57/02Vehicles characterised by having other propulsion or other ground- engaging means than wheels or endless track, alone or in addition to wheels or endless track with ground-engaging propulsion means, e.g. walking members
    • B62D57/032Vehicles characterised by having other propulsion or other ground- engaging means than wheels or endless track, alone or in addition to wheels or endless track with ground-engaging propulsion means, e.g. walking members with alternately or sequentially lifted supporting base and legs; with alternately or sequentially lifted feet or skid

Landscapes

  • Engineering & Computer Science (AREA)
  • Chemical & Material Sciences (AREA)
  • Combustion & Propulsion (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)

Abstract

接触点計画設定工程では、移動手段を接地する接触点の位置と接地するときの移動手段の姿勢とを時系列のデータとした接触点計画を設定する。軌道生成工程では、移動手段を接地するときの接触力の微分値を入力とする予測モデルを構築して、この予測モデルによって所定時間幅の予測区間における移動ロボットの状態変化を表わし、予測区間において、所定の評価基準を用いて接触力の微分値の時系列データを求め、この求まった接触力の微分値の時系列データと前記予測モデルとから、移動ロボットの重心軌道を得る。評価基準には、「各接触点に対応して設定された重みに基づいて各接触点に接触力を配分する」という基準が含まれる。In the contact point plan setting step, a contact point plan is set in which the position of the contact point for grounding the moving means and the posture of the moving means for grounding are time-series data. In the trajectory generation process, a prediction model is constructed that inputs the differential value of the contact force when the moving means is grounded, and this prediction model represents a change in the state of the mobile robot in the prediction interval of a predetermined time width. The time series data of the differential value of the contact force is obtained using a predetermined evaluation standard, and the center of gravity trajectory of the mobile robot is obtained from the time series data of the obtained differential value of the contact force and the prediction model. The evaluation standard includes a standard that “a contact force is distributed to each contact point based on a weight set corresponding to each contact point”.

Description

本発明は、移動ロボットの移動制御方法、および移動ロボットに関する。より具体的には、多点に接触しながら移動する移動ロボットが安定に移動できるような軌道を生成するための軌道生成技術に関する。   The present invention relates to a mobile robot movement control method and a mobile robot. More specifically, the present invention relates to a trajectory generation technique for generating a trajectory that allows a mobile robot that moves while touching multiple points to move stably.

自律的に移動する機能を備えたロボットが開発されており、典型的には、二足歩行する脚式ロボットがある。二足歩行ロボットにあっては、ZMPを用いた軌道生成と動作制御により、安定な二足歩行移動が実現されている(例えば特許文献1)。   Robots having a function of moving autonomously have been developed, and typically there are legged robots that walk biped. In a biped robot, stable bipedal movement is realized by trajectory generation and operation control using ZMP (for example, Patent Document 1).

特開2005−177884号公報Japanese Patent Laid-Open No. 2005-17784 特許5034235号Japanese Patent No. 5034235

これからのロボットには様々な環境で活躍することが期待されている。例えば、サービスロボットは人と同じ住空間で活動することが期待される。住空間のような環境でロボットが移動するためには、単に脚式の二足歩行ができるだけでは不十分であると考えられる。例えば、図1のような状況が考えられる。図1において、テーブルが壁の近くにあり、そして、テーブルの奥側において壁に近い方にボトルが置かれている。ロボットがこのボトルを掴むためには、単に二足歩行で進むだけでは無理である。ロボットは、壁やテーブルに手を着きながら移動したり、体を傾けて手を伸ばしたりしなければならない。このように、サービスロボットには、複数の任意の点で環境と接触しながら運動を行える能力が必要である。   Future robots are expected to play an active role in various environments. For example, service robots are expected to be active in the same living space as people. In order for the robot to move in an environment such as a living space, it is considered that it is not sufficient to simply perform legged bipedal walking. For example, the situation as shown in FIG. In FIG. 1, the table is near the wall, and the bottle is placed closer to the wall on the far side of the table. In order for the robot to grab the bottle, it is impossible to simply walk on two legs. Robots must move while putting their hands on a wall or table, or tilt their bodies and extend their hands. As described above, the service robot needs to have an ability to exercise while making contact with the environment at a plurality of arbitrary points.

今後の説明のために、複数の任意の点で環境と接触しながら運動(移動)することを、本明細書では「多点接触移動」と称することにする。   For future explanation, movement (movement) while contacting the environment at a plurality of arbitrary points will be referred to as “multi-point contact movement” in this specification.

従来の人型ロボットの安定化手法は大多数が2足歩行の安定化に関する技術であり、多点接触移動に対応するための技術はこれまであまり開発されてこなかった。2足歩行も単脚状態と両脚状態とが切り替わりながら移動していく動作であるので多点接触移動の一種と言える。しかし、2足歩行の技術と多点接触移動の技術とで大きく違う点がある。2足歩行技術は多くの場合(ZMPがその代表格)、各接触点(2足で言うと左足と右足)が同一平面内に含まれていることを前提にしている。(このことは、例えば、特許文献2の段落0012にも記載されている。)すなわち、ZMP制御では、本来的には合計6次元である力・モーメントのうち2次元の情報しか表現できておらず、極めて限定された接触状態の遷移しか扱うことができないのである。   Most of the conventional methods for stabilizing humanoid robots are technologies related to stabilization of biped walking, and technologies for dealing with multipoint contact movement have not been developed so far. Biped walking is also a type of multipoint contact movement because it is an action of moving while switching between a single leg state and a both leg state. However, there are significant differences between the bipedal walking technique and the multipoint contact movement technique. In many cases, biped walking technology (ZMP is a representative example) is based on the premise that contact points (left foot and right foot in terms of two feet) are included in the same plane. (This is also described in, for example, paragraph 0012 of Patent Document 2.) That is, in ZMP control, only two-dimensional information can be expressed out of forces and moments that are essentially six dimensions in total. However, only very limited contact state transitions can be handled.

多点接触移動に対応すべく開発された制御システムが特許文献2に開示されている。しかしながら、特許文献2に開示の技術には根本的問題として次ぎの点がある。すなわち、特許文献2に開示の技術では、接触点の計画だけではなく、目標重心位置や目標運動量を与えないと安定な軌道を作れないという問題がある。ユーザとしてはロボットに接触点の計画だけを与え、あとは、ロボットが設定された接触点の計画に基づいて自動的に安定な重心軌道を生成して自律的に移動してくれることが望ましい。   A control system developed to cope with multi-point contact movement is disclosed in Patent Document 2. However, the technology disclosed in Patent Document 2 has the following points as a fundamental problem. That is, the technique disclosed in Patent Document 2 has a problem that a stable trajectory cannot be created unless the target center of gravity position and the target momentum are given, in addition to the planning of the contact point. It is desirable for the user to give only a contact point plan to the robot, and then automatically generate a stable center of gravity trajectory based on the set contact point plan and move autonomously.

そもそも、将来の目標重心位置を予め知ることはできないのであり、制御目標値として未知であるはずの将来の重心位置をユーザが設定するというのは無理がある。(2足歩行の場合で言い換えると、目標ZMP軌道が最初にあって、この目標ZMP軌道に基づいて重心軌道を生成するというのが軌道生成の技術であり、目標重心位置を予め知ることはできない。)   In the first place, the future target center-of-gravity position cannot be known in advance, and it is impossible for the user to set the future center-of-gravity position that should be unknown as the control target value. (In other words, in the case of bipedal walking, the target ZMP trajectory is first, and the center of gravity trajectory is generated based on this target ZMP trajectory, and the target center of gravity position cannot be known in advance. .)

また、特許文献2に開示の技術では、接触点の切替(接触状態の遷移)に伴う力の変化が急峻になってしまい、滑らかな力の遷移が実現できないという問題もある。   In addition, the technique disclosed in Patent Document 2 has a problem that the force change accompanying the switching of the contact point (contact state transition) becomes steep, and smooth force transition cannot be realized.

上記のような問題は、住環境で活躍するようなサービスロボットだけではなく、狭い空間や障害物が多い空間などで活躍する移動ロボットにも共通する問題である。
本発明の目的は、上記問題に鑑み、接触点計画に基づいて自動的に安定な軌道を生成する移動ロボットの移動制御方法を提供することにある。
The above problems are common to not only service robots that are active in the living environment but also mobile robots that are active in narrow spaces or spaces with many obstacles.
In view of the above problems, an object of the present invention is to provide a mobile robot movement control method that automatically generates a stable trajectory based on a contact point plan.

本発明の移動ロボットの移動制御方法は、
二以上の移動手段を交互に接地しながら移動する移動ロボットの移動制御方法であって、
前記移動手段を接地する接触点の位置と接地するときの前記移動手段の姿勢とを時系列のデータとした接触点計画を設定する接触点計画設定工程と、
前記接触点計画設定工程で設定したように前記移動手段を接触点に接地しながら移動するための軌道を生成する軌道生成工程と、を備え、
前記軌道生成工程は、
前記移動手段を接地するときの接触力の微分値を入力とする予測モデルを構築して、この予測モデルによって所定時間幅の予測区間における移動ロボットの状態変化を表わし、
前記予測区間において、所定の評価基準を用いて接触力の微分値の時系列データを求め、
この求まった接触力の微分値の時系列データと前記予測モデルとから、移動ロボットの重心軌道を得るものであり、
前記評価基準には、
各接触点に対応して設定された重みに基づいて、各接触点に接触力を配分するという基準が含まれる
ことを特徴とする。
The mobile robot movement control method of the present invention comprises:
A movement control method of a mobile robot that moves while alternately grounding two or more moving means,
A contact point plan setting step for setting a contact point plan with time-series data of the position of the contact point for grounding the moving means and the posture of the moving means for grounding;
A trajectory generating step for generating a trajectory for moving while moving the moving means to the contact point as set in the contact point plan setting step,
The trajectory generation step includes
By constructing a prediction model that receives as input a differential value of the contact force when the moving means is grounded, the prediction model represents a change in the state of the mobile robot in a prediction section of a predetermined time width,
In the prediction section, using a predetermined evaluation criterion, to obtain time series data of the differential value of the contact force,
From the time series data of the differential value of the obtained contact force and the prediction model, the center of gravity trajectory of the mobile robot is obtained.
The evaluation criteria include
Based on the weight set corresponding to each contact point, a criterion for allocating contact force to each contact point is included.

本発明では、
前記評価基準には、さらに、
各接触点に対応して設定された重みに基づいて、各接触点に接触力の微分値を配分するという基準が含まれる
ことが好ましい。
In the present invention,
The evaluation criteria further includes:
It is preferable that a criterion for allocating a differential value of the contact force to each contact point based on the weight set corresponding to each contact point is included.

本発明では、
前記評価基準は、接触力および接触力の微分値の二乗和を含む評価関数Jを予測区間内において最小化することである
ことが好ましい。
In the present invention,
The evaluation criterion is preferably to minimize an evaluation function J including a contact force and a square sum of a differential value of the contact force within a prediction interval.

本発明では、
前記評価関数Jの最小化問題を拘束条件のもとで求解するにあたり、
前記拘束条件の式には、移動ロボットの重心鉛直軌道と重心回りモーメント軌道とを含んでおり、
前記軌道生成工程は、
予測区間内において、移動ロボットの重心鉛直軌道と重心回りモーメント軌道とを一度仮設定する工程と、
前記評価関数Jの最小化問題を拘束条件のもとで一度求解した後、その結果に応じて、予測区間内において移動ロボットの動作が安定するように重心鉛直軌道と重心回りモーメント軌道とを修正し、
修正した重心鉛直軌道と重心回りモーメント軌道とを用いて少なくとも一回以上、前記評価関数Jの最小化問題を再計算する
ことが好ましい。
In the present invention,
In solving the minimization problem of the evaluation function J under constraint conditions,
The constraint equation includes a vertical trajectory and a moment trajectory around the center of gravity of the mobile robot.
The trajectory generation step includes
In the prediction interval, a process of temporarily setting the center of gravity vertical trajectory and the center of gravity moment trajectory of the mobile robot once;
After solving the minimization problem of the evaluation function J under the constraint condition, the center of gravity vertical trajectory and the center of gravity moment trajectory are corrected so that the motion of the mobile robot is stabilized within the prediction interval. And
Preferably, the minimization problem of the evaluation function J is recalculated at least once using the corrected center-of-gravity vertical trajectory and the center-of-gravity moment trajectory.

本発明では、
前記移動手段ごとに重みが設定されており、
前記評価関数Jにおいて、接触力および接触力の微分値にそれぞれ重みを乗算しておく
ことが好ましい。
In the present invention,
A weight is set for each moving means,
In the evaluation function J, it is preferable to multiply the contact force and the differential value of the contact force by weights.

本発明では、
前記軌道生成工程において予測区間内で軌道を求め、
この予測区間の最初の一点のデータを現在の入力値として移動ロボットを駆動させ、
予測区間を微小時間だけ進めて、前記軌道生成工程を繰り返す
ことが好ましい。
In the present invention,
In the trajectory generation step, the trajectory is determined within the prediction interval,
The mobile robot is driven using the data of the first point in this prediction interval as the current input value,
It is preferable to repeat the trajectory generation step by advancing the prediction interval by a minute time.

本発明の移動ロボットは、
二以上の移動手段を交互に接地しながら移動する移動ロボットであって、
前記移動手段を接地する接触点の位置と接地するときの前記移動手段の姿勢とを時系列のデータとした接触点計画を設定する接触点計画設定部と、
前記接触点計画設定部で設定したように前記移動手段を接触点に接地しながら移動するための軌道を生成する軌道生成部と、を備え、
前記軌道生成部は、
前記移動手段を接地するときの接触力の微分値を入力とする予測モデルを構築して、この予測モデルによって所定時間幅の予測区間における移動ロボットの状態変化を表わし、
前記予測区間において、所定の評価基準を用いて接触力の微分値の時系列データを求め、
この求まった接触力の微分値の時系列データと前記予測モデルとから、移動ロボットの重心軌道を得るものであり、
前記評価基準には、
各接触点に対応して設定された重みに基づいて、各接触点に接触力を配分するという基準が含まれる
ことを特徴とする。
The mobile robot of the present invention is
A mobile robot that moves while grounding two or more moving means alternately,
A contact point plan setting unit for setting a contact point plan with time-series data of the position of the contact point for grounding the moving means and the posture of the moving means for grounding;
A trajectory generator for generating a trajectory for moving while moving the moving means to the contact point as set in the contact point plan setting unit,
The trajectory generator is
By constructing a prediction model that receives as input a differential value of the contact force when the moving means is grounded, the prediction model represents a change in the state of the mobile robot in a prediction section of a predetermined time width,
In the prediction section, using a predetermined evaluation criterion, to obtain time series data of the differential value of the contact force,
From the time series data of the differential value of the obtained contact force and the prediction model, the center of gravity trajectory of the mobile robot is obtained.
The evaluation criteria include
Based on the weight set corresponding to each contact point, a criterion for allocating contact force to each contact point is included.

本発明によれば、設定された接触点の計画に基づいて移動ロボットが自動的に安定な重心軌道を生成して自律的に移動できる。このとき、接触点の切替(接触状態の遷移)に伴う力の変化が滑らかになり、移動ロボットの安定かつ滑らかな移動が実現される。   According to the present invention, the mobile robot can automatically generate a stable center-of-gravity trajectory and move autonomously based on the set plan of contact points. At this time, the force change accompanying the switching of the contact point (transition of the contact state) becomes smooth, and a stable and smooth movement of the mobile robot is realized.

ロボットの動作の一例を示す図。The figure which shows an example of operation | movement of a robot. 移動ロボットの機械構成の一例を示す図。The figure which shows an example of the machine structure of a mobile robot. 移動ロボットの機能ブロック図。The functional block diagram of a mobile robot. 6軸力を示す図。The figure which shows 6 axial force. コントローラの機能ブロック図。Functional block diagram of the controller. 接触点計画の概要の一例を示す図。The figure which shows an example of the outline | summary of a contact point plan. 接触点計画を示す図。The figure which shows a contact point plan. 予測区間の例を示す図。The figure which shows the example of a prediction area. 予測区間での動きを表わした図。The figure showing the movement in a prediction area. 予測区間のシフトを説明するための図。The figure for demonstrating the shift of a prediction area. 予測に用いる移動ロボットのモデルを示す図。The figure which shows the model of the mobile robot used for prediction. 予測区間の離散化を説明するための図。The figure for demonstrating the discretization of a prediction area. 接触点の座標系(上添え字l(エル)がついている)と、接触多角形(接触点の支持多角形)と、を示す図。The figure which shows the coordinate system (with the superscript l (el)) of a contact point, and a contact polygon (support polygon of a contact point). 接触点が不安定化する場合を例示した図。The figure which illustrated the case where a contact point became unstable. 移動ロボットの移動制御方法の全体フローを示す図。The figure which shows the whole flow of the movement control method of a mobile robot. 軌道生成工程の手順を説明するための詳細なフローチャート。The detailed flowchart for demonstrating the procedure of a track | orbit production | generation process. 軌道生成工程の手順を説明するための詳細なフローチャート。The detailed flowchart for demonstrating the procedure of a track | orbit production | generation process. 軌道生成工程の手順を説明するための詳細なフローチャート。The detailed flowchart for demonstrating the procedure of a track | orbit production | generation process. 移動ロボットの多質点モデルを示す図。The figure which shows the multi-mass point model of a mobile robot. 移動ロボットの多質点モデルを示す図。The figure which shows the multi-mass point model of a mobile robot. 手先、足先の軌道を補間した様子を示す図。The figure which shows a mode that the trajectory of a hand tip and a foot tip was interpolated. 二足歩行の場合の実験例を示す図。The figure which shows the experimental example in the case of bipedal walking. 図22は、実行結果のスナップショットを示す図。FIG. 22 is a diagram showing a snapshot of the execution result. 二足歩行実行時の重心位置、反力中心の位置、および、接触点の鉛直方向荷重、を示したグラフ。The graph which showed the gravity center position at the time of bipedal walk execution, the position of reaction force center, and the vertical load of a contact point. 二足歩行実行時の重心位置、反力中心の位置、および、接触点の鉛直方向荷重、を示したグラフ。The graph which showed the gravity center position at the time of bipedal walk execution, the position of reaction force center, and the vertical load of a contact point. 二足歩行実行時の重心位置、反力中心の位置、および、接触点の鉛直方向荷重、を示したグラフ。The graph which showed the gravity center position at the time of bipedal walk execution, the position of reaction force center, and the vertical load of a contact point. 4足歩行の場合の実験例を示す図。The figure which shows the experimental example in the case of four-legged walking. 実行結果のスナップショットである。This is a snapshot of the execution result. 4足歩行実行時の重心位置、反力中心の位置、および、接触点の鉛直方向荷重、を示したグラフ。The graph which showed the gravity center position at the time of quadruped walking execution, the position of reaction force center, and the vertical direction load of a contact point. 4足歩行実行時の重心位置、反力中心の位置、および、接触点の鉛直方向荷重、を示したグラフ。The graph which showed the gravity center position at the time of quadruped walking execution, the position of reaction force center, and the vertical direction load of a contact point. 4足歩行実行時の重心位置、反力中心の位置、および、接触点の鉛直方向荷重、を示したグラフ。The graph which showed the gravity center position at the time of quadruped walking execution, the position of reaction force center, and the vertical direction load of a contact point. 4足歩行で手足の着き方をランダムにした場合の実験例を示す図。The figure which shows the example of an experiment at the time of making the way of limbs random by walking on 4 legs. 実行結果のスナップショットである。This is a snapshot of the execution result. ランダム4足歩行実行時の重心位置、反力中心の位置、および、接触点の鉛直方向荷重、を示したグラフ。The graph which showed the gravity center position at the time of random quadruped walking execution, the position of reaction force center, and the vertical direction load of a contact point. ランダム4足歩行実行時の重心位置、反力中心の位置、および、接触点の鉛直方向荷重、を示したグラフ。The graph which showed the gravity center position at the time of random quadruped walking execution, the position of reaction force center, and the vertical direction load of a contact point. ランダム4足歩行実行時の重心位置、反力中心の位置、および、接触点の鉛直方向荷重、を示したグラフ。The graph which showed the gravity center position at the time of random quadruped walking execution, the position of reaction force center, and the vertical direction load of a contact point. 変形例を示す図。The figure which shows a modification.

本発明の実施形態を図示するとともに図中の各要素に付した符号を参照して説明する。
(第1実施形態)
本実施形態は移動ロボットの移動制御方法に特徴があり、具体的には、移動ロボットの移動動作を制御するための軌道生成に特徴を有するのであるが、具体的な制御(軌道生成)を説明する前に、制御対象となる移動ロボットのハードウェア構成について予め説明しておく。
An embodiment of the present invention will be illustrated and described with reference to reference numerals attached to elements in the drawing.
(First embodiment)
This embodiment has a feature in the movement control method of the mobile robot. Specifically, it has a feature in the generation of a trajectory for controlling the movement operation of the mobile robot. Specific control (trajectory generation) will be described. Prior to this, the hardware configuration of the mobile robot to be controlled will be described in advance.

図2は、移動ロボットの機械構成の一例を示した図である。
移動ロボット100は、股関節が3軸、膝関節が1軸、足首関節が2軸。さらに、肩関節が3軸(肩ピッチ、肩ロール、肩ヨー)、肘関節が1軸(肘ピッチ)、および、手首関節が3軸(手首ヨー、手首ピッチ、手首ロール)、で夫々構成されている。(移動ロボットの機械構成はこれに限定されないが、手(腕)の自由度は6以上、足(脚)の自由度も6以上は必要である。)
移動ロボット100は、各関節にエンコーダ付きモータ1、2、・・・、28を有している。各関節のモータ(関節駆動手段)1a、2a、・・・、28a(図3)は、各関節の関節角度θ1、θ2、・・・、θ28を調整できる。一方、各関節のエンコーダ(関節角度検出手段)1b、2b、・・・、28bは、各関節の関節角度θ1、θ2・・・、θ28を計測することができる。
FIG. 2 is a diagram illustrating an example of the mechanical configuration of the mobile robot.
The mobile robot 100 has three axes for the hip joint, one axis for the knee joint, and two axes for the ankle joint. Furthermore, the shoulder joint is composed of 3 axes (shoulder pitch, shoulder roll, shoulder yaw), the elbow joint is composed of 1 axis (elbow pitch), and the wrist joint is composed of 3 axes (wrist yaw, wrist pitch, wrist roll). ing. (The mechanical configuration of the mobile robot is not limited to this, but the degree of freedom of the hand (arm) is 6 or more and the degree of freedom of the foot (leg) is 6 or more.)
The mobile robot 100 has motors 1, 2,..., 28 with encoders at each joint. Motors (joint driving means) 1a, 2a,..., 28a (FIG. 3) of each joint can adjust the joint angles θ1, θ2,. On the other hand, encoders (joint angle detection means) 1b, 2b,..., 28b of each joint can measure joint angles θ1, θ2,.

また、移動ロボット100は、足先部(足平部)および手先部(手の平部)に接触力センサ25を有している。ここで接触力とは6軸力であり、図4に示すように、x軸、y軸およびz軸方向の力fの組(f、f、fと、x軸回り、y軸回りおよびz軸回りの力τの組(τ、τ、τと、である。In addition, the mobile robot 100 has a contact force sensor 25 at a foot tip (foot portion) and a hand tip (palm portion). Here, the contact force is a six-axis force. As shown in FIG. 4, a set of forces f in the x-axis, y-axis, and z-axis directions (f x , f y , f z ) T , A set of forces τ around the y-axis and the z-axis (τ x , τ y , τ z ) T.

この移動ロボットは、移動時に、右足、左足、右手および左手のうちの一つ以上を床、壁、あるいはテーブルなどに接触させながら移動する。そこで、本明細書の以下の説明では、右足、左足、右手および左手を接触点候補と称することがある。
また、手先、足先というのは、すなわち、移動手段のことである。
The mobile robot moves while contacting one or more of the right foot, left foot, right hand, and left hand with the floor, wall, table, or the like. Therefore, in the following description of the present specification, the right foot, the left foot, the right hand, and the left hand may be referred to as contact point candidates.
In addition, the hand and foot are the moving means.

図3は、移動ロボット100の機能ブロック図である。移動ロボット100は、各関節のモータ1a〜28a及びエンコーダ1b〜28bと、接触力センサ25と、コントローラ210と、を備えている。   FIG. 3 is a functional block diagram of the mobile robot 100. The mobile robot 100 includes motors 1 a to 28 a and encoders 1 b to 28 b of each joint, a contact force sensor 25, and a controller 210.

コントローラ210には、各関節のエンコーダ1b〜28b及び接触力センサ25から、センサ検出値が入力される。また、コントローラ210は、各関節のモータ1a〜28aに対して駆動信号を出力する。   Sensor detection values are input to the controller 210 from the encoders 1b to 28b and the contact force sensor 25 of each joint. Moreover, the controller 210 outputs a drive signal to the motors 1a to 28a of each joint.

コントローラ210は、主要なハードウェア構成として、制御処理、演算処理等を行うCPU(Central Processing Unit)210aと、CPU210aによって実行される制御プログラム、演算プログラム等が記憶されたROM(Read Only Memory)210bと、処理データ等を一時的に記憶するRAM(Random Access Memory)210cと、を有するマイクロコンピュータにより構成されている。また、これらCPU210a、ROM210b、及びRAM210cは、データバス210dによって相互に接続されている。必要なプログラムを不揮発性記録媒体に記録しておき、必要に応じてインストールするようにしてもよい。   The controller 210 includes, as main hardware configurations, a CPU (Central Processing Unit) 210a that performs control processing, arithmetic processing, and the like, and a ROM (Read Only Memory) 210b that stores control programs, arithmetic programs, and the like executed by the CPU 210a. And a RAM (Random Access Memory) 210c that temporarily stores processing data and the like. The CPU 210a, ROM 210b, and RAM 210c are connected to each other by a data bus 210d. Necessary programs may be recorded on a non-volatile recording medium and installed as necessary.

コントローラ210の機能ブロック図を示すと図5のようになる。
コントローラ210は、ユーザから指令される接触点計画を格納する接触点計画設定部221と、接触点計画に従った動作を安定に実行できる軌道を生成する軌道生成部222と、生成された軌道に従って移動ロボット100の全身動作を実行させる動作制御部223と、を有する。これら機能部の具体的な処理動作については後述する。
A functional block diagram of the controller 210 is shown in FIG.
The controller 210 includes a contact point plan setting unit 221 that stores a contact point plan instructed by a user, a trajectory generation unit 222 that generates a trajectory that can stably execute an operation according to the contact point plan, and a generated trajectory. And an operation control unit 223 that executes the whole body operation of the mobile robot 100. Specific processing operations of these functional units will be described later.

移動ロボットに多点接触移動を安定して行わせるためには、時々刻々と移り変わっていく接触点に応じて接触力を滑らかに適切に分配し、なおかつ、安定な重心軌道を生成する技術が必要である。このために本発明者はモデル予測制御を用いることを試みた。最初にモデル予測制御の概要を説明しておく。   In order for a mobile robot to perform multi-point contact movements stably, technology is needed to distribute contact force smoothly and appropriately according to contact points that change from moment to moment, and to generate a stable center of gravity trajectory. It is. For this purpose, the present inventor tried to use model predictive control. First, an outline of model predictive control will be described.

(概要説明)
例えば図1に図示したような移動動作をロボットに行わせたいとする。ここでは、2本の腕と2本の脚とを有する人型ロボットに、テーブルの奥側にあるボトルを掴ませるという一連の動作を想定する。この場合、ユーザは、この一連動作(タスク)を実行できるような接触点計画を作成する。つまり、図6のように、手先および足先を、どの順番で、どこに、どのように、着くか、という計画を作成する。図6においては、床、壁およびテーブルにおいて足先および手先を接触させる箇所にマークを付けている。
(Overview)
For example, assume that the robot wants to perform a moving operation as shown in FIG. Here, a series of operations are assumed in which a humanoid robot having two arms and two legs holds a bottle on the back side of the table. In this case, the user creates a contact point plan that can execute the series of operations (tasks). That is, as shown in FIG. 6, a plan is created for how and where to get the hands and feet. In FIG. 6, the floor, the wall, and the table are marked at locations where the feet and the hands are brought into contact.

この接触点計画は、具体的には図7のようになる。
接触点計画は、左手(LH)、右手(RH)、左足(LF)および右足(RF)に関し、どの順番で、どこに、どのように、着いていくか、という時系列のデータである。
図1、図6および図7の対応関係を簡単に説明する。
当初(t0)左足1本だけで立ち、遊脚である右足を前に振り出し、そして、右足を着地させる(t1)。この動きの計画を移動ロボットに指令するには、左足が最初に着地している床上の接触点の座標PLF1、そのときの左足の姿勢rLF1、そして、右足が着地する床上の接触点の座標PRF1、そのときの右足の姿勢rRF1、を指定することが必要である。ここで、接触点の座標は、空間座標としてP=(P、P、P)の組で表わされる。また、姿勢というのは、接触点に着地したときの足の裏面の向きであり、例えばオイラー角の組としてr=(r、r、r)として表わされる。(すなわち、r、rおよびrは、ロール、ピッチおよびヨー角をそれぞれ表わす。)足に関する接触点の座標およびそのときの姿勢を指令する形式は今後の説明でも同様なので、以後は適宜説明を省略する。
This contact point plan is specifically as shown in FIG.
The contact point plan is time-series data regarding which order, where, and how to arrive for the left hand (LH), right hand (RH), left foot (LF), and right foot (RF).
The correspondence between FIGS. 1, 6 and 7 will be briefly described.
Initially (t0) Stand with only one left foot, swing out the right foot, which is a free leg, and land the right foot (t1). In order to instruct the mobile robot to make this motion plan, the coordinate PLF1 of the contact point on the floor where the left foot first lands, the posture rLF1 of the left foot at that time, and the coordinate PRF1 of the contact point on the floor where the right foot lands It is necessary to specify the posture rRF1 of the right foot at that time. Here, the coordinates of the contact point are represented as a set of P = (P x , P y , P z ) as spatial coordinates. Further, the posture is the direction of the back surface of the foot when landing on the contact point, and is represented as, for example, r = (r x , r y , r z ) as a set of Euler angles. (In other words, r x , r y, and r z represent roll, pitch, and yaw angle, respectively.) Since the format for instructing the coordinates of the contact point on the foot and the posture at that time is the same in the following description, it will be appropriately determined thereafter. Description is omitted.

両足で立った後、左足を振り出し(t)、左足を前方に着地する(t)。その間に、左手を壁に着くようにする(t)。ここで、左手を着く壁上の接触点の座標PLH1、および、そのときの左手の姿勢rLH1を指定する。この接触点の座標は空間座標としてP=(P、P、P)の組で表わされ、姿勢は接触点に着いたときの手の平の向きとしてオイラー角の組としてr=(rx、ry、rz)として表わされる。After standing with both feet, swing out the left foot (t 2 ) and land the left foot forward (t 4 ). In the meantime, the left hand is put on the wall (t 3 ). Here, the coordinates P LH1 of the contact point on the wall that wears the left hand and the posture r LH1 of the left hand at that time are designated. The coordinates of the contact point are expressed as a set of P = (P x , P y , P z ) as spatial coordinates, and the posture is set as a set of Euler angles as a set of Euler angles when reaching the contact point. , Ry, rz).

これ以降の接触点計画は図1、図6および図7を対比して頂ければ自明と思われるので省略する。このようにしてユーザにより接触点計画が時系列のデータとして作成される。   Subsequent contact point plans will be omitted if they can be understood by comparing FIGS. 1, 6 and 7. FIG. In this way, the contact point plan is created as time-series data by the user.

このように作成された接触点計画が移動ロボットに入力されると、移動ロボットはこの接触点計画を実現するように軌道を生成して自律的に移動する。このとき、軌道生成にあたって、移動ロボットはモデル予測制御を行う。すなわち、ある時間幅を持った予測区間内で移動ロボットが安定移動できる軌道を生成し、予測区間を微小時間(Δt)ずつシフトさせながら安定動作を行える軌道を順次更新していくようにする。例えば、図8に予測区間の例を示す。現在から所定時間(例えば1.6秒)先の未来までを予測区間として設定する。   When the contact point plan thus created is input to the mobile robot, the mobile robot generates a trajectory and moves autonomously so as to realize the contact point plan. At this time, the mobile robot performs model predictive control in generating the trajectory. That is, a trajectory on which the mobile robot can stably move within a prediction interval having a certain time width is generated, and a trajectory that can perform a stable operation is sequentially updated while shifting the prediction interval by a minute time (Δt). For example, FIG. 8 shows an example of a prediction interval. The prediction interval is set from the present to the future ahead of a predetermined time (for example, 1.6 seconds).

そして、この予測区間の間で発散しないように安定な軌道を生成する。この予測区間での動きをイメージしたものが図9である。このように、ある時間幅を持つ予測区間で安定な軌道を生成した上で、最初の一点だけを現在の入力値として使用する。   A stable trajectory is generated so as not to diverge between the prediction intervals. FIG. 9 is an image of the motion in the prediction interval. In this way, after generating a stable trajectory in a prediction interval having a certain time width, only the first point is used as the current input value.

次の軌道更新周期(Δt秒後)には予測区間をシフトさせ、新たな予測区間において同様に安定な軌道を生成する(図10参照)。   In the next orbit update period (after Δt seconds), the prediction interval is shifted, and a stable orbit is similarly generated in the new prediction interval (see FIG. 10).

現在だけ、あるいは、現在から次ぎの制御周期(Δt秒)まで、だけを見るのではなく、上記のように、ある程度の未来までを予測区間とし、この予測区間内で発散しない軌道を生成するようにする。これを繰り返すことで移動ロボットは安定に移動することができる。   Instead of looking only at the present or only from the present to the next control period (Δt seconds), as described above, a certain future is assumed to be a prediction interval, and a trajectory that does not diverge within this prediction interval is generated. To. By repeating this, the mobile robot can move stably.

さて、ここで問題なのは、ある時間幅を持った予測区間のなかで時々刻々と移り変わっていく接触点に応じて接触力を滑らかに適切に分配し、なおかつ、安定な重心軌道を生成するにはどのようにすればよいか、ということである。   Now, the problem here is to generate a stable center of gravity trajectory that distributes the contact force smoothly and appropriately according to the contact points that change from moment to moment in the prediction interval with a certain time width. What should I do?

本発明者らは、ある予測区間における安定軌道の生成問題を凸二次計画問題(Quadratic Programming:QP)に帰着させるという着想を得た。具体的には、各接触点における接触力の二乗和と、前記6軸力の微分値の二乗和と、を含む評価関数Jを最小化するという問題を解くことで、多点接触移動の安定軌道を求める。   The present inventors have come up with the idea of reducing the problem of generating stable trajectories in a certain prediction interval to a quadratic programming problem (Quadratic Programming: QP). Specifically, by solving the problem of minimizing the evaluation function J including the sum of squares of the contact force at each contact point and the square sum of the differential values of the six-axis forces, the multipoint contact movement can be stabilized. Find the trajectory.

そこで、次に、この評価関数Jの導出およびその解法(凸二次計画問題への帰着)を説明する。この解法により、ある予測区間内で安定な多点接触移動を実現するための、重心位置、重心速度、接触力および接触力の微分値の時系列データが得られることを示す。   Therefore, the derivation of the evaluation function J and its solution (reduction to the convex quadratic programming problem) will be described next. This solution shows that time series data of the center of gravity position, the center of gravity speed, the contact force, and the differential value of the contact force can be obtained in order to realize stable multipoint contact movement within a certain prediction section.

予測に用いる移動ロボットのモデルを改めて図11に示す。移動ロボット全体の慣性を一つの重心Gで表わす。各接触点には6軸力を定義する。   A model of the mobile robot used for the prediction is shown again in FIG. The inertia of the entire mobile robot is represented by one center of gravity G. A 6-axis force is defined for each contact point.

この時、重心Gの並進運動量をP、重心回りの回転運動量(角運動量)をL、接触点の数をnとすると、運動方程式は次のように書ける。   At this time, if the translational momentum of the center of gravity G is P, the rotational momentum (angular momentum) around the center of gravity is L, and the number of contact points is n, the equation of motion can be written as follows.

Figure 2015087504
Figure 2015087504

添え字iは接触点のインデックスを表す。例えば接触点の候補が左手、右手、左足、右足の4点であれば、n=4(左手:LH=1、右手:RH=2、左足:LF=3、右足:RF=4)とすればよい。ただし、床や壁に接触していない接触点候補については接触力を0にするように拘束条件を設定しておく。例えば図11の例であれば次のようにする。   The subscript i represents the index of the contact point. For example, if the contact point candidates are four points of the left hand, right hand, left foot, and right foot, n = 4 (left hand: LH = 1, right hand: RH = 2, left foot: LF = 3, right foot: RF = 4). That's fine. However, for the contact point candidates that are not in contact with the floor or wall, the constraint condition is set so that the contact force is zero. For example, in the example of FIG.

Figure 2015087504
Figure 2015087504

(1)式の第1式、第2式を微分すると次の式が得られる。((1)式はベクトルで表現しているが、これをx、y、zに分解した上で、上から順に第1式、第2式・・・第6式と称する。)   Differentiating the first expression and the second expression of the expression (1) yields the following expression. (Equation (1) is expressed as a vector, but after decomposing it into x, y, and z, they are called the first equation, the second equation,...

Figure 2015087504
Figure 2015087504

本実施形態では、この2式をシステムとして用いる。そして、(1)式の第3から第5式を拘束条件として定式化する。   In this embodiment, these two types are used as a system. Then, Formulas 3 to 5 of Formula (1) are formulated as constraint conditions.

Figure 2015087504
Figure 2015087504

さらに、予測区間内を図12のように、N個の区間に分割し、(3)式、(4)式を離散化する。(3)式を離散化すると次のようになる。   Further, the prediction interval is divided into N intervals as shown in FIG. 12, and equations (3) and (4) are discretized. The equation (3) is discretized as follows.

Figure 2015087504
Figure 2015087504

また、サンプリング点で常に(4)式の拘束が成り立つとすると、(4)式は次のように離散化される。   Further, if the constraint of equation (4) always holds at the sampling point, equation (4) is discretized as follows.

Figure 2015087504
Figure 2015087504

ここで、パラメータを次ぎのように置く。   Here, the parameters are set as follows.

Figure 2015087504
Figure 2015087504

θは、6軸力としての接触力を並べたベクトルである。そして、xは、重心Gのx座標、重心Gのx軸方向速度、重心Gのy座標、重心Gのy軸方向速度、および、各接触点における接触力(6軸力)、を並べたベクトルである。このxを、状態変数xと称する。さらに、uは、接触力(6軸力)の微分値を並べたベクトルである。θ i is a vector in which contact forces as six-axis forces are arranged. X is an x coordinate of the center of gravity G, an x-axis direction speed of the center of gravity G, a y-coordinate of the center of gravity G, a y-axis direction speed of the center of gravity G, and a contact force (six-axis force) at each contact point. Is a vector. This x is referred to as a state variable x. Furthermore, u is a vector in which the differential values of the contact force (six-axis force) are arranged.

このようにパラメータを設定すると、(5)式を次ぎのように記述することができる。   When parameters are set in this way, equation (5) can be described as follows.

Figure 2015087504
Figure 2015087504

この(8)式は、(j+1)のときの状態変数xを、その一つ前の状態で記述できることを表わしている。(8)式を用いて予測区間内の状態変数xを順に計算していくと次のようになる。   This equation (8) indicates that the state variable x at the time of (j + 1) can be described in the previous state. When the state variable x in the prediction interval is calculated in order using the equation (8), it is as follows.

Figure 2015087504
Figure 2015087504

したがって、時系列的に求められる状態変数xを並べて大文字のXで表わすと、状態変数の時系列データXを次のように表わすことができる。   Therefore, when the state variables x obtained in time series are arranged and represented by capital letters X, the time series data X of the state variables can be represented as follows.

Figure 2015087504
Figure 2015087504

この(10)式は、接触力の微分値(U[k])を入力として、ある予測区間内における移動ロボットの状態遷移を表わす予測モデルとなる。
さて、ここで、本発明者らは、予測区間内において安定な軌道を生成するために次ぎのような評価関数Jを導入した。
This equation (10) is a prediction model that represents the state transition of the mobile robot within a certain prediction section with the contact force differential value (U [k]) as an input.
Now, the present inventors have introduced the following evaluation function J in order to generate a stable trajectory within the prediction interval.

Figure 2015087504
Figure 2015087504

なお、Qi、Riは、適宜設定した重みである。重みの意味や接触点候補にどのように重みを配分するかなどの考え方については後ほど詳しく説明する。ここでは、例えば、接触点候補すべてに力を均等配分すると考えて、Qiはすべて1とし、Riはすべて1×10−6とするようなことをイメージして頂ければよい。Qi and Ri are weights set as appropriate. The concept of the meaning of the weight and how to distribute the weight to the contact point candidates will be described in detail later. Here, for example, assuming that the force is equally distributed to all the contact point candidates, it is only necessary to imagine that Qi is all 1 and Ri is 1 × 10 −6 .

ここで、θは、6軸力としての接触力の成分を並べたベクトルであった。θ(・)は、接触力成分の微分値を並べたベクトルである。(後ろにカッコで付けたドットは微分を表わすと解釈されたい。)
したがって、(11)式は、「予測区間内で、接触力(6軸力)と接触力(6軸力)微分値との2乗和を最小化する」という意味の式である。(11)式の第1項は、接触力(6軸力)の2乗和を最小化することを意味する。
この第1項には、次の作用が含まれている。
(1)各接触点への接触力を均等分配すること。これにより、重心をできる限り安定な位置に動かすという効果がある。
(2)不必要な内力を打ち消すこと。
(3)接触点の接地安定性を高めること。すなわち、接触面内の反力中心点を接触面の中心に設定するという効果がある。
Here, θ i is a vector in which components of contact force as 6-axis force are arranged. θ i (·) is a vector in which the differential values of the contact force components are arranged. (The dot in parentheses after the interpretation should be interpreted as representing differentiation.)
Therefore, the expression (11) is an expression that means “minimize the sum of squares of the contact force (6-axis force) and the contact force (6-axis force) differential value within the prediction interval”. The first term in equation (11) means minimizing the sum of squares of the contact force (six-axis force).
This first term includes the following actions.
(1) Distribute the contact force to each contact point evenly. This has the effect of moving the center of gravity to the most stable position possible.
(2) To cancel unnecessary internal forces.
(3) To improve the grounding stability of the contact point. That is, there is an effect that the reaction force center point in the contact surface is set to the center of the contact surface.

また、(11)式の第2項は、接触力(6軸力)微分値(6軸力の時間変化率)の2乗和を最小化することを意味する。
この第2項には次の作用が含まれている。
(1)重心の発散を抑制すること。
(2)滑らかに接触力を切り替えていくこと。
Further, the second term of the equation (11) means that the sum of squares of the contact force (6-axis force) differential value (time change rate of 6-axis force) is minimized.
This second term includes the following actions.
(1) To suppress the divergence of the center of gravity.
(2) Switching contact force smoothly.

これらをQ、Rという重みによって適切に足し合わせることによって、この評価関数Jを最小化するということは、
「高い接触安定性、滑らかな接触力遷移、最低限の内力、といった条件を満たしながら、安定な重心軌道と各接触点の接触力とを出力する」
ということを意味することとなる。
Minimizing this evaluation function J by adding these appropriately by the weights of Q and R means that
"Stable center of gravity trajectory and contact force at each contact point are output while satisfying conditions such as high contact stability, smooth contact force transition, and minimum internal force"
It means that.

(11)式を離散化すると次の式が得られる。   When the equation (11) is discretized, the following equation is obtained.

Figure 2015087504
Figure 2015087504

ここで、接触力(6軸力)については状態変数xに含まれているので、(7)式を変形すると次のようになる。   Here, since the contact force (six-axis force) is included in the state variable x, the equation (7) is modified as follows.

Figure 2015087504
Figure 2015087504

したがって、(12)式の一つめのシグマの計算は次ぎのようになる。   Therefore, the calculation of the first sigma in equation (12) is as follows.

Figure 2015087504
Figure 2015087504

したがって、(12)式は次のようになる。   Therefore, equation (12) is as follows.

Figure 2015087504
Figure 2015087504

さらに、(10)式を用いることで評価関数Jを次のように定式化することができる。   Furthermore, the evaluation function J can be formulated as follows by using the equation (10).

Figure 2015087504
Figure 2015087504

次に拘束条件について考える。
拘束条件としては、
(2)式のように非接触の接触点候補に対して6軸力が0という拘束、
(6)式の鉛直方向の力の釣り合いの拘束、および、
(6)式のxy軸回りのモーメントの釣り合いの拘束、
が予測区間の全サンプリング点に渡って成り立つ必要がある。
ここで、例えば、あるサンプリング点jにおいて、i番目とi+2番目の接触点が非接触であったとする。この時、(2)式および(6)式は次のように記述できる。
Next, let us consider the constraint conditions.
As a constraint condition,
The constraint that the 6-axis force is 0 with respect to the non-contact point candidate as shown in equation (2),
(6) vertical force balance constraint of equation, and
Constraint on the balance of moments about the xy axis in equation (6),
Must hold over all sampling points in the prediction interval.
Here, for example, it is assumed that the i-th and i + 2th contact points are non-contact at a certain sampling point j. At this time, the equations (2) and (6) can be described as follows.

Figure 2015087504
Figure 2015087504

ここで、係数行列C[j]、d[j]の成分はサンプリング点によって異なるが、接触点候補の接触/非接触といった情報や接触点位置は既に与えられている。   Here, although the components of the coefficient matrices C [j] and d [j] differ depending on the sampling points, information such as contact / non-contact of contact point candidates and contact point positions are already given.

重心鉛直軌道(Gz[j])や重心回りモーメント(Lx(・)[j]、Ly(・)[j])については詳しくは後述するが、ここでは、差し当って次ぎのように理解されたい。
もしも、重心鉛直軌道や重心回りモーメントが定まっていない場合には仮の値を設定して利用する。例えば、一つ前の制御サイクルで用いた重心鉛直軌道、重心回りモーメントを仮の値として利用してもよい。もしくは、重心鉛直軌道、重心回りモーメントは予測区間内においては現時点の状態から動かない、と仮設定してもよい。そして、仮の値で一度計算したあとで、得られた結果を用いて重心鉛直軌道、重心回りモーメントを更新し、求解を繰り返す。
このようにして、重心鉛直軌道や重心回りモーメントについても既知の値として計算を進行させ、ずれについては更新計算のなかで修正するとする。
The center-of-gravity vertical trajectory (Gz [j]) and center-of-gravity moments (Lx (•) [j], Ly (•) [j]) will be described in detail later, but here they are understood as follows. I want.
If the center of gravity vertical trajectory or center of gravity moment is not determined, a temporary value is set and used. For example, the center-of-gravity vertical trajectory and center-of-gravity moment used in the previous control cycle may be used as temporary values. Alternatively, the center-of-gravity vertical trajectory and the center-of-gravity moment may be provisionally set so as not to move from the current state within the prediction interval. Then, after calculating once with the provisional value, the center of gravity vertical trajectory and the center of gravity moment are updated using the obtained results, and the solution is repeated.
In this way, it is assumed that the calculation of the center of gravity vertical trajectory and the moment around the center of gravity proceeds as a known value, and the deviation is corrected in the update calculation.

さて、(17)式が未来の全サンプリング点で成り立つためには、次式が成り立つ必要がある。   Now, in order for Equation (17) to hold at all future sampling points, the following equation needs to hold.

Figure 2015087504
Figure 2015087504

この式に(10)式を代入する。   The equation (10) is substituted into this equation.

Figure 2015087504
Figure 2015087504

最後に、接触点が安定して接触を保つ為の条件を導入する。
図13に接触点の座標系(上添え字l(エル)がついている)と、接触多角形(接触点の支持多角形)と、を示した。接触点の座標系は、接触点を原点とし、かつ、接触面の姿勢rに合わせて定義されているとする。
ここで、接触点の座標系で定義される接触力(6軸力)θ を次のように表わす。
θ =[fix 、fiy 、fiz 、τix 、τiy 、τiz
すると、接触力(6軸力)θ は、接触面の姿勢行列Φi=rot(r)を用いて次ぎのように表現できる。なお、rotは、オイラー角を姿勢行列に変換する関数である。
Finally, conditions are introduced to keep the contact point stable and in contact.
FIG. 13 shows the coordinate system of the contact point (with the superscript l (el)) and the contact polygon (support polygon of the contact point). Coordinate system of the touch point, the contact point as the origin, and a are defined in accordance with the orientation r i of the contact surface.
Here, the contact force (six-axis force) θ i l defined in the coordinate system of the contact point is expressed as follows.
θ i l = [f ix l , f iy l, f iz l, τ ix l, τ iy l, τ iz l] T
Then, the contact force (six-axis force) θ i l can be expressed as follows using the posture matrix Φi = rot (r i ) of the contact surface. Note that rot is a function that converts Euler angles into a posture matrix.

Figure 2015087504
Figure 2015087504

接触点が安定して接触を保つ為には、
(1)接触点が離れないこと、
(2)接触点が滑らないこと、
(3)接触点が剥がれないこと、
という3つの条件を満たす必要がある。
上記3つの要件が理解しやすいように、図14に、接触点が不安定化する場合を例示した。
In order for the contact point to maintain stable contact,
(1) The contact point must not be separated,
(2) The contact point does not slip,
(3) The contact point does not peel off,
It is necessary to satisfy these three conditions.
To facilitate understanding of the above three requirements, FIG. 14 illustrates a case where the contact point is unstable.

(1)接触点が離れない為には、接触面の鉛直力が正であれば良い。
即ち、次式を満たす必要がある。
(1) In order not to leave the contact point, the vertical force on the contact surface may be positive.
That is, it is necessary to satisfy the following formula.

Figure 2015087504
Figure 2015087504

(2)接触点が滑らない為には、接触面に平行な2軸力が摩擦力以下であれば良い。
即ち次式がその条件である。
ただし接触面の摩擦係数をμとする。
(2) To prevent the contact point from slipping, the biaxial force parallel to the contact surface may be equal to or less than the friction force.
That is, the following equation is the condition.
However, the friction coefficient of the contact surface is μ i .

Figure 2015087504
Figure 2015087504

(3)接触点が剥がれない為の条件は、接触多角形のh個の頂点座標
(xi1 , yi1 ),・・・・・(xih , yih
を用いて以下のように表される。
(ただし接触多角形の頂点は反時計回りに順に与えられているとする)。
(3) The condition for the contact point not to be peeled off is that the vertex coordinates (x i1 l , y i1 l ) of the contact polygon (x ih l , y ih l )
Is expressed as follows.
(However, the vertices of the contact polygon are given in order counterclockwise).

Figure 2015087504
Figure 2015087504

以上、(21)、(22)、(23)式をまとめると次のようになる。   The equations (21), (22), and (23) can be summarized as follows.

Figure 2015087504
Figure 2015087504

(24)式に(20)式を代入し、j番目のサンプリング点としてインデックスを付け加える。   Substituting equation (20) into equation (24), an index is added as the j-th sampling point.

Figure 2015087504
Figure 2015087504

(25)式は、j番目のサンプリング点におけるi番目の接触点が安定な接触を保つ為に満たすべき条件であり、安定な多点接触動作を実現する為には、全サンプリング点の全接触点において(25)式が成り立つ必要がある。
まずj番目のサンプリング点において全接触点が(25)式を満たす為の条件は次のように書ける。
Expression (25) is a condition that must be satisfied in order for the i-th contact point at the j-th sampling point to maintain a stable contact, and in order to realize a stable multi-point contact operation, all the contacts at all sampling points are satisfied. It is necessary to hold the equation (25) at the point.
First, the condition for all the contact points to satisfy the equation (25) at the j-th sampling point can be written as follows.

Figure 2015087504
Figure 2015087504

これが全サンプリング点で成り立つ条件は次のように書ける。   The condition that this holds for all sampling points can be written as follows.

Figure 2015087504
Figure 2015087504

これに(10)式を代入する。   The formula (10) is substituted for this.

Figure 2015087504
Figure 2015087504

最終的に、(16)、(19)、(28)式により、多点接触時の安定軌道生成問題は次の凸2次計画問題に帰着される。   Finally, the stable trajectory generation problem at the time of multipoint contact is reduced to the following convex quadratic programming problem by the equations (16), (19), and (28).

Figure 2015087504
Figure 2015087504

凸2次計画問題(Quadratic Programming: QP)にまで帰着できてしまえば、凸2次計画問題(QP)自体はよく知られた最適化問題の1つであり、高速な求解が可能である。(求解するとU[k]が求まる。)QPの求解後は、重心軌道と各接触点の接触力とが次ぎのようにして計算される。   If it can be reduced to a quadratic programming problem (Quadratic Programming: QP), the convex quadratic programming problem (QP) itself is one of the well-known optimization problems and can be solved at high speed. (When the solution is obtained, U [k] is obtained.) After the solution of QP, the gravity center trajectory and the contact force of each contact point are calculated as follows.

Figure 2015087504
Figure 2015087504

このようにして、予測区間内において常に拘束条件(1)−(3)を満たし、かつ、評価関数Jを最小化するX[k+1]が求まる。
X[k+1]というのは、(7)式と(10)式とを見てわかる通り、重心のx座標、重心のx軸方向速度、重心のy座標、重心のy軸速度、および、各接触点の接触力(6軸力)の時系列データである。
In this way, X [k + 1] that satisfies the constraint conditions (1)-(3) and minimizes the evaluation function J in the prediction interval is obtained.
X [k + 1] means that the x-coordinate of the center of gravity, the x-axis direction speed of the center of gravity, the y-coordinate of the center of gravity, the y-axis speed of the center of gravity, It is time series data of contact force (6 axis force) of a contact point.

さらに、式の展開の途中で説明したように、重心の鉛直軌道(z座標)や重心回りモーメントについては更新計算のなかで修正されたものが得られている(詳しくは後述する)。すなわち、これで予測区間内で安定な移動を実現する軌道を得ることができたわけである。   Further, as explained in the middle of the development of the formula, the vertical trajectory (z coordinate) of the center of gravity and the moment around the center of gravity are corrected in the update calculation (details will be described later). That is, a trajectory that achieves stable movement within the prediction interval can be obtained.

用語が混乱しないように付言しておく。
上記の演算過程およびこの演算で求められる結果を見て分かるように、ここでいう「軌道」というのは、重心の三次元的軌道に加えて、各接触点で発生すべき接触力(6軸力)の時系列データを含めて考えると分かりやすいであろう。なお、移動ロボットを移動させるための「軌道」といえば一般的には手先、足先の軌道も含む概念であろうが、本実施形態の説明において「軌道」といった場合には、手先、足先の軌道を含んでいてもいなくても大差無い。本実施形態における安定軌道生成という観点から見ると、手先、足先の軌道は、接触点計画、重心軌道および接触力の時系列データから補間によってほぼ自動的に決定され得るものである。したがって、本実施形態の説明において「軌道」といった場合には、手先、足先の軌道を含んでいてもいなくても大差無い。
Add a word to avoid confusion.
As can be seen from the above calculation process and the result obtained by this calculation, the “trajectory” here refers to the contact force (6 axes) to be generated at each contact point in addition to the three-dimensional trajectory of the center of gravity. It is easy to understand when considering the time series data. Note that the “trajectory” for moving the mobile robot is generally a concept including the trajectory of the hand and foot, but in the description of the present embodiment, the “trajectory” refers to the hand and foot. There is no big difference whether or not the orbit is included. From the viewpoint of generating a stable trajectory in the present embodiment, the trajectory of the hand and foot can be determined almost automatically by interpolation from the time series data of the contact point plan, the center of gravity trajectory and the contact force. Therefore, in the description of the present embodiment, when “trajectory” is used, there is no great difference whether or not the trajectory of the hand and foot is included.

(移動ロボットの制御)
移動ロボットの移動制御方法を説明する。
図15は、移動ロボットの移動制御方法の全体フローである。
移動ロボットの移動制御の工程には、大きく分けて、接触点計画の設定(ST100)と、軌道生成(ST200)と、動作指令(ST300)と、動作制御の実行(ST400)と、がある。
(Control of mobile robot)
A movement control method of the mobile robot will be described.
FIG. 15 is an overall flow of the mobile robot movement control method.
The movement control process of the mobile robot is roughly divided into a contact point plan setting (ST100), a trajectory generation (ST200), an operation command (ST300), and an operation control execution (ST400).

接触点計画の設定(ST100)においては、これまで概略説明してきたように、手先および足先を、どの順番で、どこに、どのように、着くか、という多点接触移動の計画(図7)をユーザが移動ロボットに入力する。入力された接触点計画は、コントローラ210の接触点計画設定部221に記憶される。   In the setting of the contact point plan (ST100), as outlined above, a multi-point contact movement plan in which order, where and how to reach the hand and foot (FIG. 7). Is input to the mobile robot. The input contact point plan is stored in the contact point plan setting unit 221 of the controller 210.

軌道生成工程(ST200)について説明する。
図16、図17、図18に軌道生成工程(ST200)の手順を説明するための詳細なフローチャートを示す。軌道生成工程(ST200)はコントローラ210の軌道生成部222にて実行される。
まず、ST201において、軌道生成部222は現在状態x[k]を設定する。ここで、現在状態(x[k])として設定すべきは、現在の重心のx座標、重心のx軸方向速度、重心のy座標、重心のy軸速度、および、各接触点の接触力(6軸力)である。各接触点における接触力は力センサ25からの検出値によって得ることができる。重心のx座標、重心のx軸方向速度、重心のy座標および重心のy軸速度は、現在の移動ロボットの状態から推定して求める値である。
例えば、各エンコーダのセンサ値を取得して移動ロボットの全身姿勢を把握した上で、重心のx座標、重心のx軸方向速度、重心のy座標および重心のy軸速度を求めてもよい。あるいは、想定している姿勢に対して実際の移動ロボットの姿勢がどの程度傾いているか(ずれているか)を把握することによって、重心位置を修正するようにしてもよい。
The trajectory generation step (ST200) will be described.
FIGS. 16, 17, and 18 show detailed flowcharts for explaining the procedure of the trajectory generation step (ST200). The trajectory generation step (ST200) is executed by the trajectory generation unit 222 of the controller 210.
First, in ST201, the trajectory generation unit 222 sets the current state x [k]. Here, the current state (x [k]) should be set as the current x-coordinate of the center of gravity, the x-axis direction speed of the center of gravity, the y-coordinate of the center of gravity, the y-axis speed of the center of gravity, and the contact force at each contact point. (6-axis force). The contact force at each contact point can be obtained from the detection value from the force sensor 25. The x-coordinate of the center of gravity, the x-axis direction speed of the center of gravity, the y-coordinate of the center of gravity, and the y-axis speed of the center of gravity are values obtained by estimation from the current state of the mobile robot.
For example, the sensor value of each encoder may be acquired to grasp the whole body posture of the mobile robot, and the x-coordinate of the center of gravity, the x-axis direction speed of the center of gravity, the y-coordinate of the center of gravity, and the y-axis speed of the center of gravity may be obtained. Alternatively, the position of the center of gravity may be corrected by grasping how much the actual posture of the mobile robot is inclined (deviation) from the assumed posture.

次に、ST202において、重み(Q、R)を設定する。
(先の式の展開でいうと、重みは、(11)式のところで評価関数Jに組み込まれたことを確認されたい。)
重み(Q、R)は、ユーザが予め設定入力しているもので、軌道生成部222は、必要に応じて読み出し、更新設定する。(更新する必要がなければ、再設定の必要はない。)接触点候補すべてに力を均等配分する場合には、Qをすべて1とし、Rをすべて1×10−6としてもよいが、もっと細かく設定することもできる。この重みを調整することで、接触力の変化をどれぐらい滑らかにするかや、手先にはあまり力を掛けないようにする、などの調整ができる。
Next, in ST202, weights (Q i , R i ) are set.
(Concerning the expansion of the previous equation, confirm that the weight is incorporated in the evaluation function J at the equation (11).)
The weights (Q i , R i ) are set and input by the user in advance, and the trajectory generation unit 222 reads and updates as necessary. (If you do not need to update, you need not. Resetting) when a force is distributed equally to the contact point candidate all, and all the Q i 1, also good as all 1 × 10 -6 to R i You can also set it more finely. By adjusting this weight, it is possible to make adjustments such as how smooth the change in contact force is and how little force is applied to the hand.

例えば、重みを全部同じにしたとする。すると、演算結果として、着地している手足(各接触点)に均等に力が掛かるような解が得られる。一般的に考えると、この場合が移動ロボットとしては一番安定した形(姿勢)になる。   For example, assume that all weights are the same. Then, as a calculation result, a solution is obtained in which force is evenly applied to the landing limb (each contact point). Generally speaking, this is the most stable form (posture) for a mobile robot.

一方、重みの配分を変えたい場合もある。例えば、足に比べて手が弱い(脆弱な)移動ロボットであって手に荷重を掛け過ぎるとよくないという場合には、手の重みを「大きく」する。重みを大きくするほど、重みに乗算されている手のθiなどが小さくなるので、手には接触力の分配が小さくなる。   On the other hand, there is a case where it is desired to change the weight distribution. For example, if the mobile robot is weaker (weaker) than the foot and it is not good to put too much load on the hand, the hand weight is increased. As the weight is increased, the hand θi and the like multiplied by the weight is reduced, so that the distribution of the contact force to the hand is reduced.

あるいは、テーブルに一方の手を着いて、他方の手を前方に大きく伸ばしたいとする。この場合、手足に均等に力が配分されているだけでは無理であり、体をもっと前に傾ける必要がある。体を傾け、重心をもっと前方にシフトさせるためには、一方の手に掛かる力の分配をやや大きくする必要がある。この場合、一方の手の重みを減らし、体を傾けられるようにし、他方の手をより大きく前方に伸ばすようにする、という調整が必要になる。   Alternatively, suppose that one hand is put on the table and the other hand is greatly extended forward. In this case, it is impossible to distribute the force evenly to the limbs, and it is necessary to tilt the body forward. In order to tilt the body and shift the center of gravity further forward, it is necessary to slightly increase the distribution of the force applied to one hand. In this case, it is necessary to adjust such that the weight of one hand is reduced, the body can be tilted, and the other hand is extended more forward.

一般的な動作では重みは変更の必要がないが、状況に応じて軌道更新のタイミングで毎回変更してもよい。   In a general operation, the weight does not need to be changed, but may be changed every time at the timing of the trajectory update depending on the situation.

次に、ST203において、予測区間を設定する。
これは、図8で説明したように、現在から所定の時間幅(例えば1.6秒)を予測区間として設定する、ということである。
Next, in ST203, a prediction interval is set.
As described with reference to FIG. 8, this means that a predetermined time width (for example, 1.6 seconds) from the present is set as the prediction interval.

次に、ST204において、この予測区間内の接触点位置およびその姿勢(pi、ri)を設定する。これは、接触点計画(図7)のなかから予測区間内の接触点計画を切り出してくることに相当する。   Next, in ST204, the contact point position and its posture (pi, ri) within this prediction section are set. This is equivalent to cutting out the contact point plan in the prediction section from the contact point plan (FIG. 7).

次に、ST205においては、重心鉛直軌道と重心回りモーメントとを仮設定する。
本実施形態のポイントは、次ステップの演算工程(ST206)で(25)式(凸二次計画問題)を解いて、重心のxy方向軌道、各接触点の接触力および接触力微分値、を得ることにある。
しかし、この求解には、各接触点の位置、姿勢、重心鉛直軌道、および、重心回りモーメントが与えられていることが前提となる。予測区間内における各接触点の位置および姿勢は、接触点計画で与えられる。一方、この予測区間内における重心鉛直軌道および重心回りモーメントは、未知である。
そこで、演算工程(ST206)で(25)式(凸二次計画問題)が解けるように重心鉛直軌道および重心回りモーメントを一回仮設定する。
Next, in ST205, a gravity center vertical trajectory and a gravity center moment are temporarily set.
The point of this embodiment is to solve the equation (25) (convex quadratic programming problem) in the calculation process (ST206) of the next step, and obtain the xy-direction trajectory of the center of gravity, the contact force at each contact point, and the contact force differential value. There is to get.
However, this solution is based on the premise that the position, posture, center of gravity vertical trajectory, and center of gravity moment are given to each contact point. The position and orientation of each contact point within the prediction interval are given by the contact point plan. On the other hand, the center-of-gravity vertical trajectory and the center-of-gravity moment in this prediction section are unknown.
Therefore, the center-of-gravity vertical trajectory and the center-of-gravity moment are temporarily set once so that equation (25) (convex quadratic programming problem) can be solved in the calculation step (ST206).

全くの一回目の制御サイクルでは、例えば、重心鉛直軌道、重心回りモーメントは予測区間内においては現時点の状態から動かない、と仮設定してもよい。(例えば、重心高さは変化しない、と仮定してもよい。)もしくは、一つ前の制御サイクルで用いた重心鉛直軌道、重心回りモーメントを仮の値として利用してもよい。予測区間は1.6秒ほどの微小な時間であり、最終的に求まる安定軌道においてもこの間の重心高さの変化はやはり微小である。したがって、一回目の仮計算としては、重心高さが変化しないとしても、前回の制御周期と同じであるとしても計算は進められる。   In the completely first control cycle, for example, the center-of-gravity vertical trajectory and the center-of-gravity moment may be temporarily set so as not to move from the current state within the prediction interval. (For example, it may be assumed that the height of the center of gravity does not change.) Alternatively, the center of gravity vertical trajectory and the moment around the center of gravity used in the previous control cycle may be used as temporary values. The prediction interval is a minute time of about 1.6 seconds, and the change in the height of the center of gravity during this stable orbit is also minute. Therefore, as the first tentative calculation, even if the height of the center of gravity does not change, the calculation proceeds even if it is the same as the previous control cycle.

なお、この後、仮の演算で求まった重心のxy方向軌道でも移動ロボットの動きが安定するように重心鉛直軌道および重心回りモーメントを修正する工程(ST209)がある。そして、この修正した重心鉛直軌道および重心回りモーメントを使って再度演算(ST206)するようにループを回すので、最終的には、重心鉛直軌道を含めて安定な軌道が適切に求まることはご理解頂けよう。   After this, there is a step (ST209) of correcting the center-of-gravity vertical trajectory and the moment around the center of gravity so that the movement of the mobile robot is stabilized even in the xy-direction trajectory of the center of gravity obtained by provisional calculation. Then, since the loop is rotated so that the corrected center of gravity vertical trajectory and the center-of-gravity moment are calculated again (ST206), it can be understood that a stable trajectory including the center of gravity vertical trajectory is finally obtained appropriately. Like.

ここで、重心回りモーメントを定義しておく。
移動ロボットをリンク同士が関節でジョイントされたリンク構造体と見なすと、重心回りモーメントは、各リンクに分布した質点の運動によって重心の回りに発生するモーメントの合計値である。
移動ロボットが図19(A)、(B)に示すような多質点モデルで表されており、M個の質点がそれぞれ、
質量:m
位置:s=[x、y、z
のパラメータを持っているとする。
移動ロボット全体の重心をG=(G、G、Gとすると、重心回りモーメントは次のように表わされる。
Here, the moment around the center of gravity is defined.
If the mobile robot is regarded as a link structure in which links are jointed by joints, the moment around the center of gravity is a total value of moments generated around the center of gravity due to the motion of the mass points distributed on each link.
The mobile robot is represented by a multi-mass model as shown in FIGS. 19 (A) and 19 (B).
Mass: m i,
Position: s i = [x i , y i , z i ] T
Suppose you have the following parameters:
When the center of gravity of the entire mobile robot is G = (G x , G y , G z ) T , the moment around the center of gravity is expressed as follows.

Figure 2015087504
Figure 2015087504

次に、ST206において演算工程を実行する。
具体的には、(29)式の凸二次計画問題を解くということである。
予測区間内において、接触点おのおのに力を適切に分散させつつ、なおかつ、この接触力を実現しながら重心(ここでの重心はxとy)が安定に遷移するような軌道が求められるわけである。具体的には、H、F、P、S、V、Wが求まり、さらに、U[k]が求まる。(このU[k]は接触力微分値のベクトルであったことを思い出されたい。)そして、(30)式によって、Xout[k+1]が求まる。(このXout[k+1]は、重心のx座標、重心のx軸方向速度、重心のy座標、重心のy軸速度、および、各接触点の接触力(6軸力)の時系列データである。)
Next, a calculation process is performed in ST206.
Specifically, the convex quadratic programming problem of equation (29) is solved.
In the prediction interval, a trajectory is required in which the center of gravity (here, the center of gravity is x and y) stably transitions while realizing the contact force while appropriately distributing the force to each contact point. is there. Specifically, H, F, P, S, V, and W are obtained, and U [k] is obtained. (Recall that this U [k] was a vector of the contact force differential value.) Then, Xout [k + 1] is obtained by the equation (30). (This X out [k + 1] is time series data of the x-coordinate of the center of gravity, the x-axis direction speed of the center of gravity, the y-coordinate of the center of gravity, the y-axis speed of the center of gravity, and the contact force (six-axis force) of each contact point. is there.)

続いて、ST208において、手先、足先の軌道を補間して求める。接触点計画においては、接触点とそのときの姿勢だけが設定されている。そこで、各接触点間を結ぶように手先、足先の補間軌道を求める。すると、図20のように、接触点計画で指示された接触点同士の間が埋まる。   Subsequently, in ST208, the trajectory of the hand and foot is interpolated and obtained. In the contact point plan, only the contact point and the posture at that time are set. Therefore, the interpolation trajectories of the hand and the foot are obtained so as to connect the contact points. Then, as shown in FIG. 20, the space between the contact points specified in the contact point plan is filled.

なお。ST208は、次のST209の前であればどのタイミングで実行されてもよいものである。極端に言えば、接触点計画が入力された時点ですぐに手先足先の補間軌道を求めてしまってもよい。   Note that. ST208 may be executed at any timing before the next ST209. In an extreme case, the interpolation trajectory of the hand and foot may be obtained immediately when the contact point plan is input.

さて、次に、ST209において、重心鉛直軌道と重心回りモーメントとを修正する作業を行う。
まず、重心鉛直軌道を修正する。これまでの工程により、重心のxy方向の軌道と、手先足先の軌道と、が得られている。(さらに、重心鉛直軌道も仮設定している。)これに基づいて、予測区間内における移動ロボットの姿勢の変化を推定することができるが、このとき、膝や腕が伸びきってしまうなど安定しない要因がある場合には安定するように重心鉛直軌道を調整する。例えば、膝が伸びきりそうになったら重心鉛直軌道を下げる、といった調整を行う。予測区間内における移動ロボットの姿勢が決定したら、それに基づいて重心回りモーメントの計算を行う。
Next, in ST209, an operation for correcting the center-of-gravity vertical trajectory and the center-of-gravity moment is performed.
First, the center of gravity vertical trajectory is corrected. By the steps so far, the trajectory of the center of gravity in the xy direction and the trajectory of the tip of the hand are obtained. (Furthermore, the center of gravity vertical trajectory is also temporarily set.) Based on this, it is possible to estimate the change in the posture of the mobile robot within the prediction interval, but at this time, the knees and arms are fully extended. If there is a factor that does not, adjust the center of gravity vertical trajectory to be stable. For example, when the knee is almost extended, the vertical center of gravity is lowered. When the posture of the mobile robot in the predicted section is determined, the moment around the center of gravity is calculated based on the determined posture.

さて、次に、ST210において、ST206−ST209を1回以上繰り返したかどうかを判断し、繰り返していなければST206に戻って凸二次計画問題の求解を行う。
(ST208については必要に応じてスキップしてもよいことはもちろんである。)
この繰り返し演算(ST206)によって、修正された重心鉛直軌道および重心回りモーメントを用いて再度Xout[k+1]が求まる。
このようにして、予測区間内において移動ロボットの安定な移動を実現する、重心位置、重心速度および接触力の時系列データが求まった(ST211)。
Next, in ST210, it is determined whether ST206-ST209 has been repeated one or more times. If not repeated, the process returns to ST206 to solve the convex quadratic programming problem.
(Of course, ST208 may be skipped as necessary.)
By this repeated calculation (ST206), Xout [k + 1] is obtained again using the corrected center-of-gravity vertical trajectory and center-of-gravity moment.
In this way, time series data of the center of gravity position, the center of gravity speed, and the contact force that realizes the stable movement of the mobile robot within the prediction section was obtained (ST211).

このように、ある時間幅を持つ予測区間で安定な軌道を生成した上で、最初の一点だけを現在の入力値として使用する。すなわち、最初の一点だけを動作指令として動作制御部223に出力する(ST300)。   In this way, after generating a stable trajectory in a prediction interval having a certain time width, only the first point is used as the current input value. That is, only the first point is output as an operation command to the operation control unit 223 (ST300).

所定の終了条件を満たすまで周期を更新(ST213)すなわち現時点を微小時間進ませて、先頭(ST201)に戻り、ループを繰り返す。このように、予測区間を微小時間だけ先に進ませながら軌道生成を繰り返す。このようにして多点接触移動を安定に実現する軌道の算出が行われる。   The period is updated until a predetermined end condition is satisfied (ST213), that is, the current time is advanced by a minute time, the process returns to the head (ST201), and the loop is repeated. In this way, the trajectory generation is repeated while the prediction interval is advanced by a minute time. In this way, the trajectory that stably realizes multipoint contact movement is calculated.

動作指令を受けた動作制御部223が移動ロボット100をどのように制御して動かすか(関節を駆動させるか)は本実施形態のポイントではないが、簡単に説明しておく。
本実施形態においては、重心および手先足先の軌道に加えて、各接触点における接触力も動作指令として与えられる。そこで、まず、各接触点で指示された接触力が発生するように手先足先の位置(軌道)を微修正するという工程が必要になる(ST410)。例えば、手先をテーブルに着いているときに、比較的大きな接触力が指示された場合には、手先をテーブルに押し込むように手先の軌道を微修正する。
How the motion control unit 223 that receives the motion command controls and moves the mobile robot 100 (whether to drive the joint) is not the point of the present embodiment, but will be described briefly.
In this embodiment, in addition to the center of gravity and the trajectory of the tip of the hand, the contact force at each contact point is also given as an operation command. Therefore, first, a step of finely correcting the position (trajectory) of the hand and foot is required so that the contact force instructed at each contact point is generated (ST410). For example, when a relatively large contact force is instructed while the hand is on the table, the hand trajectory is finely corrected so that the hand is pushed into the table.

そして、各関節のモータを駆動して全身を動作させる(ST420)。これで移動ロボットが動作することになる。   And the motor of each joint is driven and the whole body is operated (ST420). The mobile robot will now operate.

なお、動作の実行(ST400)において、接触力制御(ST410)を行ったり、関節が指示した通りに正確に駆動しなかったり、外乱の影響を受けたりして、実機とモデルとの間には当然にずれが生じる。したがって、軌道生成(ST200)のループにあっては、毎回、現在状態xの設定を行う必要がある(ST201)。   In the execution of the operation (ST400), contact force control (ST410) is performed, the drive is not performed exactly as instructed by the joint, or it is affected by a disturbance, so there is a gap between the actual machine and the model. Naturally, a deviation occurs. Therefore, in the loop of trajectory generation (ST200), it is necessary to set the current state x every time (ST201).

以上、本実施形態によれば、設定された接触点の計画に基づいて移動ロボットが自動的に安定な重心軌道を生成して自律的に移動できる。そして、軌道生成のために用いた評価関数Jの意味から分かるように、接触点の切替(接触状態の遷移)に伴う力の変化が滑らかになり、移動ロボットの安定かつ滑らかな移動が実現される。   As described above, according to the present embodiment, the mobile robot can automatically generate a stable center-of-gravity trajectory and move autonomously based on the set plan of contact points. As can be seen from the meaning of the evaluation function J used to generate the trajectory, the change in force accompanying the switching of the contact point (transition of the contact state) becomes smooth, and stable and smooth movement of the mobile robot is realized. The

(実験例)
実験例を説明する。
上記実施形態を2足歩行と4足歩行の場合に適用した実験例を示す。
図21から図23は二足歩行の場合の例である。図21のような接触点計画を移動ロボットに与えた。(接触点は右足と左足だけであり、右手、左手は床や壁に接触しないものとした。)
(Experimental example)
An experimental example will be described.
An experimental example in which the above embodiment is applied to the case of bipedal walking and quadrupedal walking is shown.
21 to 23 are examples in the case of bipedal walking. A contact point plan as shown in FIG. 21 was given to the mobile robot. (The contact points are only the right and left feet, and the right and left hands do not touch the floor or wall.)

図22は、実行結果のスナップショットである。
図が多くなりすぎても冗長であるので、途中および最後を間引いたが、接触点計画と付き合わせていただければ内容はご理解頂けるであろう。
安定した2足歩行が実現されており、そして、接触点の移り変わりに従って安定な重心軌道が生成されていることがわかる。
図23(A)、(B)、(C)は、二足歩行実行時の重心位置、反力中心の位置、および、接触点の鉛直方向荷重、を示したグラフである。接触点の切り替えに伴う接触点反力が滑らかに遷移していることがわかる。
全反力中心が左右脚間で滑らかに遷移していることも確認できる。
FIG. 22 is a snapshot of the execution result.
Even if there are too many figures, it is redundant, so the middle and the last are thinned out, but if you can associate them with the contact point plan, you will understand the contents.
It can be seen that stable bipedal walking is realized, and a stable center of gravity trajectory is generated as the contact point changes.
23A, 23B, and 23C are graphs showing the position of the center of gravity, the position of the reaction force center, and the vertical load at the contact point when biped walking is performed. It can be seen that the contact point reaction force accompanying the switching of the contact points smoothly transitions.
It can also be confirmed that the center of all reaction forces smoothly transitions between the left and right legs.

同様に、図24から図26は4足歩行の場合である。
図24のような接触点計画を移動ロボットに与えた。
図25が、実行結果のスナップショットである。(前記と同様に途中を間引いた。)
やはり、安定した4足歩行が実現されており、接触点の移り変わりに従って安定な重心軌道が生成されていることがわかる。
図26(A)、(B)、(C)は、4足歩行実行時の重心位置、反力中心の位置、および、接触点の鉛直方向荷重、を示したグラフである。
Similarly, FIGS. 24 to 26 show a case of walking on four legs.
A contact point plan as shown in FIG. 24 was given to the mobile robot.
FIG. 25 is a snapshot of the execution result. (Similar to the above, it was thinned out.)
It can be seen that a stable quadruped walking is realized, and a stable center of gravity trajectory is generated according to the change of the contact point.
FIGS. 26A, 26B, and 26C are graphs showing the position of the center of gravity, the position of the reaction force center, and the vertical load at the contact point when the quadruped walking is performed.

同様に、図27から図29は4足歩行であって、手足の着き方をランダムにしたものである。
図27のような接触点計画を移動ロボットに与えた。
図28が、実行結果のスナップショットである。
やはり、ランダム4足歩行でも安定した歩行が実現されており、接触点の移り変わりに従って安定な重心軌道が生成されていることがわかる。
図29(A)、(B)、(C)は、ランダム4足歩行実行時の重心位置、反力中心の位置、および、接触点の鉛直方向荷重、を示したグラフである。
Similarly, FIG. 27 to FIG. 29 are four-legged walks, in which limbs are randomly placed.
A contact point plan as shown in FIG. 27 was given to the mobile robot.
FIG. 28 is a snapshot of the execution result.
It can be seen that stable walking is realized even with random quadruped walking, and a stable center of gravity trajectory is generated according to the change of the contact point.
FIGS. 29A, 29B, and 29C are graphs showing the position of the center of gravity, the position of the reaction force center, and the vertical load at the contact point when random quadruped walking is performed.

なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
移動ロボットとしてのハードウェア構成としては、二足歩行、4足歩行、さらには、6足でも8足でもよいのであって、手足の数に制限があるわけではない。
ただし、少なくとも一つの接触点がどこかに接地している必要がある。
(接地、というが、壁に手を着く場合も含めて解釈されたい。)
極端なケースであるが、例えば、図30のように、足が1本、手が1本で、床と壁に手足を交互に着けながら移動するような移動ロボット100であってもよい。
Note that the present invention is not limited to the above-described embodiment, and can be changed as appropriate without departing from the spirit of the present invention.
As a hardware configuration as a mobile robot, two-legged walking, four-legged walking, and even six or eight legs may be used, and the number of limbs is not limited.
However, at least one contact point must be grounded somewhere.
(Grounding is to be interpreted, including when you touch the wall.)
In an extreme case, for example, as shown in FIG. 30, the mobile robot 100 may have one leg and one hand and move while alternately putting limbs on the floor and the wall.

この出願は、2013年12月10日に出願された日本出願特願2013−254989を基礎とする優先権を主張し、その開示の全てをここに取り込む。   This application claims the priority on the basis of Japanese application Japanese Patent Application No. 2013-254989 for which it applied on December 10, 2013, and takes in those the indications of all here.

1a-28a…モータ、1b-28b…エンコーダ、25…接触力センサ、100…移動ロボット、210…コントローラ、221…接触点計画設定部、222…軌道生成部、223…動作制御部。 DESCRIPTION OF SYMBOLS 1a-28a ... Motor, 1b-28b ... Encoder, 25 ... Contact-force sensor, 100 ... Mobile robot, 210 ... Controller, 221 ... Contact point plan setting part, 222 ... Trajectory generation part, 223 ... Operation control part.

Claims (5)

二以上の移動手段を交互に接地しながら移動する移動ロボットの移動制御方法であって、
前記移動手段を接地する接触点の位置と接地するときの前記移動手段の姿勢とを時系列のデータとした接触点計画を設定する接触点計画設定工程と、
前記接触点計画設定工程で設定したように前記移動手段を接触点に接地しながら移動するための軌道を生成する軌道生成工程と、を備え、
前記軌道生成工程は、
前記移動手段を接地するときの接触力の微分値を入力とする予測モデルを構築して、この予測モデルによって所定時間幅の予測区間における移動ロボットの状態変化を表わし、
前記予測区間において、所定の評価基準を用いて接触力の微分値の時系列データを求め、
この求まった接触力の微分値の時系列データと前記予測モデルとから、移動ロボットの重心軌道を得るものであり、
前記評価基準には、
各接触点に対応して設定された重みに基づいて各接触点に接触力と、接触力の微分値とを配分するという基準が含まれ、
前記評価基準は、接触力および接触力の微分値の二乗和を含む評価関数Jを予測区間内において最小化することである
ことを特徴とする移動ロボットの移動制御方法。
A movement control method of a mobile robot that moves while alternately grounding two or more moving means,
A contact point plan setting step for setting a contact point plan with time-series data of the position of the contact point for grounding the moving means and the posture of the moving means for grounding;
A trajectory generating step for generating a trajectory for moving while moving the moving means to the contact point as set in the contact point plan setting step,
The trajectory generation step includes
By constructing a prediction model that receives as input a differential value of the contact force when the moving means is grounded, the prediction model represents a change in the state of the mobile robot in a prediction section of a predetermined time width,
In the prediction section, using a predetermined evaluation criterion, to obtain time series data of the differential value of the contact force,
From the time series data of the differential value of the obtained contact force and the prediction model, the center of gravity trajectory of the mobile robot is obtained.
The evaluation criteria include
A standard for distributing the contact force and the differential value of the contact force to each contact point based on the weight set for each contact point is included,
The evaluation criterion is to minimize an evaluation function J including a contact force and a sum of squares of a differential value of the contact force within a prediction interval.
請求項1に記載の移動ロボットの移動制御方法において、
前記評価関数Jの最小化問題を拘束条件のもとで求解するにあたり、
前記拘束条件の式には、移動ロボットの重心鉛直軌道と重心回りモーメント軌道とを含んでおり、
前記軌道生成工程は、
予測区間内において、移動ロボットの重心鉛直軌道と重心回りモーメント軌道とを一度仮設定する工程と、
前記評価関数Jの最小化問題を拘束条件のもとで一度求解した後、その結果に応じて、予測区間内において移動ロボットの動作が安定するように重心鉛直軌道と重心回りモーメント軌道とを修正し、
修正した重心鉛直軌道と重心回りモーメント軌道とを用いて少なくとも一回以上、前記評価関数Jの最小化問題を再計算する
ことを特徴とする移動ロボットの移動制御方法。
The mobile robot movement control method according to claim 1,
In solving the minimization problem of the evaluation function J under constraint conditions,
The constraint equation includes a vertical trajectory and a moment trajectory around the center of gravity of the mobile robot.
The trajectory generation step includes
In the prediction interval, a process of temporarily setting the center of gravity vertical trajectory and the center of gravity moment trajectory of the mobile robot once;
After solving the minimization problem of the evaluation function J under the constraint condition, the center of gravity vertical trajectory and the center of gravity moment trajectory are corrected so that the motion of the mobile robot is stabilized within the prediction interval. And
A movement control method for a mobile robot, wherein the minimization problem of the evaluation function J is recalculated at least once using the corrected center-of-gravity vertical trajectory and the center-of-gravity moment trajectory.
請求項1または請求項2に記載の移動ロボットの移動制御方法において、
前記移動手段ごとに重みが設定されており、
前記評価関数Jにおいて、接触力および接触力の微分値にそれぞれ重みを乗算しておく
ことを特徴とする移動ロボットの移動制御方法。
In the movement control method of the mobile robot according to claim 1 or 2,
A weight is set for each moving means,
In the evaluation function J, a moving control method for a mobile robot, wherein the contact force and the differential value of the contact force are each multiplied by a weight.
請求項1から請求項3のいずれかに記載の移動ロボットの移動制御方法において、
前記軌道生成工程において予測区間内で軌道を求め、
この予測区間の最初の一点のデータを現在の入力値として移動ロボットを駆動させ、
予測区間を微小時間だけ進めて、前記軌道生成工程を繰り返す
ことを特徴とする移動ロボットの移動制御方法。
In the movement control method of the mobile robot according to any one of claims 1 to 3,
In the trajectory generation step, the trajectory is determined within the prediction interval,
The mobile robot is driven using the data of the first point in this prediction interval as the current input value,
A movement control method for a mobile robot, wherein the trajectory generation step is repeated by advancing a prediction interval for a minute time.
二以上の移動手段を交互に接地しながら移動する移動ロボットであって、
前記移動手段を接地する接触点の位置と接地するときの前記移動手段の姿勢とを時系列のデータとした接触点計画を設定する接触点計画設定部と、
前記接触点計画設定部で設定したように前記移動手段を接触点に接地しながら移動するための軌道を生成する軌道生成部と、を備え、
前記軌道生成部は、
前記移動手段を接地するときの接触力の微分値を入力とする予測モデルを構築して、この予測モデルによって所定時間幅の予測区間における移動ロボットの状態変化を表わし、
前記予測区間において、所定の評価基準を用いて接触力の微分値の時系列データを求め、
この求まった接触力の微分値の時系列データと前記予測モデルとから、移動ロボットの重心軌道を得るものであり、
前記評価基準には、
各接触点に対応して設定された重みに基づいて各接触点に接触力と、接触力の微分値とを配分するという基準が含まれ、
前記評価基準は、接触力および接触力の微分値の二乗和を含む評価関数Jを予測区間内において最小化することである
ことを特徴とする移動ロボット。
A mobile robot that moves while grounding two or more moving means alternately,
A contact point plan setting unit for setting a contact point plan with time-series data of the position of the contact point for grounding the moving means and the posture of the moving means for grounding;
A trajectory generator for generating a trajectory for moving while moving the moving means to the contact point as set in the contact point plan setting unit,
The trajectory generator is
By constructing a prediction model that receives as input a differential value of the contact force when the moving means is grounded, the prediction model represents a change in the state of the mobile robot in a prediction section of a predetermined time width,
In the prediction section, using a predetermined evaluation criterion, to obtain time series data of the differential value of the contact force,
From the time series data of the differential value of the obtained contact force and the prediction model, the center of gravity trajectory of the mobile robot is obtained.
The evaluation criteria include
A standard for distributing the contact force and the differential value of the contact force to each contact point based on the weight set for each contact point is included,
The mobile robot is characterized in that the evaluation criterion is to minimize an evaluation function J including a contact force and a square sum of contact force differential values within a prediction interval.
JP2015552305A 2013-12-10 2014-11-26 Mobile robot movement control method and mobile robot Active JP6168158B2 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2013254989 2013-12-10
JP2013254989 2013-12-10
PCT/JP2014/005905 WO2015087504A1 (en) 2013-12-10 2014-11-26 Mobile robot movement control method and mobile robot

Publications (2)

Publication Number Publication Date
JPWO2015087504A1 true JPWO2015087504A1 (en) 2017-03-16
JP6168158B2 JP6168158B2 (en) 2017-07-26

Family

ID=53370835

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015552305A Active JP6168158B2 (en) 2013-12-10 2014-11-26 Mobile robot movement control method and mobile robot

Country Status (2)

Country Link
JP (1) JP6168158B2 (en)
WO (1) WO2015087504A1 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5910647B2 (en) 2014-02-19 2016-04-27 トヨタ自動車株式会社 Mobile robot movement control method
JP6927727B2 (en) 2017-03-29 2021-09-01 本田技研工業株式会社 Robot control device
US20210370733A1 (en) * 2019-12-23 2021-12-02 California Institute Of Technology Synchronized Multi-Modal Robot
EP4043991A4 (en) * 2020-04-14 2023-02-08 Tencent Technology (Shenzhen) Company Limited Method and device for determining barycenter position, legged robot, and storage medium

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010137289A (en) * 2008-12-09 2010-06-24 Sony Corp Information processing apparatus, information processing method, and computer program
JP2011177839A (en) * 2010-03-01 2011-09-15 Honda Motor Co Ltd Device of evaluating motion state of leg-type mobile robot
JP2013107191A (en) * 2011-11-22 2013-06-06 Disney Enterprises Inc Kinematic and dynamic calibration method for legged robot with force-controlled joint
JP2013116529A (en) * 2011-12-02 2013-06-13 Honda Motor Co Ltd Gait generating device for legged mobile robot and operational target generating device for robot
JP2013184232A (en) * 2012-03-06 2013-09-19 Toyota Motor Corp Leg type walking robot and method of generating center-of-gravity trajectory of the same
JP2013184248A (en) * 2012-03-07 2013-09-19 Toyota Motor Corp Center-of-gravity trajectory generation device, and generation method and program therefor

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010137289A (en) * 2008-12-09 2010-06-24 Sony Corp Information processing apparatus, information processing method, and computer program
JP2011177839A (en) * 2010-03-01 2011-09-15 Honda Motor Co Ltd Device of evaluating motion state of leg-type mobile robot
JP2013107191A (en) * 2011-11-22 2013-06-06 Disney Enterprises Inc Kinematic and dynamic calibration method for legged robot with force-controlled joint
JP2013116529A (en) * 2011-12-02 2013-06-13 Honda Motor Co Ltd Gait generating device for legged mobile robot and operational target generating device for robot
JP2013184232A (en) * 2012-03-06 2013-09-19 Toyota Motor Corp Leg type walking robot and method of generating center-of-gravity trajectory of the same
JP2013184248A (en) * 2012-03-07 2013-09-19 Toyota Motor Corp Center-of-gravity trajectory generation device, and generation method and program therefor

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
HYON, S.; CHENG, G.: "Gravity Compensation and Full-Body Balancing for Humanoid Robots", HUMANOID ROBOTS, 2006 6TH IEEE-RAS INTERNATIONAL CONFERENCE ON, JPN6015007812, 4 December 2006 (2006-12-04), pages pp.214 - 221 *

Also Published As

Publication number Publication date
JP6168158B2 (en) 2017-07-26
WO2015087504A1 (en) 2015-06-18

Similar Documents

Publication Publication Date Title
JP5910647B2 (en) Mobile robot movement control method
Feng et al. 3D walking based on online optimization
JP3972854B2 (en) Robot motion control device
US7053577B2 (en) Robot and motion control method of robot
JP4548135B2 (en) Legged robot and its control method
JP7324932B2 (en) dynamic planning controller
JP3599244B2 (en) Robot device, motion control device of robot device, and motion control method
Petrič et al. Smooth continuous transition between tasks on a kinematic control level: Obstacle avoidance as a control problem
JP6421683B2 (en) Optimal control device, optimal control method, and optimal control program
WO2002040224A1 (en) Gait pattern generating device for legged mobile robot
JP6168158B2 (en) Mobile robot movement control method and mobile robot
JP2007185756A (en) Control system, control method and computer/program
WO2006067904A1 (en) Legged mobile robot and gait generating device
WO2002040222A1 (en) Device and method for controlling motion of legged mobile robot, and motion unit generating method for legged mobile robot
US11878418B2 (en) Controlling a robot based on constraint-consistent and sequence-optimized pose adaptation
Vladareanu et al. Modeling and hybrid position-force control of walking modular robots
Shkolnik et al. Inverse kinematics for a point-foot quadruped robot with dynamic redundancy resolution
JP2017109252A (en) Control device for mobile robot
US11787055B2 (en) Controlling a robot using predictive decision making
You et al. Semi-autonomous bilateral teleoperation of hexapod robot based on haptic force feedback
Liljebäck et al. A 3D motion planning framework for snake robots
Oh et al. Humanoid whole-body remote-control framework with delayed reference generator for imitating human motion
Arreguit et al. Fast multi-contact whole-body motion planning with limb dynamics
JP7221833B2 (en) Nonlinear model predictive controller
He et al. Suppression of Quadruped Robot Body Disturbance by Virtual Spring‐Damping Model

Legal Events

Date Code Title Description
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: 20170530

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170612

R151 Written notification of patent or utility model registration

Ref document number: 6168158

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151