KR101131773B1 - 이동 로봇의 보용생성장치 - Google Patents
이동 로봇의 보용생성장치 Download PDFInfo
- Publication number
- KR101131773B1 KR101131773B1 KR1020067011906A KR20067011906A KR101131773B1 KR 101131773 B1 KR101131773 B1 KR 101131773B1 KR 1020067011906 A KR1020067011906 A KR 1020067011906A KR 20067011906 A KR20067011906 A KR 20067011906A KR 101131773 B1 KR101131773 B1 KR 101131773B1
- Authority
- KR
- South Korea
- Prior art keywords
- model
- instantaneous
- upper body
- target
- correction
- Prior art date
Links
- 230000005021 gait Effects 0.000 title claims abstract description 346
- 230000033001 locomotion Effects 0.000 claims abstract description 472
- 238000006243 chemical reaction Methods 0.000 claims abstract description 206
- 238000012937 correction Methods 0.000 claims description 680
- 230000000295 complement effect Effects 0.000 claims description 49
- 230000001133 acceleration Effects 0.000 claims description 45
- 230000008859 change Effects 0.000 claims description 30
- 230000002123 temporal effect Effects 0.000 claims description 7
- 238000012423 maintenance Methods 0.000 claims description 6
- 230000000750 progressive effect Effects 0.000 claims description 4
- 238000006073 displacement reaction Methods 0.000 description 501
- 230000036544 posture Effects 0.000 description 455
- 238000000034 method Methods 0.000 description 161
- 230000008569 process Effects 0.000 description 140
- 210000002683 foot Anatomy 0.000 description 118
- 210000002414 leg Anatomy 0.000 description 117
- 239000000463 material Substances 0.000 description 85
- 238000012545 processing Methods 0.000 description 65
- 239000000047 product Substances 0.000 description 28
- 210000000629 knee joint Anatomy 0.000 description 27
- 238000010586 diagram Methods 0.000 description 21
- 210000004394 hip joint Anatomy 0.000 description 21
- 230000006870 function Effects 0.000 description 20
- 210000000544 articulatio talocruralis Anatomy 0.000 description 18
- 210000001503 joint Anatomy 0.000 description 17
- 239000013598 vector Substances 0.000 description 14
- 238000005452 bending Methods 0.000 description 13
- 239000002131 composite material Substances 0.000 description 12
- 238000004364 calculation method Methods 0.000 description 11
- 210000000689 upper leg Anatomy 0.000 description 10
- 230000005484 gravity Effects 0.000 description 9
- 210000002310 elbow joint Anatomy 0.000 description 8
- 230000007246 mechanism Effects 0.000 description 8
- 230000014759 maintenance of location Effects 0.000 description 7
- 238000001514 detection method Methods 0.000 description 6
- 230000009471 action Effects 0.000 description 5
- 210000003423 ankle Anatomy 0.000 description 5
- 230000014509 gene expression Effects 0.000 description 5
- 230000001502 supplementing effect Effects 0.000 description 5
- 210000003857 wrist joint Anatomy 0.000 description 5
- 238000005096 rolling process Methods 0.000 description 4
- 210000000323 shoulder joint Anatomy 0.000 description 4
- 210000003414 extremity Anatomy 0.000 description 3
- 210000001624 hip Anatomy 0.000 description 3
- 238000003384 imaging method Methods 0.000 description 3
- 230000001105 regulatory effect Effects 0.000 description 3
- 101710153181 Protein PYRICULARIA ORYZAE RESISTANCE 21 Proteins 0.000 description 2
- 230000010391 action planning Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 230000002146 bilateral effect Effects 0.000 description 2
- 230000002124 endocrine Effects 0.000 description 2
- 210000003108 foot joint Anatomy 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 210000003127 knee Anatomy 0.000 description 2
- 210000001699 lower leg Anatomy 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 230000000737 periodic effect Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000000452 restraining effect Effects 0.000 description 2
- 230000002441 reversible effect Effects 0.000 description 2
- 230000035945 sensitivity Effects 0.000 description 2
- 230000006641 stabilisation Effects 0.000 description 2
- 238000011105 stabilization Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 210000001215 vagina Anatomy 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 239000000853 adhesive Substances 0.000 description 1
- 230000001070 adhesive effect Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000001010 compromised effect Effects 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000013013 elastic material Substances 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 238000005242 forging Methods 0.000 description 1
- 239000004615 ingredient Substances 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 239000007788 liquid Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000035939 shock Effects 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J5/00—Manipulators mounted on wheels or on carriages
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B62—LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
- B62D—MOTOR VEHICLES; TRAILERS
- B62D57/00—Vehicles 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/02—Vehicles 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/032—Vehicles 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
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
Landscapes
- Engineering & Computer Science (AREA)
- Mechanical Engineering (AREA)
- Chemical & Material Sciences (AREA)
- Combustion & Propulsion (AREA)
- Transportation (AREA)
- Robotics (AREA)
- Manipulator (AREA)
Abstract
로봇(1)을 표현하는 모델의 요소(질점, 이너셔를 갖는 강체)의 배치를, 로봇(1)의 순시 목표 운동으로부터 제 1 기하학적 구속조건에 따라서 결정했을 때의 그 배치를 제 1 배치로 하고, 이 제 1 배치에 대해 소정의 관계를 갖는 제 2 배치 및 제 3 배치에 각각 대응하는 가보정 순시 목표 운동을 결정한다. 로봇(1)의 소정 부위(3)(상체)의 위치 자세는 이것들의 가보정 순시 목표 운동의 위치 자세의 가중평균에 의해 결정된다. 이것에 의해, 동역학 모델을 사용하여 작성된 순시 목표 보용의 운동을 동역학 모델을 사용하지 않고 순시 목표 보용의 상반력과의 사이의 동역학적 정밀도의 향상과, 로봇의 상체 등의 소정 부위의 자세의 변동을 최대한 적게 하는 것의 양립을 도모하도록 적절하게 보정한다.
이동 로봇, 보용생성장치, 운동결정수단, 상반력, 관성력, 가중값, 가동체
Description
본 발명은 2족이동 로봇 등의 이동 로봇의 목표 보용을 생성하는 장치에 관한 것이다.
2족이동 로봇 등의 이동 로봇의 목표 보용을 생성하는 기술로서는, 예를 들면 일본 특개2002-326173호 공보(특허문헌 1)나, PCT 국제공개공보 WO/03/057427/A1(특허문헌 2)에 개시되는 것이 본원 출원인에 의해 제안되었다. 이들 문헌에 개시되는 기술은, 로봇의 운동(각 부위의 위치, 자세)과, 상반력(床反力)과의 관계를 나타내는 제 1 동역학 모델을 사용하여 이 제 1 동역학 모델상에서의 소요의 동역학적 평형조건(상반력의 병진력 성분이 목표값이 되는, 어떤 점 주위의 상반력 모멘트가 목표값이 되는 등의 조건)을 만족하도록 로봇의 목표 운동의 순시값(순시 목표 운동)과 목표 상반력의 순시값(순시 목표 상반력)으로 이루어지는 순시 목표 보용이 차례차례로 작성된다. 그리고, 이 순시 목표 보용을 제 2 동역학 모델에 입력하고, 이 순시 목표 운동의 일부(목표 상체위치 자세나 목표 ZMP 주위의 목표 모멘트 등)를 보정함으로써, 최종적인 순시 목표 보용을 시계열적으로 생성하도록 하고 있다.
이 경우, 제 1 동역학 모델로서는, 선형성이 높은 모델이 일반적으로 사용된 다. 선형성이 높은 동역학 모델을 사용하여 순시 목표 보용을 작성함으로써, 가상적인 주기적 보용인 정상 보용으로 이어지거나, 혹은 점근하는 보용(로봇의 안정한 운동을 계속적으로 행할 수 있는 보용)을 효율적으로 단시간에 작성하는 것이 가능하게 된다. 나아가서는 실(實) 로봇의 실제의 운동을 행하면서, 리얼타임으로 로봇의 순시 목표 보용을 차례차례로 생성하는 것이 가능하게 된다.
그런데, 선형성이 높은 동역학 모델은, 로봇의 여러 동작에 있어서 일반적으로 동역학적 정밀도가 비교적 낮아지는 경향이 있다. 즉, 그 동역학 모델상에서의 로봇의 동역학은 실 로봇의 실제의 동역학에 대해 오차를 발생하기 쉽다. 이 때문에, 제 1 동역학 모델을 사용하여 작성되는 순시 목표 보용을, 그대로 실 로봇에 적용하여, 이 실 로봇의 동작을 행하게 하면, 제 1 동역학 모델상에서 보증된 동역학적 평형조건이 실 로봇상에서는 성립하지 않아, 실 로봇의 동작이 안정성이 결여되는 것으로 되기 쉽다.
그래서, 상기 특허문헌 1, 2에 개시되는 기술에서는, 제 1 동역학 모델을 사용하여 작성한 순시 목표 보용의 일부를, 제 2 동역학 모델을 사용하여 더 보정하도록 하고 있다. 이 경우, 제 2 동역학 모델로서는, 제 1 동역학 모델보다도 동역학적 정밀도가 높은 모델이 사용된다. 이것에 의해, 제 1 동역학 모델을 사용하여 작성한 보용보다도, 보다 동역학적 정밀도가 높은(실 로봇의 동역학에 보다 가까운) 보용을 생성하는 것이 가능하게 된다.
그런데, 상기 제 1 동역학 모델은, 상기한 바와 같이 동역학적 정밀도가 낮아지는 경향이 있으므로, 생성하려고 하는 보용에 따라서는, 동역학적인 오차가 비 교적 큰 것으로 되는 경우가 있다. 즉, 제 1 동역학 모델에서 상정(고려)되어 있지 않은 관성력이 발생하는 로봇의 운동을 행하게 하는 보용을 생성하는 경우에는, 상기 오차가 큰 것으로 되기 쉽다. 예를 들면, 2족이동 로봇의 상체, 각 다리체의 선단부 부근에 각각 대응하는 질점을 1개씩 갖는 것과 같은 3질점의 동역학 모델, 또는, 로봇의 상체에만 질점을 갖는 1질점의 동역학 모델을 상기 제 1 동역학 모델로서 사용한 경우에는, 특히, 각 다리체의 무릎관절을 구부리는 것과 같은 동작을 비교적 재빠르게 행하는 경우에는, 그것에 수반되는 관성력의 변화의 영향으로, 동역학적인 오차가 비교적 큰 것으로 된다. 그 결과, 이 제 1 동역학 모델을 사용하여 작성되는 순시 목표 보용이 로봇의 계속적인 안정성을 확보하는 점에서 과잉으로 부적절한 것으로 되는 경우가 있다. 그리고, 이러한 경우에는, 제 2 동역학 모델에서 이 순시 목표 보용을 보정하도록 해도, 그 보정이 적정하게 되지 않아, 그 보정 후의 순시 목표 보용이 안정 여유가 낮은 것으로 되거나, 로봇의 계속적인 안정성을 확보할 수 없는 것으로 발산해버릴 우려가 있었다.
이러한 것으로부터, 본원 발명자는, 상기 제 1 동역학 모델을 사용하여 작성한 순시 목표 보용의 운동을 동역학 모델을 사용하지 않고(운동과 힘의 관계를 나타내는 미분방정식이나 적분방정식을 사용하지 않고), 기하학적인 연산처리에 의해 소정 부위의 위치 및 자세를 보정하여, 순시 목표 상반력과의 사이의 동역학적 정밀도를 높이는(동역학적인 오차를 저감하는) 수법을 앞서 일본 특원 2004-5029호에서 제안했다. 이 수법은, 예를 들면 상기 제 1 동역학 모델을 사용하여 작성한 순시 목표 보용의 상체위치 및 상체자세가 기하학적 연산처리(순시 목표 상반력의 값 이나 그 시계열값, 상체위치 자세의 미분값을 사용하지 않는 연산처리)에 의해 보정된다. 이 수법은 동역학적 연산처리를 필요로 하지 않으므로, 순시 목표 운동의 보정을 단시간에 효율적으로 행하는 것이 가능하다.
그런데, 이 수법에서는, 순시 목표 보용의 발생마다, 동역학적 오차를 작게 하도록 순시 목표 보용의 운동을 기하학적인 연산처리에 의해 보정하는 것이기 때문에, 보정한 부위(상체 등)의 자세가 빈번하게 변동할 우려가 있다.
특히, 상체자세를 보정하는 경우에는, 그 상체자세가 빈번히 변동하면, 이 상체가 일반적으로 무겁고, 또, 이너셔가 비교적 커서, 고관절에 과대한 모멘트가 발생한다. 그 결과, 고관절용 액추에이터에 과대한 부하가 걸리거나, 고관절 부분 및 그 부근이 휘어서 진동하여, 로봇의 안정성이 손상될 우려가 있다. 또, 예를 들면 2족이동 로봇에서는, 그 상체에 시각장치로서의 촬상장치가 지지되는 것이 일반적이므로, 상체자세의 빈번한 변동에 의해 이 촬상장치가 흔들려, 이 촬상장치에 의한 환경인식이 곤란하게 될 우려가 있다. 또한, 상체자세가 빈번하게 변동하는 것은 겉보기에도 좋지 않다.
또한, 상체자세의 변동을 막기 위해서는, 항상 상체자세를 일정하게 유지하는 것도 생각할 수 있다. 이 경우에는, 동역학적 정밀도를 향상시키기 위한 순시 목표 운동의 보정은 주로 상체위치의 보정으로 행하는 것이 가능하다. 그러나, 이와 같이 한 경우에는, 로봇의 운동형태나 바닥면의 마찰 상태에 따라서는, 보정 후의 상체위치의 운동(병진 운동)에 의해 발생할 관성력에 맞는 상반력을 실제로는 발생할 수 없는 경우가 있다. 그리고, 이러한 경우에는, 보정된 순시 목표 운동은 로봇의 슬립을 발생시키는 것으로 되고 만다.
본 발명은 이러한 배경을 감안하여 이루어진 것으로, 동역학 모델을 사용하여 작성된 순시 목표 보용의 운동을, 동역학 모델을 사용하지 않고(운동과 힘의 관계를 나타내는 미분방정식이나 적분방정식을 사용하지 않고), 순시 목표 보용의 상반력과의 사이의 동역학적 정밀도의 향상과, 로봇의 상체 등의 소정 부위의 자세의 변동을 가능한 한 적게 하는 것의 양립을 도모하도록 적절하게 보정할 수 있고, 로봇의 운동을 안정하게 행하는 것을 가능하게 하는 보용을 생성할 수 있는 이동 로봇의 보용생성장치를 제공하는 것을 목적으로 한다.
본 발명의 이동 로봇의 보용생성장치의 제 1 발명은, 상기의 목적을 달성하기 위해, 이동 로봇의 순시 목표 운동과 순시 목표 상반력으로 이루어지는 순시 목표 보용을 차례차례로 발생하는 순시 보용발생수단을 구비한 보용생성장치에 있어서, 상기 순시 목표 운동으로부터 상기 이동 로봇의 소정 부위의 위치 및 자세를 가(假)보정 하여 이루어지는 제 1 가보정 순시 목표 운동을 결정하는 제 1 가보정 운동 결정수단과, 상기 순시 목표 운동으로부터 상기 소정 부위의 자세를 이 순시 목표 운동에서의 자세와 동일하게 유지하면서, 이 소정 부위의 위치를 가보정 하여 이루어지는 제 2 가보정 순시 목표 운동을 결정하는 제 2 가보정 운동 결정수단과, 상기 제 1 가보정 순시 목표 운동과 제 2 가보정 순시 목표 운동을 기초로, 상기 순시 목표 운동에서의 상기 소정 부위의 위치 및 자세의 진(眞)보정을 실행하여 이루어지는 보정 후 순시 목표 운동을 결정하는 목표 운동 보정수단을 구비한다. 그리고, 상기 이동 로봇의 전체 또는 일부를, 이너셔를 갖는 강체와 질점 중 적어도 어느 하나를 요소로 하여, 복수의 요소로 이루어지는 모델로 표현하고, 상기 순시 보용발생수단이 발생한 순시 목표 운동으로부터, 이동 로봇의 순시 운동과 상기 모델의 각 요소의 배치와의 관계를 규정하는 소정의 제 1 기하학적 구속조건에 따라 결정되는 상기 모델의 각 요소의 배치를 제 1 배치로 하고, 상기 제 1 가보정 운동 결정수단이 결정한 제 1 가보정 순시 목표 운동으로부터, 이동 로봇의 순시 운동과 상기 모델의 각 요소의 배치와의 관계를 규정하는 소정의 제 2 기하학적 구속조건에 따라서 결정되는 상기 모델의 각 요소의 배치를 제 2 배치로 하고, 상기 제 2 가보정 운동 결정수단이 결정한 제 2 가보정 순시 목표 운동으로부터, 상기 제 2 기하학적 구속조건에 따라서 결정되는 상기 모델의 각 요소의 배치를 제 3 배치로 했을 때, 상기 제 1 가보정 운동 결정수단은, 상기 제 2 배치와 제 1 배치 사이에서의 상기 모델의 각 요소의 배치의 차를 가속도로 간주함으로써 산출되는 각 요소의 관성력의 합력의 병진력 성분이 거의 0이 되고, 또한, 이 합력이 소정의 점 주위에 발생하는 모멘트 성분이 거의 소정의 값으로 되도록 상기 제 1 가보정 순시 목표 운동을 결정하고, 상기 제 2 가보정 운동 결정수단은, 상기 제 3 배치와 제 1 배치 사이에서의 상기 모델의 각 요소의 배치의 차를 가속도로 간주함으로써 산출되는 각 요소의 관성력의 합력이 상기 소정의 점 주위에 발생하는 모멘트 성분이 거의 상기 소정의 값이 되도록 상기 제 2 가보정 순시 목표 운동을 결정하고, 상기 목표 운동 보정 수단은, 상기 제 1 가보정 순시 목표 운동에서의 상기 소정 부위의 자세에 소정의 가중값 w1을 승산한 것과 상기 제 2 가보정 순시 목표 운동에서의 상기 소정 부위의 자세에 소정의 가중값 w2를 승산한 것의 합을 상기 보정 후 순시 목표 운동에서의 상기 소정 부위의 순시 목표 자세로서 결정함과 동시에, 상기 제 1 가보정 순시 목표 운동에서의 상기 소정 부위의 위치에 상기 소정의 가중값 w1을 승산한 것과 상기 제 2 가보정 순시 목표 운동에서의 상기 소정 부위의 위치에 소정의 가중값 w2를 승산한 것의 합을 상기 보정 후 순시 목표 운동에서의 상기 소정 부위의 순시 목표 위치로서 결정하는 것을 특징으로 한다.
또한, 이 제 1 발명을 포함하여 이후에 설명하는 본 발명에서는, 상기 모델의 요소의 「배치」는, 이 요소로서의 질점의 「위치」와, 이 요소로서의 이너셔를 갖는 강체(링크)의 「자세」(경사각)를 총칭적으로 표현하는 호칭이다. 일반적으로는, 강체는 질량과 이너셔를 갖지만, 편의상, 본 발명에서는, 그 질량 및 이너셔를 갖는 강체는, 상기 질량을 갖고 이 강체의 중심에 위치하는 질점과, 질량이 0이고 상기 이너셔를 갖는 강체로 분해해 두는 것으로 한다. 이렇게 해도 일반성은 상실되지 않는다. 또, 「제 1 배치」, 「제 2 배치」, 「제 3 배치」라고 할 때에는, 그것은, 상기 모델에 포함되는 모든 요소의 배치의 세트를 의미한다.
이러한 제 1 발명에 의하면, 상기 제 1 기하학적 구속조건과, 제 2 기하학적 구속조건을 적절하게 설정하고, 또, 모델을 구성하는 요소를 적절하게 설정해 둠으로써, 상기 제 2 배치와, 제 1 배치와의 차(제 2 배치에서의 각 요소의 배치와 제 1 배치에서의 각 요소의 배치의 차)를, 상기 제 1 가보정 순시 목표 운동(상기 제 1 가보정 순시 목표 운동이 결정한 로봇의 각 부위의 위치와 자세 중 적어도 어느 한쪽의 순시 목표값)과 상기 순시 보용발생수단이 발생한 순시 목표 상반력(로봇에 작용하는 상반력의 병진력과 모멘트 중 적어도 어느 한쪽의 순시 목표값) 사이의 동역학적 오차의 정도(수준)에 대응시키는 것이 가능하게 된다. 마찬가지로, 상기 제 3 배치와, 제 1 배치의 차(제 3 배치에서의 각 요소의 배치와 제 1 배치에서의 각 요소의 배치의 차)를, 상기 제 2 가보정 순시 목표 운동(상기 제 2 가보정 순시 목표 운동이 결정한 로봇의 각 부위의 위치와 자세 중 적어도 어느 한쪽의 순시 목표값)과 상기 순시 보용발생수단이 발생한 순시 목표 상반력과의 사이의 동역학적 오차의 정도(수준)에 대응시키는 것이 가능하게 된다. 보충하면, 이들 대응 관계에는, 일반적으로는 정상적인 오프셋이 존재한다.
그리고, 제 1 발명에서는, 상기 제 2 배치와 제 1 배치 사이에서의 상기 모델의 각 요소의 배치의 차를 가속도로 간주함으로써 산출되는 각 요소의 관성력의 합력의 병진력 성분이 거의 0이 되고, 또한, 이 합력이 소정의 점 주위에 발생하는 모멘트 성분이 거의 소정의 값(어떤 일정한 오프셋 값)이 되도록, 상기 소정 부위의 위치 및 자세를 상기 순시 보용발생수단이 발생한 순시 목표 운동으로부터 가보정한 것으로서의 상기 제 1 가보정 순시 목표 운동이 결정된다. 이것에 의해, 제 1 가보정 순시 목표 운동은 상기 순시 목표 상반력의 병진력 성분 및 모멘트 성분의 양자에 대해 동역학적 정밀도가 높아지는 것으로 된다. 단, 이 제 1 가보정 순시 목표 운동에서의 상기 소정 부위의 자세는 빈번하게 변동할 우려가 있다.
보충하면, 상기 순시 목표 상반력의 병진력 성분이 명시적으로 설정되지 않은 경우에는, 상기 순시 보용발생수단이 보용발생을 위해 사용하는 동역학 모델이 발생하는 상반력의 병진력 성분을 상기 순시 목표 상반력의 병진력 성분으로 간주한다.
한편, 상기 순시 보용발생수단이 발생한 순시 목표 운동으로부터 상기 소정 부위의 위치를 보정한 것으로서의 상기 제 2 가보정 순시 목표 운동은, 상기 소정 부위의 자세를 상기 순시 보용발생수단이 발생한 순시 목표 운동에서의 이 소정 부위의 자세와 동일하게 한 상태(즉 이 소정 부위에 대응하는 모델의 요소의 배치를, 이 순시 목표 운동에서의 소정 부위의 자세에 합치시킨 상태)에서, 상기 제 3 배치와 제 1 배치 사이에서의 상기 모델의 각 요소의 배치의 차를 가속도로 간주함으로써 산출되는 각 요소의 관성력의 합력이 상기 소정의 점 주위에 발생하는 모멘트 성분이 거의 상기 소정의 값이 되도록 결정된다. 이 때문에, 제 2 가보정 순시 목표 운동은, 상기 순시 목표 상반력의 모멘트 성분에 대해 동역학적 정밀도가 높아지는 것으로 됨과 동시에, 상기 소정 부위의 자세가 순시 보용발생수단이 발생한 이 소정 부위의 자세에 유지됨으로써, 그 자세의 변동이 제 1 가보정 순시 목표 운동보다도 제한(억제)된다.
그리고, 제 1 발명에서는, 상기 보정 후 순시 목표 운동에서의 상기 소정 부위의 자세(순시 목표 자세)은, 상기 제 1 가보정 순시 목표 운동에서의 상기 소정 부위의 자세에 소정의 가중값 w1을 승산한 것과 상기 제 2 가보정 순시 목표 운동에서의 상기 소정 부위의 자세에 소정의 가중값 w2를 승산한 것의 합으로서 결정되고, 또 보정 후 순시 목표 운동에서의 상기 소정 부위의 위치(순시 목표 위치)는, 상기 제 1 가보정 순시 목표 운동에서의 상기 소정 부위의 위치에 상기 소정의 가중값 w1을 승산한 것과 상기 제 2 가보정 순시 목표 운동에서의 상기 소정 부위의 위치에 소정의 가중값 w2를 승산한 것의 합으로서 결정된다.
이 결과, 가중값 w1, w2를 적절하게 설정해 둠으로써, 상기 소정 부위의 순시 목표 자세의 과잉한 변동을 억제하면서, 상기 순시 목표 상반력과의 사이의 동역학적 정밀도를 순시 보용발생수단이 발생한 순시 목표 운동보다도 양호하게 확보할 수 있는 보정 후 순시 목표 운동을 결정할 수 있게 된다. 이 경우, 보정 후 순시 목표 운동의 기초가 되는 상기 제 1 가보정 순시 목표 운동 및 제 2 가보정 순시 목표 운동은, 모두 상기 순시 목표 상반력의 모멘트 성분에 대한 동역학적 정밀도가 양호하게 되므로, 보정 후 순시 목표 운동과 순시 목표 상반력의 세트로 이루어지는 보용은 로봇의 전체적인 자세의 안정성을 양호하게 확보할 수 있는 것이 된다. 또, 제 1 및 제 2 가보정 순시 목표 운동은 상기 모델의 요소의 배치의 시간적인 변화(위치나 자세의 1차미분값이나 2차미분값)를 사용하지 않고, 이 요소의 배치에 관한 기하학적인 연산처리에 의해 결정할 수 있다. 또한, 보정 후 순시 목표 운동에서의 소정 부위의 위치 자세는, 단순한 승산, 가산 연산에 의해 결정할 수 있다.
따라서, 제 1 발명에 의하면, 동역학 모델을 사용하지 않고(운동과 힘의 관계를 나타내는 미분방정식이나 적분방정식을 사용하지 않고), 순시 목표 보용의 상반력과의 사이의 동역학적 정밀도의 향상과, 로봇의 상체 등의 소정 부위의 자세의 변동을 최대한 적게 하는 것의 양립을 도모하도록 적절하게 보정할 수 있어, 로봇의 운동을 안정하게 행하는 것을 가능하게 하는 보용을 생성할 수 있다.
보충하면, 제 1 발명에서는, 결과적으로 상기한 바와 같이, 보정 후 순시 목표 운동이 결정되어 있으면 되고, 상기 제 1 배치, 제 2 배치, 제 3 배치를 실제로 요구하거나, 상기 각 요소의 관성력의 합력의 병진력 성분이나, 모멘트 성분을 실제로 구하는 것은 반드시 필요한 것은 아니다.
또, 본 발명의 이동 로봇의 보용생성장치의 제 2 발명은, 이동 로봇의 순시 목표 운동과 순시 목표 상반력으로 이루어지는 순시 목표 보용을 차례차례로 발생하는 순시 보용발생수단을 구비한 보용생성장치에 있어서, 상기 순시 목표 운동으로부터 상기 이동 로봇의 소정 부위의 위치 및 자세를 가보정 하여 이루어지는 가보정 순시 목표 운동을 결정하는 가보정 운동 결정수단과, 상기 순시 목표 운동에서의 상기 소정 부위의 위치 및 자세의 진보정을 실행하여 이루어지는 보정 후 순시 목표 운동을 결정하는 목표 운동 보정 수단을 구비한다. 그리고, 상기 이동 로봇의 전체 또는 일부를, 이너셔를 갖는 강체와 질점 중 적어도 어느 한쪽을 요소로 하여, 복수의 요소로 이루어지는 모델로 표현하고, 상기 순시 보용발생수단이 발생한 순시 목표 운동으로부터, 이동 로봇의 순시 운동과 상기 모델의 각 요소의 배치와의 관계를 규정하는 소정의 제 1 기하학적 구속조건에 따라 결정되는 상기 모델의 각 요소의 배치를 제 1 배치로 하고, 상기 가보정 운동 결정수단이 결정한 가보정 순시 목표 운동으로부터, 이동 로봇의 순시 운동과 상기 모델의 각 요소의 배치와의 관계를 규정하는 소정의 제 2 기하학적 구속조건에 따라서 결정되는 상기 모델의 각 요소의 배치를 제 2 배치로 하고, 상기 목표 운동 보정 수단이 결정하는 보정 후 순시 목표 운동으로부터, 상기 제 2 기하학적 구속조건에 따라서 결정되는 상기 모델의 각 요소의 배치를 제 3 배치로 했을 때, 상기 가보정 운동 결정수단은, 상기 제 2 배치와 제 1 배치 사이에서의 상기 모델의 각 요소의 배치의 차를 가속도로 간주함으로써 산출되는 각 요소의 관성력의 합력의 병진력 성분이 거의 0이 되고, 또한, 이 합력이 소정의 점 주위에 발생하는 모멘트 성분이 거의 소정의 값으로 되도록 상기 가보정 순시 목표 운동을 결정하고, 상기 목표 운동 보정 수단은, 상기 가보정 순시 목표 운동에서의 상기 소정 부위의 자세에 소정의 가중값 w1을 승산한 것과 상기 순시 보용발생수단이 발생한 상기 순시 목표 운동에서의 상기 소정 부위의 자세에 소정의 가중값 w2를 승산한 것과의 합을 상기 보정 후 순시 목표 운동에서의 이 소정 부위의 순시 목표 자세로서 결정함과 동시에, 상기 제 3 배치와 제 1 배치 사이에서의 상기 모델의 각 요소의 배치의 차를 가속도로 간주함으로써 산출되는 각 요소의 관성력의 합력이 소정의 점 주위에 발생하는 모멘트 성분이 거의 소정의 값이 되도록 상기 보정 후 순시 목표 운동에서의 상기 소정 부위의 순시 목표 위치를 결정하는 것을 특징으로 한다.
이러한 제 2 발명에 의하면, 상기 제 1 발명과 동일하게, 상기 제 1 기하학적 구속조건과, 제 2 기하학적 구속조건을 적절하게 설정하고, 또, 모델을 구성하는 요소를 적절하게 설정해 둠으로써 상기 제 2 배치와, 제 1 배치의 차를, 상기 가보정 순시 목표 운동(상기 가보정 순시 목표 운동이 결정한 로봇의 각 부위의 위치와 자세 중 적어도 어느 한쪽의 순시 목표값)과 상기 순시 보용발생수단이 발생한 순시 목표 상반력(로봇에 작용하는 상반력의 병진력과 모멘트와 중 적어도 어느 한쪽의 순시 목표값) 사이의 동역학적 오차의 정도(수준)에 대응시키는 것이 가능하게 된다. 또, 상기 제 3 배치와, 제 1 배치의 차를, 상기 보정 후 순시 목표 운동(상기 목표 운동 보정 수단이 결정한 로봇의 각 부위의 위치와 자세 중 적어도 어느 한쪽의 순시 목표값)과 상기 순시 보용발생수단이 발생한 순시 목표 상반력 사이의 동역학적 오차의 정도(수준)에 대응시키는 것이 가능하게 된다. 보충하면, 이들 대응 관계에는, 일반적으로는 상기 제 1 발명과 같이 정상적인 오프셋이 존재한다.
그리고, 제 2 발명에서는, 상기 제 2 배치와 제 1 배치 사이에서의 상기 모델의 각 요소의 배치의 차를 가속도로 간주함으로써 산출되는 각 요소의 관성력의 합력의 병진력 성분이 거의 0이 되고, 또한, 이 합력이 소정의 점 주위에 발생하는 모멘트 성분이 거의 소정의 값(어떤 일정한 오프셋값)이 되도록, 상기 소정 부위의 위치 및 자세를 상기 순시 보용발생수단이 발생한 순시 목표 운동으로부터 가보정한 것으로서의 상기 가보정 순시 목표 운동이 결정된다. 이 가보정 순시 목표 운동은, 제 1 발명에서의 제 1 가보정 순시 목표 운동과 동등한 것이며, 상기 순시 목표 상반력의 병진력 성분 및 모멘트 성분의 양자에 대해 동역학적 정밀도가 높아지는 것이 된다. 단, 이 가보정 순시 목표 운동에서의 상기 소정 부위의 자세는, 빈번하게 변동될 우려가 있다.
한편, 상기 순시 보용발생수단이 발생한 순시 목표 운동의 진보정 후의 순시 목표 운동으로서의 상기 보정 후 순시 목표 운동은, 상기 소정 부위의 자세를 상기 가보정 순시 목표 운동에서의 이 소정 부위의 자세에 상기 소정의 가중값 w1을 승산한 자세와 상기 순시 보용발생수단이 발생한 순시 목표 운동에서의 이 소정 부위의 자세에 상기 소정의 가중값 w2를 승산한 자세의 합과 동일하게 한 상태(즉 이 소정 부위에 대응하는 모델의 요소의 배치를, 이 가보정 순시 목표 운동에서의 소정 부위의 자세에 가중값 w1을 승산한 자세와 상기 순시 보용발생수단이 발생한 순시 목표 운동에서의 소정 부위의 자세에 가중값 w2를 승산한 자세와의 합치시킨 상태)에서, 상기 제 3 배치와 제 1 배치 사이에서의 상기 모델의 각 요소의 배치의 차를 가속도로 간주함으로써 산출되는 각 요소의 관성력의 합력이 상기 소정의 점 주위에 발생하는 모멘트 성분이 거의 상기 소정의 값이 되도록 결정된다. 여기에서, 상기 가보정 순시 목표 운동으로부터, 상기 소정 부위의 자세만을, 이 가보정 순시 목표 운동에서의 소정 부위의 자세에 가중값 w1을 승산한 자세와 상기 순시 보용발생수단이 발생한 순시 목표 운동에서의 소정 부위의 자세에 소정의 가중값 w2를 승산한 자세와의 합으로 변경하여 이루어지는 순시 운동에 대응하여, 상기 제 2 기하학적 조건에 따라 결정되는 상기 모델의 요소의 배치를 제 4 배치라고 했을 때, 그 제 4 배치의 질량중심의 위치와, 상기 제 2 배치의 질량중심의 위치의 차는 일반적으로는 비교적 작다. 따라서, 상기한 바와 같이 보정 후 순시 목표 운동을 결정함으로써, 그 보정 후 순시 목표 운동은, 상기 순시 목표 상반력의 모멘트 성분에 대해 동역학적 정밀도가 높아지는 것으로 됨과 동시에, 순시 목표 상반력의 병진력 성분에 대해서도 양호한 동역학적 정밀도를 확보할 수 있는 것으로 된다. 또한 상기 소정 부위의 자세가 가보정 순시 목표 운동에서의 이 소정 부위의 자세에 가중값 w1을 승산한 자세와 순시 보용발생수단이 발생한 순시 목표 운동에서의 소정 부위의 자세에 가중값 w2를 승산한 자세와의 합에 규제됨으로써 가중값 w1, w2를 적절하게 설정해 둠으로써 그 자세의 변동이 가보정 순시 목표 운동보다도 제한(억제)된다.
이 결과, 상기 소정 부위의 순시 목표 자세의 과잉한 변동을 억제하면서, 상기 순시 목표 상반력과의 사이의 동역학적 정밀도를 순시 보용발생수단이 발생한 순시 목표 운동보다도 양호하게 확보할 수 있는 보정 후 순시 목표 운동을 결정할 수 있게 된다. 이 경우, 보정 후 순시 목표 운동은, 상기 순시 목표 상반력의 모멘트 성분뿐만 아니라, 병진력 성분에 대해서도 동역학적 정밀도가 양호하게 되므로, 보정 후 순시 목표 운동과 순시 목표 상반력의 세트로 이루어지는 보용은 이동 로봇의 전체적인 자세의 안정성을 보다 양호하게 확보할 수 있는 것으로 된다. 또, 가보정 순시 목표 운동 및 보정 후 순시 목표 운동은, 상기 모델의 요소의 배치의 시간적인 변화(위치나 자세의 1차미분값이나 2차미분값)를 사용하지 않고, 이 요소의 배치에 관한 기하학적인 연산처리에 의해 결정할 수 있다.
따라서, 제 2 발명에 의하면, 동역학 모델을 사용하지 않고(운동과 힘의 관계를 나타내는 미분방정식이나 적분방정식을 사용하지 않고), 순시 목표 보용의 상반력과의 사이의 동역학적 정밀도의 향상과, 이동 로봇의 상체 등의 소정 부위의 자세의 변동을 가능한 한 적게 하는 것의 양립을 도모하도록 적절하게 보정할 수 있어, 이동 로봇의 운동을 안정하게 행하는 것을 가능하게 하는 보용을 생성할 수 있다.
보충하면, 제 2 발명에서는, 결과적으로 상기한 바와 같이, 보정 후 순시 목표 운동이 결정되어 있으면 되고, 상기 제 1 배치, 제 2 배치, 제 3 배치를 실제로 구하거나, 상기 각 요소의 관성력의 합력의 병진력 성분이나, 모멘트 성분을 실제로 구하는 것은 반드시 필요한 것은 아니다.
상기 제 1 발명에서는, 상기 소정의 가중값 w1, w2는, 기본적으로는 0부터 1의 범위 내의 크기(예를 들면 0.3, 0.7 등)의 가중값에 설정해 두면 되는데, 그 크기가 일정하면, 이동 로봇의 운동형태나 노면 상태에 따라서는, 상기 보정 후 순시 목표 운동에서의 로봇의 질량중심의 병진관성력의 수평성분이, 이동 로봇과 바닥 사이의 마찰력에 의해 발생시킬 수 있는 상반력 수평성분과 균형을 이루지 못할 우려가 있다. 그리고, 이것은, 상기 제 2 발명에서도 동일하다.
그래서, 상기 제 1 발명 및 제 2 발명에서는, 상기 소정의 가중값 w1 및 소정의 가중값 w2는, 모두, 그 크기가 0부터 1까지의 범위내의 크기이고, 적어도 상기 소정의 가중값 w1을, 상기 목표 보용에 따라 상기 이동 로봇의 동작을 행하게 하려고 하는 노면상태 및/또는 이 목표 보용에 따른 이동 로봇의 운동형태에 따라 가변적으로 결정하는 수단을 구비하는 것이 바람직하다(제 3 발명). 그리고, 이 경우, 상기 소정의 가중값 w1의 크기와 상기 소정의 가중값 w2의 크기와의 합은 1인 것이 바람직하다(제 4 발명).
상기 제 3 발명에서는, 상기한 바와 같이 가중값 w1, w2를 가변적으로 설정함으로써, 이동 로봇의 소정 부위의 자세를, 노면상태나 이동 로봇의 운동형태에 적합한 자세로 제한하면서, 동역학적 정밀도도 양호하게 확보할 수 있는 보정 후 순시 목표 운동을 결정할 수 있다. 또한, 제 4 발명에서는, 가중값 w1의 크기와 가중값 w2의 크기와의 합을 1로 함으로써, 상기 보정 후 순시 목표 운동에서의 소정 부위의 위치는, 상기 제 1 가보정 순시 목표 운동에서의 소정 부위의 위치와, 제 2 가보정 순시 목표 운동에서의 소정 부위의 위치의 가중평균값이 되므로, 보정 후 순시 목표 운동과 순시 목표 상반력의 모멘트 성분 사이의 동역학적 정밀도와, 보정 후 순시 목표 운동과 순시 목표 상반력의 병진력 성분 사이의 동역학적 정밀도의 밸런스를 적합하게 유지하면서 보정 후 순시 목표 운동을 결정할 수 있다.
또, 제 4 발명에서는, 제 3 발명과 동일하게, 이동 로봇의 소정 부위의 자세를, 노면상태나 이동 로봇의 운동형태에 적합한 자세로 제한하면서, 동역학적 정밀도도 양호하게 확보할 수 있는 보정 후 순시 목표 운동을 결정할 수 있다.
또한, 이동 로봇이 예를 들면 2족이동 로봇일 때에는, 상기 운동형태로서는 예를 들면 이동 로봇의 보행, 주행 등의 운동형태를 들 수 있다. 또, 상기 노면상태는 노면(바닥면)의 마찰계수 등의 마찰상태를 포함하는 것이 바람직하다.
상기 제 1~제 4 발명에서는, 상기 소정의 가중값 w1은, 단순한 실수값이어도 되지만, 이것을 승산하는 상기 소정 부위의 자세에 대해 주파수특성을 갖는 가중값(이)이어도 된다(제 5 발명). 또한, 가중값 w1이 주파수특성을 갖는다는 것은, 소정 부위의 자세의 시계열을 주파수영역으로 표현했을 때의 각 주파수성분에 대한 가중값 w1의 게인(스펙트럼)이 주파수에 따라 변화되는 것을 의미한다. 이러한 가중값 w1은, 일반적으로 복소수를 사용한 전달함수로 표현되고, 필터로서 기능하는 것이 된다.
이와 같이 가중값 w1에 주파수특성을 가지게 함으로써, 상기 제 1 발명에서의 제 1 가보정 순시 목표 운동에서의 상기 소정 부위의 자세, 또는 상기 제 2 발명에서의 가보정 순시 목표 운동에서의 상기 소정 부위의 자세로부터 소요의 주파수성분을 제거하여 보정 후 순시 목표 운동에서의 상기 소정 부위의 자세를 결정할 수 있다. 이 경우, 가중값 w1의 주파수특성을 예를 들면 로 컷 특성(저주파 성분을 차단하는 특성)으로 하면, 상기 제 1 가보정 순시 목표 운동(제 1 발명 및 이것에 종속하는 제 3 및 제 4 발명) 또는 상기 가보정 순시 목표 운동(제 2 발명 및 이것에 종속하는 제 3 및 제 4 발명)에서의 상기 소정 부위의 자세에, 상기 모델의 오차 등에 기인하여 정상적인 오프셋(오차분)이 발생하는 경우에, 그것을 제거할 수 있다. 또, 가중값 w1의 주파수특성을 예를 들면 하이컷 특성(고주파성분을 차단하는 특성)으로 하면, 상기 제 1 가보정 순시 목표 운동(제 1 발명 및 이것에 종속하는 제 3 및 제 4 발명) 또는 상기 가보정 순시 목표 운동(제 2 발명 및 이것에 종속하는 제 3 및 제 4 발명)에서의 상기 소정 부위의 자세에 미세한 진동이 발생하는 것과 같은 경우에, 그것을 제거할 수 있다.
그런데, 상기 제 1~제 5 발명에서, 상기 모멘트 성분 중, 상기 모델의 이너셔를 갖는 요소(강체)의 배치의 차(자세의 차)에 기인하는 성분은 그 요소의 자세의 차(경사각의 차)와 그 요소의 이너셔의 값과의 적에 상당하는 것이 된다. 또, 상기 모델의 질량을 갖는 요소의 배치의 차(위치의 차)에 기인하는 성분은, 그 위치의 차와 이 요소의 상기 소정의 점으로부터의 거리를 각각 벡터로 나타냈을 때의 그들 벡터의 적(외적)에 이 요소의 질량을 승산한 것에 상당한다. 그리고, 이 경우, 질량을 갖는 요소의 배치의 차(위치의 차)에 기인하는 성분은, 그 위치의 차에 관계되는 2개의 위치중 일방의 위치와 상기 소정의 점을 연결하는 선분과, 당해 2개의 위치중 타방의 위치와 상기 소정의 점을 연결하는 선분이 이루는 각도에 따른 것(보다 상세하게는 이 각도에 따라 단조롭게 증가 혹은 감소하는 것)이 된다.
그래서, 본 발명의 제 6 발명은, 상기 제 1~제 5 발명에 있어서, 상기 제 2 배치와 제 1 배치 사이의 각 요소의 배치의 차에 관계되는 상기 모멘트 성분 중, 상기 모델의 질량을 갖는 각 요소중, 상기 제 1 배치에서의 위치(A)와 상기 제 2 배치에서의 위치(B)의 차에 기인하는 성분은, 상기 소정의 점과 상기 위치(A)를 연결하는 선분과, 상기 소정의 점과 상기 위치(B)를 연결하는 선분이 이루는 각도로부터, 이 각도에 관한 실질적으로 단조로운 함수를 사용하여 산출되고, 상기 제 3 배치와 제 1 배치 사이의 각 요소의 배치의 차에 관계되는 상기 모멘트 성분 중, 상기 모델의 질량을 갖는 각 요소중, 상기 제 1 배치에서의 위치(A)와 상기 제 3 배치에서의 위치(C)의 차에 기인하는 성분은, 상기 소정의 점과 상기 위치(A)를 연결하는 선분과, 상기 소정의 점과 상기 위치(C)를 연결하는 선분이 이루는 각도로부터 상기 단조로운 함수를 사용하여 산출되는 것을 특징으로 한다.
이렇게 함으로써, 상기 모멘트 성분을 산출할 때, 벡터 연산이 불필요하게 되어, 그 산출이 용이하게 된다.
상기 제 1~제 6 발명은, 상기 순시 보용발생수단이 발생하는 순시 목표 운동이, 상기 이동 로봇의 운동과 상반력과의 관계를 의미하는 동역학 모델로서, 적어도 이 이동 로봇의 1개 이상의 특정 부위의 특정한 운동성분에 의해 발생하는 관성력이 거의 0인 것으로 하여 구축된 동역학 모델을 사용하여 결정되어 있고, 상기 모델이, 상기 특정 부위 중 적어도 1개의 부위에 대응하는 요소를 포함하는 경우에 바람직하다(제 7 발명).
즉, 상기 순시 목표 운동이, 이동 로봇의 1개 이상의 특정 부위의 특정한 운동성분(어떤 방향의 병진 운동, 회전운동 등)에 의해 발생하는 관성력이 거의 0인 것으로 하여 구축된 동역학 모델을 사용하여 결정되어 있을 때에는, 그 특정 부위가 비교적 큰 관성력을 발생하는 목표 보용을 생성할 때에, 순시 보용발생수단이 발생하는 순시 목표 운동과 순시 목표 상반력 사이의 동역학적 정밀도가 저하도기 쉽다. 이 경우, 제 7 발명에서는, 그 특정 부위 중 적어도 1개의 부위에 대응하는 요소를 상기 모델에 포함시키고 있으므로, 상기 보정 후 순시 목표 운동과 순시 목표 상반력 사이의 동역학적 정밀도를 적확하게 높일 수 있다.
또, 상기 제 1~6발명에 있어서, 상기 순시 보용발생수단이 발생하는 순시 목표 운동은, 상기 이동 로봇의 운동과 상반력과의 관계를 의미하는 소정의 동역학 모델상에서의 목표 상반력 또는 목표 ZMP를 만족하도록 결정되어 있고, 상기 순시 목표 운동으로부터, 상기 제 1 기하학적 구속조건에 따라 결정되는 상기 모델의 각 요소의 배치의 시간적 변화에 의해 발생하는 각 요소의 관성력의 합력과 균형을 이루는 상반력과, 상기 순시 목표 운동으로부터, 상기 제 2 기하학적 구속조건에 따라 결정되는 상기 모델의 각 요소의 배치의 시간적 변화에 의해 발생하는 각 요소의 관성력의 합력과 균형을 이루는 상반력과의 차에 소정의 정상 오프셋을 가산한 것이, 상기 순시 목표 운동에 의해 상기 동역학 모델에서 발생하는 상반력의 오차에 대략 일치하도록 상기 제 1 및 제 2 기하학적 구속조건이 설정되어 있는 것이 바람직하다(제 8 발명).
이 제 8 발명에 의하면, 상기 순시 보용발생수단이 발생하는 순시 목표 운동과 순시 목표 상반력 사이의 동역학적 오차가, 이 순시 목표 운동으로부터 상기 제 1 기하학적 구속조건에 따라서 결정되는 상기 모델의 각 요소의 배치와, 이 순시 목표 운동으로부터 상기 제 2 기하학적 구속조건에 따라 결정되는 상기 모델의 각 요소의 배치와의 차(모델의 질점의 위치의 차, 또는 모델의 강체의 자세의 차)에 대응하는 것이 된다. 따라서, 상기한 바와 같이 제 1 발명에 따른 제 1 가보정 순시 목표 운동 및 제 2 가보정 순시 목표 운동을 결정하고, 또한, 이들 가보정 순시 목표 운동으로부터 보정 후 순시 목표 운동을 결정함으로써 상기 순시 보용발생수단이 발생한 순시 목표 상반력과의 사이의 동역학적 정밀도를, 이 순시 보용발생수단이 발생한 순시 목표 운동보다도 높일 수 있는 보정 후 순시 목표 운동을 적절하게 결정할 수 있음과 동시에, 상기 소정 부위의 자세의 변동을 억제할 수 있다. 마찬가지로, 상기한 바와 같이 제 2 발명에 따른 가보정 순시 목표 운동을 결정하고, 또한 이 가보정 순시 목표 운동에서의 상기 소정 부위의 자세와 동일한 자세로 한 보정 후 순시 목표 운동을 결정함으로써 상기 순시 보용발생수단이 발생한 순시 목표 상반력과의 사이의 동역학적 정밀도를, 이 순시 보용발생수단이 발생한 순시 목표 운동보다도 높일 수 있는 보정 후 순시 목표 운동을 적절하게 결정할 수 있음과 동시에, 상기 소정 부위의 자세의 변동을 억제할 수 있다.
또, 상기 제 1~제 6 발명에서, 상기 순시 보용발생수단이 발생하는 순시 목표 운동은, 상기 이동 로봇의 운동과 상반력과의 관계를 의미하는 소정의 동역학 모델상에서의 목표 상반력 또는 목표 ZMP를 만족하도록 결정되어 있고, 상기 순시 목표 운동으로부터, 상기 제 1 기하학적 구속조건에 따라 결정되는 상기 모델의 각 요소의 배치의 질량중심과, 상기 순시 목표 운동으로부터, 상기 제 2 기하학적 구속조건에 따라 결정되는 상기 모델의 각 요소의 배치의 질량중심과의 차에 이 요소의 총 질량을 승산한 것이, 상기 순시 목표 운동에서의 상기 동역학 모델의 질량중심의 오차에 이 동역학 모델의 총 질량을 승산한 것에 대략 일치하도록 상기 제 1 및 제 2 기하학적 구속조건을 설정하도록 해도 된다(제 9 발명).
이것에 의해, 상기 제 1 발명에 따른 제 1 가보정 순시 목표 운동과 상기 순시 목표 상반력과의 사이의 동역학적 정밀도나, 상기 제 2 가보정 순시 목표 운동과 상기 순시 목표 상반력과의 사이의 동역학적 정밀도를 저하시키는 요인의 하나인 상기 동역학 모델의 질량중심 위치의 오차의 영향을 없앨 수 있다. 마찬가지로, 상기 제 2 발명에 따른 가보정 순시 목표 운동과 상기 순시 목표 상반력과의 사이의 동역학적 정밀도나, 상기 보정 후 순시 목표 운동과 상기 순시 목표 상반력 사이의 동역학적 정밀도에 대해서도, 상기 동역학 모델의 질량중심 위치의 오차의 영향을 없앨 수 있다. 그 결과, 제 1 또는 제 2 발명에 따른 상기 보정 후 순시 목표 운동과 순시 목표 상반력 사이의 동역학적 정밀도를 양호하게 높일 수 있다.
또한, 상기 제 7~제 9 발명은, 그 2개 이상을 조합시켜도 되는 것은 물론이다.
또, 상기 제 1~제 9 발명에 있어서, 상기 이동 로봇이, 상체로부터 연장하여 설치된 복수의 다리체 또는 복수의 팔체를 복수의 가동체로서 구비하는 로봇일 때에는, 상기 제 1 기하학적 구속조건은, 각 가동체의 선단부 근방의 소정의 점과, 이 가동체의 상기 상체와의 연결부 근방의 소정의 점을 연결하는 선분에 평행한 직선상에 상기 모델의 요소 중 어느 하나가 존재한다고 하는 조건을 포함하는 것이 바람직하다(제 10 발명). 또는, 상기 제 1 기하학적 구속조건은, 상기 모델상에서의 상기 상체와 각 가동체가 소정의 일정 자세 상태에 유지된다고 하는 조건을 포함하는 것이 바람직하다(제 11 발명). 그리고, 이 제 11 발명에서는, 상기 소정의 일정 자세는, 상기 이동 로봇의 상체와 복수의 가동체를 거의 연직방향으로 향하게 한 자세인 것이 바람직하다(제 12 발명).
또, 제 1~제 12 발명에 있어서, 상기 제 2 기하학적 구속조건은, 상기 이동 로봇의 임의의 순시 목표 운동으로부터, 그 조건에 따라서 결정되는 상기 모델의 각 요소의 배치가, 상기 순시 목표 운동에 따르는 상기 로봇에서의 이 요소에 대응하는 부위의 배치에 대략 일치하도록 설정되어 있는 것이 바람직하다(제 13 발명).
이와 같이 제 1 및 제 2 기하학적 구속조건을 정함으로써, 상기 순시 목표 운동으로부터, 상기 제 1 기하학적 구속조건에 따라서 결정되는 상기 모델의 각 요소의 배치와, 이 순시 목표 운동으로부터, 상기 제 2 기하학적 구속조건에 따라서 결정되는 상기 모델의 각 요소의 배치와의 차를, 이 순시 목표 운동과 상기 순시 보용발생수단이 발생한 순시 목표 상반력 사이의 동역학적 오차에 적합하게 대응시키는 것이 가능하게 된다.
또, 상기 제 1~제 6 발명에 있어서, 상기 이동 로봇이, 상체로부터 연장하여 설치된 복수의 다리체 또는 복수의 팔체를 복수의 가동체로서 구비함과 동시에, 각 가동체의 상체와의 연결부와 이 가동체의 선단부와의 사이의 중간부에 굴곡가능한 관절을 갖고, 또한 상기 순시 보용발생수단이 발생하는 순시 목표 운동이, 상기 로봇의 운동과 상반력과의 관계를 의미하는 동역학 모델로서, 각 가동체의 굴신 운동에 기인하여 이 가동체의 중간부 혹은 그 근방에서 발생하는 관성력이 거의 0인 것으로 하여 구축된 동역학 모델을 사용하여 결정되어 있을 때에는, 상기 모델은 적어도 상기 각 가동체의 중간부 혹은 그 근방 부위에 대응시킨 질점을 요소로서 포함하는 모델인 것이 바람직하다(제 14 발명).
즉, 상기 순시 목표 운동이, 각 가동체의 굴신 운동에 기인하여 이 가동체의 중간부 혹은 그 근방에서 발생하는 관성력이 거의 0인 것으로 하여(즉, 이 관성력을 무시하여) 구축된 동역학 모델을 사용하여 결정되어 있을 경우에는, 각 가동체의 굴신 운동이 비교적 재빠르게 행해지는 목표 보용을 생성할 때에, 상기 순시 보용발생수단이 발생하는 순시 목표 운동과 순시 목표 상반력과의 사이의 동역학적인 정밀도가 저하되기 쉽다. 그래서, 제 15 발명과 같이, 상기 모델에서, 각 가동체의 중간부 혹은 그 근방부위에 대응시킨 질점을 요소로 하여 포함시킴으로써, 상기 제 1 발명에 따른 제 1 및 제 2 가보정 순시 목표 운동, 또는, 상기 제 2 발명에 따른 가보정 순시 목표 운동 및 보정 후 순시 목표 운동을 상기 제 1 또는 제 2 발명에 관하여 설명한 바와 같이 결정할 때, 각 가동체의 중간부의 관절의 굴곡동작에 의한 이 가동체의 굴신 운동에 수반되는 관성력의 영향을 보상하도록 하여, 그것들의 순시 목표 운동을 결정할 수 있게 된다. 이 때문에, 그들 결정되는 순시 목표 운동과 순시 보용발생수단이 결정하는 순시 목표 상반력 사이의 동역학적 정밀도를 높일 수 있다. 그 결과, 상기 제 1 또는 제 2 발명에 따른 보정 후 순시 목표 운동과 상기 순시 목표 상반력으로 구성되는 순시 보용은, 상기 소정 부위의 자세의 변동을 억제하면서, 순시 보용발생수단이 발생하는 순시 보용보다도 동역학적 정밀도가 높은 것으로 할 수 있다.
이 제 14 발명에 있어서, 상기 제 1 기하학 구속조건은, 예를 들면 상기 제 10 발명 또는 제 11 발명과 동일하게 설정하면 되고, 또, 제 2 기하학적 구속조건은 상기 제 13 발명과 동일하게 설정하면 된다. 그리고, 특히, 제 1 및 제 2 기하학적 구속조건을, 각각, 제 10 발명, 제 13 발명과 같이 설정하는 것이 바람직하다.
즉, 상기 제 1 기하학적 구속조건은, 각 가동체의 선단부 근방의 소정의 점과, 이 가동체의 상기 상체와의 연결부 근방의 소정의 점을 연결하는 선분에, 상기 모델의 요소 중, 이 가동체의 중간부 혹은 그 근방부위에 대응시킨 질점이 존재한다는 조건을 포함하고, 상기 제 2 기하학적 구속조건은, 상기 이동 로봇의 임의의 순시 목표 운동으로부터, 그 조건에 따라서 결정되는 상기 모델의 각 요소의 배치가, 상기 순시 목표 운동에 따르는 상기 로봇에서의 이 요소에 대응하는 부위의 배치에 대략 일치하도록 설정되어 있는 것이 바람직하다(제 15 발명).
이와 같이 했을 때, 상기 순시 보용발생수단이 발생하는 순시 목표 운동으로부터 상기 제 2 기하학적 구속조건에 따라 상기 모델의 각 요소의 배치를 결정했을 때, 그 배치에서의 각 가동체의 중간부 혹은 그 근방부위에 대응하는 상기 모델의 질점(이하, 여기에서는 가동체 중간 질점이라고 함)과, 상기 제 1 배치에서의 가동체 중간 질점(이것은 상기 선분상에 있음)과의 위치의 차가, 각 가동체의 중간부의 관절의 굴곡동작에 수반되는 관성력에 상당하는 것이 된다. 그리고, 그 관성력이 순시 보용발생수단이 발생하는 순시 목표 상반력의 오차분에 대응하는 것이 된다. 이 때문에, 상기 제 1 발명에 따른 제 1 및 제 2 가보정 순시 목표 운동,또는, 상기 제 2 발명에 따른 가보정 순시 목표 운동 및 보정 후 순시 목표 운동을 상기 제 1 또는 제 2 발명에 관하여 설명한 바와 같이 결정함으로써 각 가동체의 중간부의 관절의 굴곡동작에 의한 이 가동체의 굴신 운동에 수반되는 관성력의 영향을 보상하여, 그들 순시 목표 운동과 순시 목표 상반력 사이의 동역학적 정밀도를 높일 수 있다. 나아가서는, 제 1 발명 또는 제 2 발명에 따른 보정 후 순시 목표 운동과 순시 목표 상반력 사이의 동역학적 정밀도를 효과적으로 높이면서, 상기 소정 부위의 자세의 변동을 억제할 수 있다.
도 1은 본 발명의 실시형태를 적용하는 이동 로봇(2족보행 로봇)의 전체구성의 개략을 도시하는 도면,
도 2는 도 1의 로봇의 각 다리체의 족평 부분의 구성을 도시하는 측면도,
도 3은 도 1의 로봇에 구비한 제어 유닛의 구성을 도시하는 블럭도,
도 4는 도 3의 제어 유닛의 기능적 구성을 도시하는 블럭도,
도 5는 도 4에 도시하는 보용생성장치의 기능을 도시하는 블럭도,
도 6은 제 1 실시형태에서의 단순화 모델(동역학 모델)의 구조를 도시하는 도면,
도 7(a)~(c)는 제 1 실시형태에서의 제 1 변위차원 보정용 모델과 단순화 모델과의 관계를 도시하는 도면,
도 8은 제 1 실시형태에서의 제 2 변위차원 보정용 모델의 구조를 도시하는 도면,
도 9는 제 1 실시형태에서의 보용생성장치의 메인루틴 처리를 도시하는 플로우차트,
도 10은 제 1 실시형태에서의 도 9의 플로우차트의 변위차원 보용 보정 서브루틴의 처리를 도시하는 플로우차트,
도 11은 제 1 실시형태에서의 도 10의 S100의 서브루틴 처리를 도시하는 플로우차트,
도 12는 제 1 실시형태에서의 도 10의 S102의 서브루틴 처리를 도시하는 플로우차트,
도 13은 제 1 실시형태에서의 각운동량 적의 산출을 설명하기 위한 도면,
도 14는 제 1 실시형태에서의 제 1 및 제 2 변위차원 보정용 모델의 요소의 배치예를 도시하는 도면,
도 15는 제 1 실시형태에서의 제 1 및 제 2 변위차원 보정용 모델의 요소의 배치예를 도시하는 도면,
도 16은 제 1 실시형태에서의 제 1 및 제 2 변위차원 보정용 모델의 요소의 배치예를 도시하는 도면,
도 17은 풀 모델 보정에서 사용하는 풀 모델의 예를 도시하는 도면,
도 18은 제 2 실시형태에서의 단순화 모델(동역학 모델)의 구조를 도시하는 도면,
도 19는 제 2 실시형태에서의 제 1 변위차원 보정용 모델의 구조를 도시하는 도면,
도 20은 제 2 실시형태에서의 제 1 및 제 2 변위차원 보정용 모델의 요소의 배치예를 도시하는 도면,
도 21은 제 2 실시형태에서의 제 1 및 제 2 변위차원 보정용 모델의 요소의 배치예를 도시하는 도면,
도 22는 제 2 실시형태에서의 제 1 및 제 2 변위차원 보정용 모델의 요소의 배치예를 도시하는 도면,
도 23은 제 3 실시형태에서의 도 9의 플로우차트의 변위차원 보용 보정 서브루틴의 처리를 도시하는 플로우차트,
도 24는 도 23의 S506의 서브루틴 처리를 도시하는 플로우차트,
도 25는 제 3 실시형태에서의 제 1 및 제 2 변위차원 보정용 모델의 요소의 배치예를 도시하는 도면,
도 26 (a) 및 (b)는 가중값 w1에 주파수특성을 갖게 한 예를 도시하는 그래프,
도 27은 제 1 및 제 2 변위차원 보정용 모델의 요소의 배치의 다른 예를 도시하는 도면이다.
이하, 첨부된 도면을 참조해서 본 발명의 실시형태를 설명한다. 또한, 본 명세서의 실시형태에서는, 이동 로봇으로서는 2족이동 로봇을 예로 든다.
도 1은 본 발명의 실시형태를 적용하는 2족이동 로봇의 전체적 구성의 개략을 도시하는 개략도이다.
도시한 바와 같이, 2족이동 로봇(이하, 로봇이라고 함)(1)은 상체(로봇(1)의 기체)(3)로부터 하방으로 연장하여 설치된 좌우 한쌍의 다리체(2, 2)를 갖는다. 상체(3)는 본 발명에서의 「소정 부위」에 상당하는 것이다. 양다리체(2, 2)는 동일구조이며, 각각 6개의 관절을 갖는다. 그 6개의 관절은 상체(3)측으로부터 순차적으로, 가랑이(허리부)의 선회(회전)용(상체(3)에 대한 요잉 방향의 회전용)의 관절(10R, 10L)과, 가랑이(허리부)의 롤링 방향(X축 주위)의 회전용의 관절(12R, 12L)과, 가랑이(허리부)의 피칭 방향(Y축 주위)의 회전용의 관절(14R, 14L), 무릎부의 피칭 방향의 회전용의 관절(16R, 16L)과, 발목의 피칭 방향의 회전용의 관절(18R, 18L)과, 발목의 롤링 방향의 회전용의 관절(20R, 20L)로 구성된다. 또한, 본 명세서에서, 부호 R, L은 각각 로봇(1)의 우측, 좌측에 대응하는 것을 의미하는 부호이다.
각 다리체(2)의 발목의 2개의 관절(18R(L), 20R(L))의 하부에는, 각 다리체(2)의 선단부를 구성하는 족평(足平)(족부)(22R(L))가 부착됨과 동시에, 양다리체(2, 2)의 최상위에는, 각 다리체(2)의 가랑이의 3개의 관절 10R(L), 12R(L), 14R(L)을 통하여 상기 상체(3)가 부착되어 있다. 상체(3)의 내부에는, 상세를 후술하는 제어 유닛(60) 등이 격납된다. 또한, 도 1에서는 도시의 편의상, 제어 유닛(60)을 상체(3)의 외부에 기재하고 있다.
상기 구성의 각 다리체(2)에서는, 고관절(혹은 허리관절)은 관절 10R(L), 12R(L), 14R(L)로 구성되고, 무릎관절은 관절 16R(L)로 구성되고, 발목관절은 관절 18R(L), 20R(L)로 구성된다. 또 고관절과 무릎관절은 대퇴 링크(24R(L))로 연결되고, 무릎관절과 발목관절은 하퇴링크(26R(L))로 연결된다.
또한, 본 명세서에서는, 로봇(1)의 「링크」는 로봇(1)의 강체로 간주할 수 있는 부위의 의미로 사용한다. 예를 들면 상체(3)도 1개의 링크(강체)이며, 그 의미에서 상체(3)를 상체 링크라고 하는 경우도 있다.
상체(3)의 상부의 양측부에는 좌우 한쌍의 팔체(5, 5)가 부착되어 있음과 동시에, 상체(3)의 상단부에는 머리부(4)가 배치된다. 각 팔체(5)는 3개의 관절 30R(L), 32R(L), 34R(L)로 구성된 어깨관절과, 관절 36R(L)로 구성된 팔꿈치관절과, 관절 38R(L)로 구성된 손목관절과, 이 손목관절에 연결된 손끝부 40R(L)을 구비하고 있다. 어깨관절과 팔꿈치 관절 사이, 및 팔꿈치관절과 손목관절 사이는 각각 링크로 구성되어 있다.
상기의 로봇(1)의 구성에 의해, 각 다리체(2)의 족평(22R(L))은, 상체(3)에 대해 6개의 자유도를 부여받고 있다. 그리고, 로봇(1)의 보행 등의 이동중에, 양다리체(2, 2)를 합해서 6*2=12개(이 명세서에서 「*」은 스칼라에 대한 연산으로서는 승산을, 벡터에 대한 연산으로서는 외적을 나타냄)의 관절을 적당한 각도로 구동함으로써, 양 족평(22R, 22L)의 원하는 운동을 행할 수 있다. 이것에 의해, 로봇(1)은 임의로 3차원 공간을 이동할 수 있다. 또, 각 팔체(5)는 그 어깨관절, 팔꿈치관절, 손목관절의 회전에 따라, 팔흔들기 등의 운동을 행할 수 있다.
도 1에 도시하는 바와 같이, 각 다리체(2)의 발목관절(18R(L),20R(L))의 하 방에는 족평(22R(L))과의 사이에 공지의 6축력센서(50)가 개재되어 있다. 이 6축력센서(50)는, 각 다리체(2)의 족평(22R(L))의 착지의 유무, 및 각 다리체(2)에 작용하는 상반력(접지하중) 등을 검출하기 위한 것으로, 이 상반력의 병진력의 3방향 성분Fx, Fy, Fz에 및 모멘트의 3방향성분 Mx, My, Mz의 검출신호를 제어 유닛(60)에 출력한다. 또, 상체(3)에는, Z축(연직방향(중력방향))에 대한 상체(3)의 경사각 및 그 각속도를 검출하기 위한 자세 센서(54)가 구비되고, 그 검출신호가 이 자세 센서(54)로부터 제어 유닛(60)에 출력된다. 이 자세 센서(54)는 도시를 생략하는 가속도 센서 및 자이로 센서를 구비하고, 이들 센서의 검출신호가 상체(3)의 경사각 및 그 각속도를 검출하기 위해서 사용된다. 또, 상세구조의 도시는 생략하지만, 로봇(1)의 각 관절에는, 그것을 구동하기 위한 전동 모터(64)(도 3 참조)와, 그 전동 모터(64)의 회전량(각 관절의 회전각)을 검출하기 위한 인코더(로터리 인코더)(65)(도 3 참조)가 설치되고, 이 인코더(65)의 검출신호가 이 인코더(65)로부터 제어 유닛(60)에 출력된다.
또한, 도 1에서는 도시를 생략하지만, 로봇(1)의 외부에는, 로봇(1)을 조종하기 위한 조이스틱(조작기)(73)(도 3 참조)이 설치되고, 그 조이스틱(73)을 조작함으로써, 직진이동 하고 있는 로봇(1)을 선회시키는, 로봇(1)의 이동방향을 지정하는, 로봇(1)의 보행, 주행 등의 운동형태 및 바닥면의 마찰상태(노면상태)를 규정하는 동작의 모드를 지정하는 등, 로봇(1)의 보용에 대한 요구 혹은 제약을 필요에 따라서 제어 유닛(60)에 입력할 수 있도록 구성되어 있다. 조이스틱(73)은 유선 혹은 무선에 의해 제어 유닛(60)과의 통신이 가능하게 되어 있다.
도 2는 본 실시형태에서의 각 다리체(2)의 선단 부분(각 족평(22R(L))을 포함함)의 기본구성을 개략적으로 도시하는 도면이다. 동 도면에 도시하는 바와 같이, 각 족평(22R(L))의 상방에는, 상기 6축력센서(50)와의 사이에 스프링 기구(70)가 장비됨과 동시에, 발바닥(각 족평(22R,L)의 밑바닥면)에는 고무 등으로 이루어지는 발바닥 탄성체(71)이 붙여져 있다. 이들 스프링 기구(70) 및 발바닥 탄성체(71)에 의해 컴플라이언스 기구(72)가 구성되어 있다. 상세한 도시는 생략하지만, 스프링 기구(70)는, 족평(22R(L))의 상면부에 부착된 사각형상의 가이드 부재(도시생략)와, 발목관절(18R(L))(도 2에서는 발목관절(20R(L))을 생략하고 있음) 및 6축력센서(50)측에 부착되고, 상기 가이드 부재에 탄성재(고무나 스프링)를 통하여 미동 자유롭게 수납되는 피스톤 형상 부재(도시생략)로 구성되어 있다.
도 2에 실선으로 표시된 족평(22R(L))은 상반력을 받고 있지 않을 때의 상태를 도시하고 있다. 각 다리체(2)가 상반력을 받으면, 컴플라이언스 기구(72)의 스프링 기구(70)와 발바닥 탄성체(71)가 휘고, 족평(22R(L))은 도면중에 점선으로 예시한 위치 자세로 이동한다. 이 컴플라이언스 기구(72)의 구조는 착지 충격을 완화하기 위해서 뿐만 아니라, 제어성을 높이기 위해서도 중요한 것이다. 그 상세는, 예를 들면 본 출원인이 앞서 제안한 일본 특개평5-305584호 공보에 상세하게 설명되어 있으므로, 본 명세서에서의 새로운 설명은 생략한다.
도 3은 제어 유닛(60)의 구성을 도시하는 블럭도이다. 이 제어 유닛(60)은 마이크로컴퓨터에 의해 구성되어 있고, CPU로 이루어지는 제 1 연산장치(90) 및 제 2 연산장치(92), A/D변환기(80), 카운터(86), D/A변환기(96), RAM(84), ROM(94), 및 이것들 사이의 데이터 수수를 행하는 버스 라인(82)을 구비하고 있다. 이 제어 유닛(60)에서는, 각 다리체(2)의 6축력센서(50), 자세 센서(54)(가속도 센서 및 레이트 자이로 센서), 조이스틱(73) 등의 출력신호는 A/D변환기(80)로 디지털값으로 변환된 후, 버스 라인(82)을 통하여 RAM(84)에 보내진다. 또 로봇(1)의 각 관절의 인코더(65)(로터리 인코더)의 출력은 카운터(86)를 통하여 RAM(84)에 입력된다.
상기 제 1 연산장치(90)는 후술과 같이 목표 보용을 생성함과 동시에, 관절각 변위지령(각 관절의 변위각 혹은 각 전동 모터(64)의 회전각의 지령값)을 산출하고, RAM(84)에 송출한다. 또, 제 2 연산장치(92)는 RAM(84)으로부터 관절각 변위지령과, 상기 인코더(65)의 출력신호에 기초하여 검출된 관절각의 실측값을 읽어내고, 각 관절의 구동에 필요한 조작량을 산출한다. 그리고, 그 산출한 조작량을 D/A변환기(96)와 서보 앰프(64a)를 통하여 각 관절을 구동하는 전동 모터(64)에 출력한다.
도 4는 본 명세서의 실시형태에서의 로봇(1)의 제어 유닛(60)의 주요 기능적 구성을 나타내는 블럭도이다. 이 도 4중의 「실 로봇」의 부분 이외의 부분이 제어 유닛(60)이 실행하는 처리기능(주로 제 1 연산장치(90) 및 제 2 연산장치(92)의 기능)으로 구성되는 것이다. 그 처리기능은 제어 유닛(60)에 실장된 프로그램 등에 의해 실현되고 있다. 또한, 이하의 설명에서는, 로봇(1)의 각 부(다리체(2), 팔체(5) 등)의 좌우를 특별히 구별할 필요가 없을 때는, 상기 부호 R, L을 생략한다.
이하 설명하면 제어 유닛(60)은, 후술과 같이 목표 보용을 자유롭게 또한 리 얼타임으로 생성하여 출력하는 보용생성장치(100)를 구비하고 있다. 이 보용생성장치(100)는 그 기능에 의해 본 발명의 실시형태를 실현하는 것이다. 이 보용생성장치(100)가 출력하는 목표 보용은, 보정 목표 상체자세 궤도(상체(3)의 목표 자세의 궤도), 보정 목표 상체위치 궤도(상체(3)의 목표 위치의 궤도), 목표 족평위치 자세 궤도(각 족평(22)의 목표 위치 및 목표 자세의 궤도), 목표 팔자세 궤도(각 팔체의 목표 자세의 궤도), 목표 ZMP(목표 전체 상반력 중심점) 궤도, 목표 ZMP 주위의 보정 목표 상반력 모멘트 궤도 및 목표 전체 상반력 궤도로 구성된다. 또한, 다리체(2)나 팔체(5) 이외에, 상체(3)에 대해 가동 부위(머리부 등)를 구비하는 경우에는, 그 가동부위의 목표 위치 자세 궤도가 목표 보용에 더해진다.
여기에서, 본 명세서에서의 보용에 관한 기본적인 용어의 정의 등에 대해 설명해 둔다. 보용에서의 「궤도」는 시간적 변화의 패턴(시계열 패턴)을 의미하고, 「궤도」 대신에 「패턴」이라고 칭하는 경우도 있다. 또, 「자세」는 공간적인 방향을 의미한다. 예를 들면 상체자세는 Z축(연직축)에 대한 롤링 방향(X축 주위)의 상체(3)의 경사각(자세각)과 피칭 방향(Y축 주위)의 상체(3)의 경사각(자세각)으로 표시되고, 족평자세는 각 족평(22)에 고정적으로 설정된 2축의 공간적인 방위각으로 표시된다. 본 명세서에서는, 상체자세는 상체자세각이라고 하는 경우도 있다. 또한, 팔체(5)에 관한 목표 팔자세는 본 명세서의 실시형태에서는 상체(3)에 대한 상대자세로 표시된다.
상체위치는, 상체(3)의 미리 정한 대표점(상체(3)에 대해 임의로 고정 설정한 로컬 좌표계에서의 어떤 고정점)의 위치를 의미한다. 마찬가지로, 족평위치는, 각 족평(22)의 미리 정한 대표점(각 족평(22)에 대해 임의로 고정 설정한 로컬 좌표계에서의 고정점)의 위치를 의미한다. 예를 들면 각 족평(22)의 대표점은, 각 족평(22)의 밑바닥면 위(보다 구체적으로는 각 다리체(2)의 발목관절의 중심으로부터 각 족평(22)의 밑바닥면으로의 수선이 이 밑바닥면과 교차하는 점 등)에 설정된다.
상체(3)에 관한 상기 보정 목표 상체자세 및 보정 목표 상체위치는, 어떤 기본이 되는 목표 상체자세(가목표 상체자세) 및 목표 상체위치(가목표 상체위치)를 보정한 것이다. 본 명세서의 실시형태에서는, 기본이 되는 목표 상체위치 자세는, 후술의 변위차원 보정 상체위치 자세가 상당한다.
또한, 이후의 설명에서는, 오해를 일으킬 우려가 없는 경우에는, 종종 「목표」를 생략한다.
보용 중, 상반력에 관계되는 구성요소 이외의 구성요소, 즉 족평위치 자세, 상체위치 자세 등, 로봇(1)의 각 부위의 위치 자세에 관한 구성요소를 총칭적으로 「운동」이라고 한다. 또, 각 족평(22)이 작용하는 상반력(병진력 및 모멘트로 이루어지는 상반력)을 「각 족평 상반력」이라고 부르고, 로봇(1)의 모두(2개 )의 족평(22R, 22L)에 대한 「각 족평 상반력」의 합력을 「전체 상반력」이라고 한다. 단, 이하의 설명에서는, 각 족평 상반력은 거의 언급하지 않으므로, 특별히 예고하지 않는 한, 「상반력」은 「전체 상반력」과 동의로서 취급한다.
목표 상반력은, 일반적으로는, 작용점과 그 점에 작용하는 병진력 및 모멘트에 의해 표현된다. 작용점은 어디에 잡아도 되므로, 동일한 목표 상반력에서도 무 수한 표현을 생각할 수 있는데, 특히 목표 상반력 중심점(전체 상반력의 중심점의 목표 위치)을 작용점으로 하여 목표 상반력을 표현하면, 목표 상반력의 모멘트 성분은 연직성분(연직축(Z축) 주위의 모멘트 성분)을 제외하고 0이 된다. 바꾸어 말하면, 목표 상반력 중심점 주위의 목표 상반력의 모멘트의 수평성분(수평축(X축 및 Y축) 주위의 모멘트)은 0이 된다.
또한, 동역학적 평형조건을 만족하는 보용에서는, 로봇(1)의 목표 운동 궤도로부터 산출되는 ZMP(목표 운동 궤도로부터 산출되는 관성력과 중력의 합력이 그 점 주위에 작용하는 모멘트가, 연직성분을 제외하고 0이 되는 점)와 목표 상반력 중심점은 일치하므로, 목표 상반력 중심점 궤도 대신 목표 ZMP 궤도를 부여한다고 해도 동일한 것이다.
여기에서, 로봇(1)의 보행을 행하는 경우에는, 예를 들면 본 출원인이 앞서 일본 특개평10-86080호 공보에서 제안한 상체높이 결정수법에 의해 로봇(1)의 상체(3)의 연직위치(상체높이)가 결정되면, 병진 상반력 연직성분은 종속적으로 결정된다. 또한, 목표 보용의 운동에 의한 관성력과 중력의 합력이 목표 ZMP 주위에 발생하는 모멘트의 수평성분이 0이 되도록 로봇(1)의 상체 수평위치 궤도(또는 질량중심의 위치 궤도)를 결정함으로써 병진 상반력 수평성분도 종속적으로 결정된다. 이 때문에, 로봇(1)의 보행을 행하는 경우에는, 목표 보용의 상반력에 관해 명시적으로 설정해야 할 물리량으로서는, 목표 ZMP 만이어도 된다.
한편, 상반력이 0 혹은 거의 0이 되는 것과 같은 시기를 따르는 보용에서의 로봇(1)의 이동, 예를 들면 로봇(1)이 주행을 행하는 경우에는, 병진 상반력 연직 성분도 로봇(1)의 동작 제어상 중요하다. 이 때문에, 병진 상반력 연직성분의 목표 궤도를 명시적으로 설정한 뒤에, 로봇(1)의 목표 상체 연직위치 등의 궤도를 결정하는 것이 바람직하다. 또한 로봇(1)의 보행에 있어서도, 마찰계수가 낮은 바닥면 위(스키드패드 위)에서 로봇(1)을 이동시키는 것과 같은 경우에는, 병진 상반력 연직성분(보다 엄밀하게는 병진 상반력의 바닥면에 수직한 성분)이 마찰력에 영향을 미치므로, 로봇(1)의 슬립 등을 방지하는 점에서, 병진 상반력 연직성분의 목표 궤도를 명시적으로 설정하는 것이 바람직하다. 또한, 본 발명의 실시형태에서는, 최종적으로 보용생성장치(100)가 출력하는 목표 보용에서는, 목표 ZMP 주위에 보정 목표 상반력 모멘트(수평성분이 0이라고는 할 수 없는 모멘트)를 발생시킨다.
이러한 것으로부터, 본 명세서의 실시형태에서는, 보용생성장치(100)가 출력하는 목표 보용의 상반력에 관한 구성요소로서, 목표 ZMP 궤도 이외에, 목표 ZMP 주위의 보정 목표 상반력 모멘트와, 목표 병진 상반력 연직성분을 포함시키고 있다.
그리고, 본 명세서에서는, 보용생성장치(100)가 출력하는 목표 보용은, 광의로는, 「1보 내지는 복수 보의 기간의 목표 운동 궤도와 목표 상반력 궤도의 세트」의 의미로 사용되고, 협의로는, 「1보의 기간의 목표 운동 궤도와, 목표 ZMP, 보정 목표 상반력 모멘트 및 목표 병진 상반력 연직성분을 포함하는 목표 상반력 궤도와의 세트」의 의미로 사용된다.
단, 본 명세서의 실시형태에서는, 최종적인 목표 보용(보용생성장치(100)가 출력하는 목표 보용)을 결정할 때까지의 과정에서 작성하는 목표 보용(가목표 보 용)에서는, 목표 ZMP 주위의 목표 상반력 모멘트의 수평성분은 본래의 목표 ZMP의 정의대로 0으로 된다. 따라서, 최종적으로 결정하는 목표 보용 이외의 가목표 보용(후술의 단순화 모델 보용이나, 제 1 가보정 보용, 제 2 가보정 보용, 변위차원 보정 보용)에서는, 상기 협의의 목표 보용으로부터, 보정 목표 상반력 모멘트를 뺀 것이 목표 보용의 의미로 사용된다. 보충하면, 본 명세서의 실시형태에서는, 최종적인 목표 보용(보용생성장치(100)가 출력하는 목표 보용)을 결정할 때까지의 과정에서 작성하는 목표 보용(가목표 보용)이 본 발명에 밀접하게 관련되는 것으로 되어 있다. 이 때문에, 이후의 설명에서 나타나는 목표 보용의 대부분은, 상기 협의의 목표 보용으로부터, 보정 목표 상반력 모멘트를 뺀 것(목표 ZMP를 만족하는 보용)의 의미로 사용된다.
또한, 이후의 설명에서는, 「상반력 연직성분」은 「병진 상반력 연직성분」을 의미하는 것으로 하고, 상반력중 모멘트의 연직성분(연직축 주위 성분)은, 「모멘트」라고 하는 용어를 사용하여 「상반력 연직성분」과 구별을 한다. 마찬가지로, 「상반력 수평성분」은 「병진 상반력 수평성분」을 의미하는 것으로 한다.
또, 목표 보용의 「1보」는 로봇(1)의 한쪽의 다리체(2)가 착지하고나서 또 한쪽의 다리체(2)가 착지할 때까지의 의미로 사용한다.
또, 보용에서의 양다리 지지기란, 로봇(1)이 그 자중을 양다리체(2, 2)로 지지하는 기간, 외다리 지지기란 어느 한쪽만의 다리체(2)로 로봇(1)의 자중을 지지하는 기간, 공중기란 양다리체(2, 2)가 바닥으로부터 떨어져 있는(공중에 떠 있는) 기간을 말한다. 외다리 지지기에서 로봇(1)의 자중을 지지하지 않는 측의 다리체 (2)를 미착지 다리라고 부른다. 또한, 외다리 지지기와 공중기가 번갈아 반복되는 로봇(1)의 주행보용에서는 양다리 지지기는 없다. 이 경우, 공중기에서는 양다리(2, 2) 모두, 로봇(1)의 자중을 지지하지 않는 것이 되지만, 편의상, 이 공중기의 직전의 외다리 지지기에서 미착지 다리였던 다리체(2), 지지다리였던 다리체(2)을 각각 이 공중기에서도 미착지 다리, 지지다리라고 부른다.
또, 목표 보용의 궤도는 글로벌 좌표계(밑바닥에 고정된 좌표계)로 기술된다. 글로벌 좌표계로서는, 예를 들면 지지다리 족평(22)의 착지 위치 자세에 대응하여 정해지는 지지다리 좌표계가 사용된다. 이 지지다리 좌표계는, 예를 들면 지지다리 족평(22)의 밑바닥면의 거의 전체면을 밑바닥에 접지한 상태에서, 그 족평(22)이 연결된 발목관절의 중심으로부터 바닥면으로 연장시킨 수선이 바닥과 교차하는 점을 원점으로 하고, 그 원점을 통과하는 수평면에 지지다리 족평(22)을 투영했을 때의 이 족평(22)의 전후 방향을 X축 방향, 좌우방향을 Y축 방향으로 하는 좌표계(Z축 방향은 연직방향)이다.
도 5는 보용생성장치(100)의 상세를 나타내는 블럭도이다. 이 도 5를 참조하여, 보용생성장치(100)의 처리의 보다 구체적인 개요를 이하에 설명한다.
도시한 바와 같이, 보용생성장치(100)는 보용 패러미터 결정부(100a)를 구비한다. 보용 패러미터 결정부(100a)는 목표 보용을 규정하는 보용 패러미터의 값 또는 시계열 테이블을 결정한다.
본 명세서의 실시형태에서는, 보용 패러미터 결정부(100a)가 결정하는 보용 패러미터에는, 목표 보용 중, 목표 족평위치 자세 궤도, 목표 팔자세 궤도, 목표 ZMP 궤도, 및 목표 상반력 연직성분 궤도를 각각 규정하는 패러미터가 포함된다.
여기에서, 보용생성장치(100)가 목표 보용을 생성할 때, 미착지 다리 족평(22)의 착지 예정위치 자세, 착지 예정시각, 또는 보폭, 이동속도 등의 보용생성용의 기본적인 요구값(요구 패러미터)이, 상기 조이스틱(73), 혹은 도시하지 않는 행동계획부(로봇(1)의 행동계획을 작성하는 장치) 등의 장치로부터 보용생성장치(100)에 주어진다. 또는, 상기 요구 패러미터를 미리 기억 유지한 기억매체로부터 이 요구 패러미터를 보용생성장치(100)가 읽어들인다. 그리고, 보용생성장치(100)의 보용 패러미터 결정부(100a)는 그 요구 패러미터에 따라 보용 패러미터를 결정한다.
또, 본 명세서의 실시형태에서는, 보용 패러미터 결정부(100a)가 결정하는 보용 패러미터에는, 기준 상체자세 궤도, ZMP 허용범위, 상반력 수평성분 허용범위를 각각 규정하는 패러미터도 포함된다.
여기에서, 상기 기준 상체자세 궤도는, 최종적으로 보용생성장치(100)이 출력하는 것이 아니지만, 목표 보용을 결정할 때에 참작되는 것이다. 이 기준 상체자세 궤도는, 로봇(1)의 상체자세에 관해서, 상기 조이스틱(73) 또는 행동계획부로부터 주어지거나, 혹은 미리 정해진 요구(상체자세를 연직자세로 유지하는 등의 요구)에 그대로 따라서 생성되는 상체자세 궤도이다. 목표 상체자세(이후, 「기준」이 붙어 있지 않은 「상체자세」는 목표 상체자세를 나타냄)는 기준 상체자세에 장기적으로 추종하거나, 또는 일치하도록 생성된다.
또, 상기 ZMP 허용범위에 관해 보충하면, 본 명세서의 실시형태에서는, 목표 보용은 목표 ZMP의 주위에 보정 목표 상반력 모멘트(이것은 일반적으로는 0이 아님)를 발생하도록 수정된다. 따라서, 목표 ZMP는, 본래의 정의(상반력 모멘트 수평성분이 0인 점이라고 하는 정의)와는 다른 점이 되고, 본래의 정의를 만족하는 ZMP(이하, 진 ZMP라고 함)는 보정 목표 상반력 모멘트를 목표 상반력 연직성분으로 나눈 값만큼 목표 ZMP로부터 벗어난 위치로 옮겨진다.
수정된 보용(보용생성장치(100)가 최종적으로 출력하는 목표 보용)의 진 ZMP는 적어도 ZMP 존재가능 범위(소위 지지다각형의 것. 바닥과 족평(22)의 밑바닥면과의 사이에 점착력이 작용하지 않는다고 가정한 경우에 있어서의 상반력 작용점(ZMP)의 존재가능 범위) 내에 없으면 안된다. 또한 로봇(1)의 안정여유를 충분하게 취하기 위해서는, 수정된 보용의 진 ZMP는 ZMP 존재가능범위 중 중심부근의 범위에 있는 것이 바람직하다. 그래서, 본 명세서의 실시형태에서는 수정된 보용의 진 ZMP가 존재할 수 있는 허용범위를 설정한다. 이 범위를 ZMP 허용범위라고 부른다. ZMP 허용범위는, ZMP 존재가능 범위와 일치 또는 ZMP 존재가능 범위 내에 포함되도록 설정된다.
또한, 상기한 바와 같이, 목표 ZMP 주위의 보정 목표 상반력 모멘트를 목표 상반력 연직성분으로 제산한 것이, 목표 ZMP에 대한 진 ZMP의 위치의 벗어남량을 의미하므로, 목표 ZMP 주위의 보정 목표 상반력 모멘트를 설정하는 대신, 목표 ZMP에 대한 진 ZMP의 위치의 벗어남량(보정 목표 상반력 모멘트의 ZMP 환산값)을 설정해도 된다. 또, ZMP 허용범위는, 그 경계의 위치와 목표 상반력 연직성분을 사용하여, 보정 목표 상반력 모멘트의 허용범위로 변환할 수 있고, 그 보정 목표 상반 력 모멘트의 허용범위를 ZMP 허용범위 대신 설정하도록 해도 된다.
또, 상기 상반력 수평성분 허용범위는, 로봇(1)의 족평(22)의 바닥과의 접지면에, 족평(22)이 미끄러지지 않는 크기의 마찰력을 발생시킬 수 있는 상반력 수평성분의 허용범위이다. 본 명세서의 실시형태에서는, 적어도 최종적으로 보용생성장치(100)가 출력하는 목표 보용의 운동(목표 운동)은, 그것에 의해 발생하는 로봇(1)의 관성력의 수평성분과 균형을 이루는 상반력 수평성분이 상반력 수평성분 허용범위 내에 들어가도록 생성된다.
보용 패러미터 결정부(100a)에서 결정된 보용 패러미터는 목표 순시값 발생부(100b)에 입력된다. 목표 순시값 발생부(100b)는 입력된 보용 패러미터에 기초하여, 기준 상체자세, 목표 족평위치 자세, 목표 ZMP, 목표 상반력 연직성분 등, 목표 보용의 일부의 구성요소의 순시값(상기 제어 유닛(60)의 소정의 제어처리 주기 마다의 값)을 차례차례로 산출(발생)한다. 또한, 도 5에서는 일부의 목표 순시값만을 대표적으로 기재하고 있다.
목표 순시값 발생부(100b)에서 산출된 목표 순시값은 단순화 모델 보용생성부(100c)에 입력된다. 단순화 모델 보용생성부(100c)는, 입력된 목표 순시값을 기초로, 로봇(1)의 운동과 상반력의 관계를 근사 표현하는 후술의 동역학 모델(이하, 단순화 모델이라고 함)을 사용하여 목표 상체위치 자세(가목표 상체위치 자세)의 순시값을 산출한다. 단순화 모델 보용생성부(100c)는, 단순화 모델상에서의 동역학적 평형조건이 만족시켜지도록, 즉 단순화 모델상에서의 로봇(1)의 목표 운동에 의해 발생하는 관성력과 로봇(1)에 작용하는 중력의 합력이 목표 ZMP 주위에 발생하는 모멘트의 수평성분이 0이 되도록 목표 상체위치 자세의 순시값을 산출한다. 보충하면, 본 명세서의 실시형태에서는, 목표 상반력 연직성분 궤도도 명시적으로 설정하므로, 목표 상체위치 자세의 순시값은, 목표 운동에 의해 발생하는 관성력과 로봇(1)에 작용하는 중력의 합력이 목표 ZMP 주위에 발생하는 모멘트 수평성분이 0이 되는 것 이외에, 그 합력의 병진력 연직성분(환언하면, 로봇(1)의 질량중심의 연직방향의 병진 운동에 수반되는 관성력과 중력의 합력)이 목표 상반력 연직성분과 균형을 이루도록 결정된다.
이것에 의해, 목표 상체위치 자세를 포함하는 목표 보용(가목표 보용)의 순시값이 차례차례로 결정되어 가게 된다. 이후, 단순화 모델 보용생성부(100c)에서 구해진 목표 상체위치 자세를 구성요소로 하는 목표 보용을 단순화 모델 보용이라고 한다. 또한, 단순화 모델 보용생성부(100c)에 입력되는 목표 순시값은, 목표 순시값 발생부(100b)에서 산출된 모든 목표 순시값일 필요는 없다. 단순화 모델 보용생성부(100c)에 필요한 입력은, 단순화 모델의 구조, 또는 그것에 적당하게 부가되는 제약조건에 의존한다. 예를 들면 도 5에서는, 목표 족평위치 자세를 단순화 모델 보용생성부(100c)에 입력하고 있는데, 후술하는 제 1 실시형태에서의 단순화 모델에서는, 목표 족평위치 자세를 입력할 필요는 없다.
또한, 단순화 모델 보용생성부(100c)는 목표 순시값 발생부(100b)와 더불어, 본 발명에서의 순시 보용발생수단을 구성한다.
단순화 모델 보용생성부(100c)에서 산출된 목표 상체위치 자세는 변위차원 보용 보정부(100d)에 입력된다. 변위차원 보용 보정부(100d)에는, 목표 상체위치 자세 이외에, 목표 족평위치 자세의 순시값, 목표 ZMP의 순시값도 입력된다. 단, 변위차원 보용 보정부(100d)에는, 목표 ZMP를 입력하는 것은 필수는 아니고, 보다 일반적으로는, 후술하는 각 운동량 적에 관한 중심점이 입력된다. 도 5에서는, 그 중심점의 일례로서 목표 ZMP를 변위차원 보용 보정부(100d)에 입력하도록 하고 있다.
이 변위차원 보용 보정부(100d)는, 입력된 목표 상체위치 자세의 순시값 등을 기초로, 후술의 제 1 및 제 2 변위차원 보정용 모델을 사용하여, 단순화 모델 보용생성부(100c)에서 구한 목표 상체위치 자세를 보정하여 이루어지는 변위차원 보정 상체위치 자세의 순시값을 구한다. 상세한 것은 후술하지만, 제 1 및 제 2 변위차원 보정용 모델은, 일반적으로는, 질점과 이너셔를 갖는 링크 중 적어도 어느 한쪽을 요소로 하여 구성되는 모델(기하학 모델)이며, 그 각 요소의 배치(질점의 위치, 링크의 자세)가, 로봇(1)의 순시 운동에서의 1개 이상의 부위의 위치 자세에 대응지어진다. 이 경우, 이들 제 1 및 제 2 변위차원 보정용 모델은 모두 동일한 요소로 구성된다. 단, 이들 제 1 및 제 2 변위차원 보정용 모델에서는, 그 요소의 배치에 관해 서로 다른 기하학적 구속조건이 정해져 있고, 로봇(1)의 임의의 순시 목표 운동(로봇(1)의 각 부위의 위치 자세의 순시값)이 주어졌을 때, 그것에 대응하는 각 변위차원 보정용 모델의 요소의 배치가 각각 별도의 기하학적 구속조건에 기초하여 정해지게 되어 있다. 따라서, 어떤 목표 순시 운동이 주어졌을 때, 그것에 대응하는 각 변위차원 보정용 모델의 요소의 배치는 일반적으로는 서로 다르다. 그리고, 변위차원 보용 보정부(100d)는, 이들 제 1 및 제 2 변위차원 보 정용 모델에서의 요소의 배치의 차(질점의 위치의 차, 또는 링크의 자세각의 차)를 기초로, 단순화 모델 보용의 목표 상체위치 자세를 보정하여 변위차원 보정 상체위치 자세의 순시값을 차례차례로 구한다.
또, 도 5에서는 도시를 생략하고 있지만, 변위차원 보용 보정부(100d)에는, 상기 조이스틱(73) 또는 로봇(1)의 행동계획부(도시하지 않음)로부터, 목표 보용에서 요구되는 로봇(1)의 운동형태(로봇(1)의 보행, 주행 등)나, 바닥면의 마찰상태(마찰계수의 크기 등)을 나타내는 로봇(1)의 동작 모드도 입력된다. 그리고, 변위차원 보용 보정부(100d)는 입력된 동작 모드에 따라 변위차원 보정 상체위치 자세의 순시값을 가변적으로 구한다. 본 명세서의 실시형태에서는, 상기 동작 모드는, 로봇(1)의 주행을 행하는 주행 모드와, 비교적 마찰계수가 작은 바닥면 위(스키드 패드 위)에서 로봇(1)의 보행을 행하는 저마찰 바닥면 보행 모드와, 이들 모드 이외의 동작 모드인 통상 모드가 있다. 통상 모드에는, 비교적 마찰계수가 큰 바닥면(통상적인 바닥면) 상에서 로봇(1)의 보행을 행하는 동작 모드가 포함된다.
또한, 변위차원 보용 보정부(100d)는, 그 기능에 따라, 제 1 발명에서의 제 1 가보정 운동 결정수단, 제 2 가보정 운동 결정수단 및 목표 운동 보정 수단을 구성하고, 또는, 제 2 발명에서의 가보정 운동 결정수단 및 목표 운동 보정 수단을 구성하는 것이다.
변위차원 보용 보정부(100d)에서 구한 변위차원 보정 상체위치 자세의 순시값은 풀 모델 보정부(100e)에 입력된다. 풀 모델 보정부(100e)에는, 변위차원 보정 상체위치 자세의 순시값 이외에, 목표 순시값 발생부(100b)에서 산출된 각 목표 순시값(기준 상체위치 자세의 순시값을 제외함)이 입력된다. 이 풀 모델 보정부(100e)는, 단순화 모델보다도 동역학적 정밀도가 높은 동역학 모델로서의 풀 모델을 사용하여 변위차원 상체위치 자세를 보정하여 이루어지는 보정 목표 상체위치 자세를 산출함과 동시에, 목표 ZMP 주위의 상반력 모멘트 수평성분의 목표값인 보정 목표 상반력 모멘트를 산출한다.
풀 모델 보정부(100e)는, 보다 일반적으로는, 다음 D1~D3의 조건을 만족하도록, E1 또는 E2의 처리를 실행한다. 즉, 풀 모델 보정부(100e)는,
D1) 단순화 모델을 사용하여 생성한 보용(단순화 모델 보용)을 변위차원 보정용 모델을 사용하여 수정하여 이루어지는 보용(이후, 변위차원 보정 보용이라고 부름)보다도 높은 정밀도로 동역학적 평형조건을 만족한다.
D2) 진 ZMP(목표 ZMP의 주위에 보정 목표 상반력 모멘트를 발생시킴으로써 수정된 본래의 정의를 만족하는 ZMP)는, ZMP 허용범위(안정여유를 충분히 유지할 수 있는 허용범위)에 존재한다.
D3) 상반력 수평성분은 상반력 수평성분 허용범위 내가 된다.
라고 하는 조건을 만족하도록,
E1) 상기 변위차원 보정 보용의 상체위치 자세를 보정한다.
또는
E2) 상기 변위차원 보정 보용의 상체위치 자세를 보정함과 동시에, 목표 ZMP 주위의 보정 목표 상반력 모멘트를 출력한다(목표 상반력을 보정함).
본 명세서의 실시형태에서는, D1~D3의 조건을 만족하도록, E2의 처리가 실 행된다. 또한, 본 명세서의 실시형태에서의 풀 모델 보정부(100e)의 처리는, 예를 들면 본원 출원인이 먼저 제안한 PCT 국제공개공보 WO/03/057427/A1에서 상세하게 설명되어 있는 것(구체적으로는, 동 공보의 도 13의 S038의 처리)과 동일하다. 따라서, 본 명세서에서의 풀 모델 보정부(100e)의 처리의 상세한 설명은 생략한다.
도 4로 되돌아와, 전술한 바와 같이 결정되는 보정 목표 상체위치 자세, 목표 ZMP 주위의 보정 목표 상반력 모멘트, 목표 족평위치 자세의 순시값을 포함하는 목표 보용의 순시값은 복합 컴플라이언스 제어장치(101)(도 4에서 파선으로 둘러싼 부분)에 입력된다. 이 복합 컴플라이언스 제어장치(101)는, 로봇(1)의 밸런스를 유지하면서, 목표 보용에 추종하도록 관절 액추에이터(전동 모터(64))를 제어한다. 또한, 복합 컴플라이언스 제어장치(101)의 보다 구체적인 처리는 후술한다.
이상이 보용생성장치(100)의 개요이다. 또한, 이상에서 설명한 보용생성장치(100)의 개요는 본 명세서의 어느 실시형태에서도 동일하다.
[제 1 실시형태]
다음에 본 발명의 제 1 실시형태를 구체적으로 설명한다. 우선, 제 1 실시형태에서의 상기 단순화 모델(동역학 모델), 제 1 변위차원 보정용 모델, 제 2 변위차원 보정용 모델에 대해 설명한다. 또한, 제 1 실시형태는, 상기 제 1, 3, 4, 7~9, 11~14 발명중의 하나의 실시형태이다.
도 6은 제 1 실시형태에서의 단순화 모델의 구조를 도시하고 있다. 도시한 바와 같이, 이 단순화 모델은 로봇(1)의 상체(3)에 대응하는 1개의 질점(상체 질점)(3m)을 구비하는 1질점 모델이다. 또한, 도 6에 도시하는 로봇(1)은, 측면으로 본 로봇(1)을 모식화 하여 도시하고, 팔체(5, 5)나 머리부(6)의 도시를 생략하고 있다. 이 도 6 이후의 도면(제 1 실시형태 이외의 실시형태의 도면을 포함함)에서는, 로봇(1)을 도시할 때에, 특히 상체(3)와 구별할 필요가 있는 경우를 제외하고, 도 6과 동일하게, 팔체(5, 5)나 머리부(6)의 기재를 생략한다. 또, 도 6을 포함하는 이후의 도면에서 기재되는 X축, Z축은 글로벌 좌표계를 나타내고 있다.
도 6의 단순화 모델의 상체 질점(3m)은, 상체(3)의 위치 자세에 대응하여 일의적으로 정해지는 점, 즉 상체(3)에 임의로 고정설정된 로컬 좌표계에서의 어떤 고정점(로컬 좌표계에서 상체(3)의 대표점과 소정의 위치관계를 갖는 점)에 설정되어 있다. 또, 상체 질점(3m)의 질량은 로봇(1)의 총 질량(mtotal)과 동일하게 되어 있다. 또한, 상체 질점(3m)은 상체(3)의 대표점과 일치하고 있어도 되지만, 일반적으로는 상이하다.
이 단순화 모델의 동역학은, 상체 질점(3m)과, 이것을 목표 ZMP를 지지점으로 하여 요동 자유롭게 지지하는 가변 길이 링크(3b)로 구성되는 도립 진자의 동역학에 의해 표현된다. 보다 구체적으로는, 단순화 모델에서의 로봇(1)의 운동과 상반력과의 관계를 나타내는 운동방정식은, 이하에 나타내는 식 01, 식 02, 식 03으로 표시된다. 단, 본 명세서의 이해를 쉽게 하기 위해서, 여기에서는 사지탈 플레인(전후축(X축)과 연직축(Z축)을 포함하는 평면에서, 소위 시상면)에서의 운동방정식만을 기술하고, 래터럴 플레인(좌우축(Y축)과 연직축(Z축)을 포함하는 평면이고, 소위 전액면)에서의 운동방정식은 생략한다.
또한, 본 명세서에서는, 임의의 변수X에 대해 d2X/dt2는 변수 X의 2차미분값 을 의미하는 것으로 한다. 또, 도 6의 단순화 모델의 동역학에 관한 변수는 아래와같이 정의한다.
g: 중력 가속도, Zb: 상체 질점의 연직위치, Xb: 상체 질점의 수평위치, mtotal: 로봇(1)의 총 질량, Fx: 상반력 수평성분(상세하게는 병진 상반력의 전후 방향(X축) 성분), Fz: 상반력 연직성분(상세하게는 병진 상반력의 연직방향(Z축) 성분), My: 목표 ZMP 주위의 상반력 모멘트(상세하게는 상반력 모멘트의 좌우축(Y축) 주위 성분), Xzmp: 목표 ZMP의 수평위치, Zzmp: 목표 ZMP의 연직위치.
Fz=mtotal*(g+d2Zb/dt2) …식 01
Fx=mb*d2Xb/dt2 …식 02
My=-mtotal*(Xb-Xzmp)*(g+d2Zb/dt2)+mtotal*(Zb-Zzmp)*(d2Xb/dt2)
…식 03
이들 식 01~03에 의해 기술되는 단순화 모델에서는, 예를 들면 목표 ZMP와 목표 상반력 연직성분을 정했을 때, 식 01에 따라, 상체 질점(3m)의 연직위치(Zb)를 결정할 수 있게 된다. 또한, 로봇(1)의 동역학적 평형 상태에서는, 식 03의 좌변의 My가 0이 되므로(목표 ZMP 주위의 상반력 모멘트의 수평성분이 0이 되므로), 상체 질점(3m)의 연직위치(Zb)와 식 03으로부터 상체 질점(3m)의 수평위치(Xb)를 결정할 수 있게 된다.
이상에서 설명한 제 1 실시형태의 단순화 모델은, 상체(3)에만 질점(3m)을 갖는 1질점 모델이기 때문에, 각 다리체(2)의 운동에 의해 발생하는 관성력이나, 상체(3)의 이너셔(관성 모멘트)은 무시되어 있다. 즉, 제 1 실시형태의 단순화 모 델은, 각 다리체(2)의 운동(병진 혹은 자세변화 운동)이나 상체(3)의 자세변화 운동에 의해 발생하는 관성력을 0으로 간주하고 구축된 동역학 모델이라고 할 수 있다. 보충하면, 제 1 실시형태를 포함하는 본 명세서의 각 실시형태에서의 단순화 모델은, 로봇(1)의 적어도 1개 이상의 특정 부위의, 특정한 운동(병진 운동, 자세변화 운동 등)에 의해 발생하는 관성력이 거의 0이라고 간주하여(이 관성력을 무시하여) 구축되어 있다.
또한, 제 1 실시형태의 단순화 모델은 1질점 모델로 했지만, 예를 들면 각 다리체(2)의 족평(22)의 근방에도 질점을 갖게 한 3질점 모델로 해도 된다. 또, 예를 들면 상체(3)가 상체 질점(3m)의 주위에 이너셔(관성 모멘트)를 갖는 모델이어도 된다.
다음에 제 1 실시형태에서의 제 1 변위차원 보정용 모델을 설명한다. 도 7(a), (b), (c)의 우측의 도면은, 제 1 실시형태에서의 제 1 변위차원 보정용 모델의 구조를 도시하고, 좌측의 도면은, 우측의 도면에 각각 대응하는 로봇(1)의 목표로 하는 전체적인 자세 상태(단순화 모델 보용의 자세 상태)와 상기 단순화 모델을 도시하고 있다. 또한, 도 7(a), (b), (c)의 우측에 도시하는 로봇(1)은, 양다리체(2, 2)를 좌우방향(Y축 방향)에 나란히 직립 자세로 기립하고 있는 상태의 로봇(1)을 측면시(사지탈 플레인)로 도시한 것이다. 이 때문에, 양다리체(2, 2)는 도면상, 겹쳐 있다.
제 1 실시형태의 제 1 변위차원 보정용 모델은, 로봇(1)의 상체(3)에 대응하는 1개의 상체 질점(A1), 각 다리체(2)의 무릎관절 근방의 대퇴 링크 부분에 대응 하는 대퇴 질점(A2, A3), 및 각 다리체(2)의 선단부(족평(22))에 각각 대응하는 족평 질점(A4, A5)으로 이루어지는 5질점 모델이다. 또, 제 1 변위차원 보정용 모델에서의 상체(3)(상체 링크)는 상체 질점(A1)의 주위에 이너셔(관성 모멘트)(Ib)를 갖는 것으로 되어 있다.
즉, 제 1 변위차원 보정용 모델은, 질점(A1~A5)과 이너셔(Ib)를 갖는 상체 링크를 요소로 하여 구성되어 있다. 이 경우, 제 1 변위차원 보정용 모델의 질점(A2~A5)과 이너셔(Ib)를 갖는 상체 링크는, 상기한 도 6의 단순화 모델이 갖지 않는 요소이며, 각각 대응하는 부위의 운동(상체(3)에 대해서는 그 자세변화 운동)에 의해 관성력을 발생하는 것으로 되어 있다.
이 제 1 변위차원 보정용 모델의 상체 질점(A1)과, 족평 질점(A4, A5)은, 각각 대응하는 부위(상체(3), 각 족평(22))의 위치 자세에 대응하여 일의적으로 정해지는 점, 즉, 대응하는 부위에 임의로 고정설정된 로컬 좌표계상에서의 어떤 고정점(그 대응하는 부위의 로컬 좌표계상에서, 이 부위의 대표점과 소정의 위치관계를 갖는 점)에 설정되어 있다. 단, 상체(3)의 로컬 좌표계상에서의 상체 질점(A1)의 위치는, 도 6에 도시한 상기 단순화 모델의 상체 질점(3m)과는 일반적으로는 다르다. 또, 대퇴 질점(A2, A3)은, 각 다리체(2)의 대퇴 링크(24)에 임의로 고정설정된 로컬 좌표계에서의 어떤 고정점(무릎관절 근방의 고정점)에 설정되어 있다. 또한, 상체 질점(A1), 각 족평 질점(A4, A5) 및 각 대퇴 질점(A2, A3)의 질량의 총 합은 로봇(1)의 총 질량(mtotal)과 일치한다. 또, 상체 질점(A1)의 질량은 상체(3)의 질량 이외에 양 팔체(5, 5) 및 머리부(4)의 질량을 포함하고 있다.
그리고, 제 1 변위차원 보정용 모델의 요소의 배치에는, 어떤 기하학적 구속조건이 설정되어 있다. 구체적으로는, 제 1 변위차원 보정용 모델에서는, 로봇(1)의 자세 상태는, 상체(3)를 연직자세로 함과 동시에, 양다리체(2, 2)를 로봇(1)의 좌우방향(Y축 방향)에 소정 간격으로 나란히 기립하고 있는 자세 상태(직립 자세 상태)로 정상적으로 구속되어 있다(이 때문에, 도 7(a), (b), (c)의 우측의 제 1 변위차원 보정용 모델의 도면에서는 일방의 다리체(2)에 대응하는 각 질점 A2, A4는 각각 타방의 다리체(2)에 대응하는 각 질점 A3, A5와 겹쳐 있다.
따라서, 상체 질점(A1), 각 족평 질점(A4, A5) 및 대퇴 질점(A2, A3)의 상호의 상대적 위치관계가 로봇(1)의 직립자세 상태에 대응하는 소정의 위치관계에 구속되어 있다. 또, 제 1 변위차원 보정용 모델에서 이너셔를 갖는 링크(강체)인 상체(3)의 자세는, 연직자세(연직축에 대한 자세각이 0이 되는 자세)에 구속되어 있다.
또, 제 1 변위차원 보정용 모델의 각 질점(A1~A5)의 글로벌 좌표계(밑바닥에 고정된 좌표계)상에서의 위치는, 단순화 모델 보용의 운동의 순시값에 대응하여 정해지는 것으로 되어 있다. 즉, 제 1 실시형태의 제 1 변위차원 보정용 모델에서는, 그 질점(A1~A5)의 질량중심이 단순화 모델상에서의 로봇(1)의 질량중심의 위치, 즉, 단순화 모델의 상체 질점(3m)의 위치(글로벌 좌표계에서의 위치)와 일치하도록, 질점(A1~A5)의 글로벌 좌표계에서의 위치가 결정된다. 이 경우, 상기한 바와 같이 제 1 변위차원 보정용 모델의 질점(A1~A5)의 상호의 상대적 위치관계는 일정하므로, 그것들의 질점(A1~A5)의 질량중심의 위치(글로벌 좌표계에서의 위치)가 결정되면, 각 질점(A1~A5)의 글로벌 좌표계에서의 위치도 일의적으로 정해진다.
이와 같이 글로벌 좌표계에서의 질점(A1~A5)의 위치가 단순화 모델 보용에 대응하여 정해지는 제 1 변위차원 보정용 모델에서는, 그 질량중심의 운동이 단순화 모델상에서의 질량중심의 운동과 일치하기 때문에, 단순화 모델상에서 로봇(1)에 작용하는 상반력과, 제 1 변위차원 보정용 모델상에서 로봇(1)에 작용하는 상반력이 동등하게 된다.
여기에서, 제 1 실시형태에서 상기한 바와 같이, 제 1 변위차원 보정용 모델의 요소의 배치를 정한다고 하는 것은, 제 1 변위차원 보정용 모델의 요소의 배치(글로벌 좌표계에서의 질점(A1~A5)의 위치 및 상체 링크의 자세)를 정하기 위한 기하학적 구속조건(1)을 다음과 같이 정의했을 때, 단순화 모델 보용의 순시 운동으로부터, 그 기하학적 구속조건(1)에 따라서 제 1 변위차원 보정용 모델의 요소의 배치를 정하는 것과 같다.
기하학적 구속조건 (1): 주어진 임의의 순시 목표 운동에 대해, 제 1 변위차원 보정용 모델의 요소의 배치에 대응하는 로봇(1)의 자세 상태가 정상적으로 직립 자세 상태로 유지되고, 또한, 제 1 변위차원 보정용 모델의 요소의 질량중심이, 주어진 순시 목표 운동에서의 로봇(1)의 질량중심에 일치한다.
제 1 실시형태에서는, 이 기하학적 구속조건(1)이 본 발명에서의 제 1 기하학적 구속조건에 상당하는 것이다.
다음에 제 1 실시형태에서의 제 2 변위차원 보정용 모델을 설명한다. 도 8 은 그 제 2 변위차원 보정용 모델의 구조를 도시하고 있다. 이 제 2 변위차원 보정용 모델은, 그 구성요소는, 제 1 변위차원 보정용 모델과 동일하고, 제 1 변위차원 보정용 모델과 동일하게 5개의 질점(A1~A5)을 갖는 동시에, 상체(3)(상체 링크)가 질점(A1)의 주위에 이너셔(Ib)를 갖는 모델이다. 각 질점(A1~A5)의 질량과, 각 질점(A1~A5)의, 대응하는 부위에 고정설정된 로컬 좌표계에서의 위치란, 제 1 변위차원 보정용 모델과 동일하다. 또, 상체(3)의 이너셔(Ib)도 제 1 변위차원 보정용 모델과 동일하다.
이 제 2 변위차원 보정용 모델에서는, 제 1 변위차원 보정용 모델과 같이 로봇(1)의 자세는 직립 자세 상태에는 구속되어 있지 않고, 각 질점(A1~A5) 및 상체(3)(상체 링크)는 로봇(1)이 채용할 수 있는 임의의 자세 상태에 대응하는 위치 자세 로 이동 가능하게 되어 있다.
달리 말하면, 제 2 변위차원 보정용 모델의 요소의 배치(글로벌 좌표계에서의 질점(A1~A5)의 위치 및 상체 링크의 자세)와, 이것에 대응하는 로봇(1)의 순시 목표 운동(각 부위의 목표 위치 자세의 순시값) 사이에는, 다음과 같은 기하학적 구속조건(2)이 설정되어 있는 것이 된다. 이 기하학적 구속조건(2)은 본 발명에서의 제 2 기하학적 구속조건에 상당하는 것이다.
기하학적 구속조건 (2): 제 2 변위차원 보정용 모델의 각 요소의 배치에 의해 정해지는, 로봇(1)의 각 요소에 대응하는 부위의 위치 자세와, 당해 배치에 대응하는 순시 목표 운동에서의 로봇(1)의 각 요소에 대응하는 부위의 위치 자세는 일치한다.
따라서, 제 2 변위차원 보정용 모델에서는, 그 질점(A1~A5)의 질량중심이, 이 제 2 변위차원 보정용 모델의 각 요소의 배치(질점(A1~A5)의 위치 및 상체 링크의 자세)에 대응하는 자세 상태에서의 실제의 로봇(1)의 진 질량중심의 위치에 거의 일치한다.
보충하면, 임의의 순시 목표 운동으로부터, 상기 기하학적 구속조건 (2)에 따라서 제 2 변위차원 보정용 모델의 요소의 배치를 결정한다고 하는 것은, 제 2 변위차원 보정용 모델의 각 요소의 배치가, 주어진 순시 목표 운동에 따르는 로봇(1)에서의 이 요소에 대응하는 부위의 배치(위치 자세)에 일치하도록 제 2 변위차원 보정용 모델의 각 요소의 배치를 결정한다고 하는 것과 등가이다. 또, 제 2 변위차원 보정용 모델의 요소의 임의의 배치로부터, 기하학적 구속조건(2)에 따라서 순시 목표 운동을 결정한다고 하는 것은, 순시 목표 운동에 따르는 로봇(1)의 각 요소에 대응하는 부위의 배치(위치 자세)가, 주어진 제 2 변위차원 보정용 모델의 요소의 배치에 일치하도록 순시 목표 운동을 결정한다고 하는 것과 등가이다.
제 2 변위차원 보정용 모델은, 제 1 변위차원 보정용 모델과 협동하여 상기 변위차원 보정 상체위치 자세를 결정하기 위한 모델이며, 그 변위차원 보정 상체위치 자세를 결정할 때, 제 2 변위차원 보정용 모델의 요소의 2종류의 배치가 가결정된다. 그 1개의 배치에서는, 제 2 변위차원 보정용 모델의 각 족평 질점(A4, A5)의 위치는 단순화 모델 보용의 각 족평위치 자세에 대응하는 위치에 결정된다. 또, 상체 질점(A1) 및 각 대퇴 질점(A2, A3)의 위치, 및 상체(3)(상체 링크)의 자세각은, 제 1 변위차원 보정용 모델 및 제 2 변위차원 보정용 모델의 질량중심과, 그들 모델간의 후술하는 각운동량 적에 관한 소정의 조건을 만족시키도록 결정된다. 이것에 대해서는, 상세를 후술한다.
보충하면, 본 실시형태의 로봇(1)의 각 다리체(2)는 각각 6자유도를 가지므로, 양 족평(22, 22)의 위치 자세 및 상체(3)의 위치 자세가 결정되면, 로봇(1)의 다리체(2, 2)의 전체의 자세(로봇(1)의 각 다리체(2, 2)의 각 부위(각 링크)의 위치 자세)는 일의적으로 정해진다. 따라서, 제 2 변위차원 보정용 모델상에서의 양 족평 질점(A4, A5) 및 상체 질점(A1)의 위치 및 상체(3)(상체 링크)의 자세를 결정하면, 그것에 대응하여 대퇴 질점(A2, A3)의 위치는 종속적으로 정해진다.
또, 변위차원 보정 상체위치 자세를 결정할 때 가결정되는 제 2 변위차원 보정용 모델의 요소의 다른 1개의 배치에서는, 제 2 변위차원 보정용 모델의 각 족평 질점(A4, A5)의 위치는, 단순화 모델 보용의 각 족평위치 자세에 대응하는 위치로 결정된다. 또한, 상체 링크의 자세는 단순화 모델 보용의 상체자세와 동일하게 결정된다. 또, 상체 질점(A1) 및 각 대퇴 질점(A2, A3)의 위치는, 제 1 변위차원 보정용 모델 및 제 2 변위차원 보정용 모델 사이의 후술하는 각운동량 적에 관한 소정의 조건을 만족시키도록 결정된다. 이것에 대해서도 상세한 것은 후술한다.
그리고, 제 2 변위차원 보정용 모델의 요소의 상기의 2종류의 배치를 기초로, 최종적으로 변위차원 보정 상체위치 자세가 결정된다.
또한, 이후의 설명에서는, 단순화 모델, 제 1 및 제 2 변위차원 보정용 모델에 관계되는 각 질점의 「위치」, 또는 이너셔를 갖는 링크의 「자세」는 특별히 예고하지 않는 한, 글로벌 좌표계에서의 위치, 자세를 의미하는 것으로 한다.
다음에, 제 1 실시형태에서의 보용생성장치(100)의 처리의 상세를 보다 구체적으로 설명한다. 보용생성장치(100)는, 이하에 설명하는 플로우차트의 처리에 의해, 로봇(1)의 한쪽의 다리체(2)가 착지하고 나서 다른쪽 다리체(2)가 착지할 때까지의 1보분의 목표 보용(상기 협의의 목표 보용)을 단위로 하여, 그 1보분의 목표 보용을 순서대로 생성한다. 이때, 새롭게 생성하려고 하고 있는 목표 보용을 「금회 보용」이라고 부른다.
도 9는 보용생성장치(100)의 메인루틴 처리를 도시하는 구조화 플로우차트이다. 이하, 상세히 설명하면, 우선 S010에서 시각(t)를 0으로 초기화 하는 등 여러 초기화 작업이 행해진다. 이 처리는 보용생성장치(100)의 기동시 등에 행해진다. 이어서, S012를 경과하여 S014로 진행되고, 보용생성장치(100)는 제어주기(도 9의 플로우차트의 연산처리주기) 마다의 타이머 인터럽션을 기다린다. 제어주기는 △t이다. 이후, 그 제어주기 △t마다, S014부터 S032까지의 처리가 반복된다.
S014의 다음에 S016으로 진행되고, 보용의 전환차례인지의 여부가 판단되고, 보용의 전환차례일 때는 S018로 진행되는 동시에, 전환차례가 아닐 때는 S022로 진행된다. 여기에서, 「보용의 전환차례」는, 금회 보용의 생성을 개시하는 타이밍을 의미하고, 예를 들면 금회 보용의 하나 앞의 목표 보용의 생성이 완료된 제어주기의 다음 제어주기가 보용의 전환차례가 된다.
S018로 진행될 때에는, 현재 시각(t)를 0으로 초기화 한 후, S020로 진행되어 금회 보용의 보용 패러미터가 결정된다. 이 S020의 처리는, 상기 도 5의 보용 패러미터 결정부(100a)의 처리에 상당하고, 목표 족평위치 자세 궤도, 목표 팔자세 궤도, 목표 ZMP 궤도, 및 목표 상반력 연직성분 궤도를 규정하는 패러미터가 결정되는 동시에, 기준 상체자세 궤도, 상반력 수평성분 허용범위, 및 ZMP 허용범위를 규정하는 패러미터가 결정된다.
이 S020의 처리는, 예를 들면, 본원 출원인이 앞서 제안한 PCT 국제공개공보 WO/03/057427/A1(이하, 공보문헌 1이라고 함)의 도 13의 S022~S030에 대응하는 처리이며, 동 공보문헌 1과 동일하게 행해진다. 그것을 요약적으로 설명하면, 우선, 금회 보용이 이어지고, 혹은 점근할 가상적인 주기적 보용으로서의 정상 보용(로봇(1)의 2보분의 보용을 1주기로 하는 보용)이 결정된다. 정상 보용은, 금회 보용을 포함하는 2보 앞까지의 미착지 다리 족평(22)의 착지 예정위치 자세, 착지 예정시각 등을 기초로, 주기성의 조건(정상 보용의 1주기의 초기의 상태(로봇(1)의 각 부의 위치 자세나 그 변화속도 등)와 종단의 상태가 일치한다고 하는 조건)을 만족시키도록 결정된다. 그리고, 금회 보용이 그 정상 보용으로 이어지거나, 혹은 점근하도록 목표 족평위치 자세 궤도, 목표 팔자세 궤도, 목표 ZMP 궤도, 및 목표 상반력 연직성분 궤도를 규정하는 보용 패러미터가 결정된다. 여기에서, 목표 족평위치 자세 궤도를 규정하는 보용 패러미터는, 예를 들면 본원 출원인이 앞서 일본 특허3233450호에서 제안한 유한시간 정정 필터를 사용하여 목표 족평위치 자세 궤도를 생성하는 경우, 금회 보용의 미착지 다리 족평(22)의 착지 예정위치 자세 및 착지 예정시각, 금회 보용의 지지다리 족평(22)의 다음 착지 예정위치 자세 및 착지 예정시각 등으로 구성된다. 또, 예를 들면 목표 ZMP 궤도, 목표 상반력 연직성분 궤도를 규정하는 보용 패러미터는, 그들 궤도가 꺾임선상의 궤도라고 했을 경우, 그 꺽임점에서의 값이나 그 꺽임점의 시각 등으로 구성된다. 또한, 본 실시형태에서는, 기준 상체자세는, 예를 들면 연직자세(연직축에 대한 상체(3)의 경사각이 0인 자세)로 된다. 또, 본 실시형태의 S020에서 결정하는 보용 패러미터 중, 상반력 수평성분 허용범위를 규정하는 보용 패러미터는, 상기 공보문헌 1의 도 13의 S030에서 결정하는 풀 모델 보정용의 상반력 수평성분 허용범위의 패러미터에 상당하는 것이다.
보충하면, 상기 공보문헌 1에서 금회 보용의 보용 패러미터를 결정하기 위한 처리에서는, 정상 보용의 작성 등을 위해 동역학 모델을 사용하고 있는데, 그 동역학 모델로서, 본 실시형태에서는, 상기 단순화 모델이 사용된다. 이 경우, 본 실시형태의 단순화 모델은, 공보문헌 1의 도 11에서 예시한 동역학 모델과는 같지 않지만, 동 공보문헌 1의 동역학 모델의 양다리 질점의 질량을 0으로 하고, 또한 상체에 관한 이너셔(플라이휠의 이너셔)를 0으로 한 것과 등가이다. 따라서, 동 공보문헌 1의 도 11의 동역학 모델의 양다리 질점의 질량을 0으로 하고, 또한 상체에 관한 이너셔를 0으로 하면, 동 공보문헌 1의 도 13의 S022~S030의 처리를 그대로 적용하여, 본 실시형태에서의 S020의 처리를 실행할 수 있다. 또, 동 공보문헌 1의 도 13의 S022~S028의 처리에서는, 정상 보용의 작성 등을 위해, 단순화 모델 보용용의 상반력 수평성분 허용범위(이 허용범위는 보용생성장치로부터 출력되는 것이 아님)을 설정하여 사용하고 있는데, 본 실시형태에서는, 그 단순화 모델 보용용의 상반력 수평성분 허용범위는, 예를 들면 무한대의 범위로 하거나, 혹은, 단순화 모델 보용(또는 정상 보용)의 상반력 수평성분이 항상 그 상반력 수평성분 허용 범위 내에 들어가는 것과 같은 넓은 범위로 정해 두면 된다. 이렇게 함으로써 동 공보문헌 1에 개시한 알고리즘을 본 실시형태의 S020의 처리에서 지장없이 적용할 수 있다.
이어서, S020의 처리 후, 또는 S016의 판단 결과가 NO인 경우에는, S022로 진행되고, 금회 보용의 순시값을 결정한다. 이 처리는, 상기 도 5의 목표 순시값 발생부(100b) 및 단순화 모델 보용생성부(100c)에서 실행되는 처리이며, S020에서 결정된 보용 패러미터에 기초하여 금회 보용의 순시값(단순화 모델 보용의 순시값)이 결정된다.
이 처리는, 보다 구체적으로는 상기 공보문헌 1의 도 13의 S032의 처리에 상당하는 것이며, 동 공보문헌 1과 동일하게 행해진다. 그것을 요약적으로 설명하면, 상기 S020에서 결정한 보용 패러미터를 기초로, 목표 족평위치 자세, 목표 ZMP, 목표 팔자세, 목표 상반력 연직성분, 기준 상체자세의 순시값이 결정되고, 또한, 그것들의 순시값을 기초로, 상기 단순화 모델상에서, 목표 ZMP와 목표 상반력 연직성분을 만족하도록(로봇(1)의 운동이 발생하는 관성력과 중력의 합력이 목표 ZMP 주위에 작용하는 모멘트 수평성분이 0이 되고, 또, 그 합력의 병진력 연직성분이 목표 상반력 연직성분과 균형을 이루도록) 목표 상체위치 자세의 순시값이 결정된다. 여기에서, 목표 상체위치 자세의 순시값에 관해 보충하면, 목표 상체자세의 순시값은 본 실시형태에서는 기준 상체자세의 순시값과 동일하게 된다. 또, 목표 상체위치 연직성분은, 목표 상반력 연직성분과 상기 식 01로부터 구해지는 단순화 모델의 상체 질점(3m)의 연직위치에 대응하여 결정된다. 그리고, 단순화 모델의 상체 질점(3m)의 수평위치가 상기 식 03의 좌변을 0으로 한 식을 만족시키도록(목표 ZMP 주위의 상반력 모멘트 수평성분이 0이 되도록)결정되고, 이 상체 질점(3m)의 수평위치에 대응하여 목표 상체위치 수평성분이 결정된다.
또한, 상기 공보문헌 1의 도 13의 S032의 처리에서는, 단순화 모델 보용용의 상반력 수평성분 허용범위를 사용하고 있는데, 본 실시형태에서는, 상기 S020의 처리에 관해 설명한 경우와 동일하게, 단순화 모델 보용용의 상반력 수평성분 허용범위는, 예를 들면 무한대의 범위로 하거나, 혹은, 단순화 모델 보용의 상반력 수평성분이 항상 그 상반력 수평성분 허용범위내에 들어가도록 정해 두면 된다.
S022의 처리에서, 차례차례로(제어주기 △t 마다), 순시값이 결정되는 목표 보용(금회 보용)은, 그것을 간결하게 말하면, 상기 단순화 모델상에서, 그 운동이 발생하는 관성력과 중력의 합력이 목표 ZMP 주위에 발생하는 모멘트의 수평성분이 0이 되고, 또한 그 합력의 병진력 연직성분이 목표 상반력 연직성분과 균형을 이루는 보용이다.
이어서, S024로 진행되고, 변위차원 보용 보정 서브루틴을 실행한다. 이 변위차원 보용 보정 서브루틴은 본 발명의 중핵에 관계되는 것으로, 이하에 상세하게 설명한다.
상기 단순화 모델을 사용한 목표 보용의 생성처리에서는, 금회 보용(발산하지 않은 금회 보용)을 안정하게 리얼타임으로 결정할 수 있다는 이점이 있는 반면, 생성되는 보용의 동역학적인 근사 정밀도가 낮다. 이 때문에, 본 발명의 실시형태에서는, 단순화 모델보다도 동역학적 정밀도가 높은 풀 모델을 사용하여, 보용의 일부(목표 상체위치 자세, 목표 ZMP 주위의 모멘트)를 보정한다. 이 경우, 단순화 모델 보용의 동역학적 근사 정밀도가 낮은 것, 풀 모델의 비선형성이 강한 것 등 때문에, 단순화 모델 보용을 풀 모델에 입력하도록 하면, 단순화 모델 보용의 보정이 적정하게 행해지지 않고, 로봇(1)의 계속적인 운동을 행할 수 없는 보용이 생성되어버리는 등의 문제가 발생하는 경우가 있다. 특히, 로봇(1)의 주행과 같이 다리체(2)의 운동이 짧은 시간내에 크게 변화되는 것과 같은 보용을 생성하는 경우에는, 단순화 모델에서는 고려되어 있지 않은 각 다리체(2)의 무릎관절의 굽힘 동작 등에 수반되는 관성력의 변화의 영향이 커져서, 단순화 모델 보용의 동역학적인 근사 정밀도가 저하되어, 상기의 문제가 발생하기 쉬워진다. 그리고, 이러한 문제를 해소하기 위해서, 예를 들면 각 다리체(2)에 복수의 질점을 갖는 동역학 모델을 구축하거나, 게다가 상체 등의, 로봇의 1개 이상의 링크에 이너셔(관성 모멘트)를 갖는 동역학 모델을 구축하고, 그것을 단순화 모델로서 사용함으로써, 단순화 모델 보용의 동역학적 근사 정밀도를 높이는 것을 생각할 수 있다. 그러나, 이렇게 했을 경우에는, 단순화 모델의 비선형성이 높아져서, 정상 보용으로 이어지는 금회 보용의 보용 패러미터(로봇(1)의 운동의 계속성을 확보할 수 있는 보용 패러미터)를 안정시키고 적정하게 찾아내는 것이 곤란하게 되는 경우가 있는 동시에, 그 연산처리에 시간이 걸리고, 나아가서는, 적정한 보용을 리얼타임으로 생성하는 것이 곤란하게 된다.
그래서, 본 실시형태(제 1 실시형태)를 포함하는 본 발명의 각 실시형태에서는, 제 1 및 제 2 변위차원 보정용 모델을 사용하여, 목표 ZMP나 상반력을 포함하 는 동역학 방정식을 사용하지 않고, 제 1 및 제 2 변위차원 보정용 모델의 요소의 배치(질점과 이너셔를 갖는 링크의 위치, 자세)에 관한 기하학적인 처리(위치와 자세의 변위의 차원에서의 처리)에 의해, 단순화 모델 보용의 일부의 운동(구체적으로는 상체위치 자세)만을 보정하도록 했다. 그리고, 그것에 의해, 단순화 모델 보용보다도 동역학적 정밀도가 높은 보용, 상세하게는, 그 보용의 운동에 의해 로봇(1)이 발생하는 실제의 관성력과 중력의 합력의 병진력 성분이 보다 고정밀도로 목표 상반력의 병진력 성분과 균형을 이루고, 또한, 이 합력이 목표 ZMP 주위에 작용하는 모멘트의 수평성분이 보다 고정밀도로 0이 되는 보용을 생성하도록 했다.
단, 동역학적인 정밀도를 높이는 것에만 착안하여, 단순화 모델 보용의 상체위치 및 상체자세의 양자를 보정한 경우, 상체자세가 지나치게 변동될 우려가 있다. 그래서, 로봇(1)의 상체(3)는 일반적으로 다른 부위에 비해 무거운 동시에 이너셔가 크므로, 상체자세가 빈번하게 변동하는 것과 같은 보용으로 로봇(1)의 운동을 행하면, 고관절에 과대한 모멘트가 발생한다. 그 결과, 고관절용 액추에이터에 과대한 부하가 걸리거나, 고관절 부분 및 그 부근이 휘어서 진동하고, 로봇(1)의 자세가 급속하게 불안정하게 되기 쉽다. 또, 로봇(1)의 머리부(4) 등에 시각장치로서 촬상장치를 탑재한 경우에는, 그 흔들림이 발생하기 쉬워져서, 이촬상장치에 의한 환경 인식을 정확하게 행하는 것이 곤란하게 된다.
한편, 예를 들면 비교적 마찰계수가 큰 바닥 위에서 로봇(1)의 보행을 행하는 목표 보용을 생성하는 경우에는, 주로 상체(3)의 병진 운동의 조정에 의해, 로봇(1)의 슬립을 발생하지 않고 목표 ZMP를 만족하는 보용을 생성하는 것이 가능하 다. 따라서, 단순화 모델 보용의 상체자세 및 상체위치 중, 주로 상체위치를 보정함으로써 목표 ZMP를 만족하면서 동역학적인 정밀도를 높이는 것이 가능하다. 다른 한편, 비교적 마찰계수가 작은 바닥 위에서 로봇(1)의 보행을 행하는 경우나, 로봇(1)의 주행과 같이, 목표 상반력 연직성분이 0 혹은 미소하게 되는 시기를 가질 수 밖에 없는 목표 보용을 생성하는 경우에는, 목표 ZMP를 만족하기 위해서 상체자세의 어느 정도의 변동은 피할 수 없다. 이것은, 로봇(1)의 상체(3)의 병진 운동에 의해 발생할 수 있는 관성력의 수평성분(보다 정확하게는 바닥면에 평행한 성분)이 제한을 받아, 그 제한 내에서의 상체(3)의 병진 운동의 조정만으로는 목표 ZMP를 만족하는 것이 곤란하게 되기 때문이다.
이러한 점으로부터, 제 1 실시형태를 포함하는 본 발명의 각 실시형태에서는, 로봇(1)의 목표 보용에서의 운동형태나 바닥의 마찰상태를 고려하면서, 상기 제 1 변위차원 보정용 모델과 제 2 변위차원 보정용 모델을 사용하여, 가능한 한 상체자세의 변동을 억제하면서 동역학적인 정밀도를 높일 수 있도록 단순화 모델 보용의 상체위치 자세를 보정하는 것으로 했다.
이와 같이 단순화 모델 보용의 상체위치 자세를 보정하기 위해서 사용하는 제 1 및 제 2 변위차원 보정용 모델은, 통상, 로봇(1)의 몇개의 부위에 대응하는 질점을 동일하게 구비하고거나, 또는, 질점과 이너셔를 갖는 링크(상체(3) 등)를 동일하게 구비한다. 그리고, 양 변위차원 보정용 모델은 단순화 모델보다도 많은 질점을 갖거나, 또는, 단순화 모델이 갖지 않는 이너셔를 갖는다. 또한, 본 명세서의 각 실시형태에서의 양 변위차원 보정용 모델에서는, 단순화 모델 보용의 상체 위치 자세를 보정하기 위해서, 모두 상체(3)에 대응하는 질점과 이너셔를 갖는 상체 링크가 포함된다.
이 경우, 제 1 변위차원 보정용 모델에서는, 각 질점의 상호의 위치관계 또는 이너셔를 갖는 링크(상체(3) 등)의 자세에 어떤 적당한 구속조건이 부가된다.
보다 상세하게 설명하면(여기에서는 제 1 실시형태에 한정되지 않는 일반적인 설명을 행함), 생성한 단순화 모델 보용의 각 부위의 위치 자세의 순시값(순시 운동) 에 따라, 제 1 변위차원 보정용 모델의 각 질점의 위치가 결정된다. 이때, 제 1 변위차원 보정용 모델이, 로봇(1)의 1개 이상의 링크(상체(3) 등)에 이너셔를 갖는 모델일 경우에는, 그 링크의 자세각도 결정된다. 단, 제 1 변위차원 보정용 모델에서는, 각 질점의 위치관계, 또는 이너셔를 갖는 링크(상체(3) 등)의 자세에 어떤 적당한 기하학적 구속조건이 부가되어 있고, 이것에 의해, 단순화 모델 보용의 각 부위의 위치 자세의 순시값(순시 운동)에 따라, 제 1 변위차원 보정용 모델의 각 질점의 위치나, 이너셔를 갖는 링크의 자세각을 결정했을 때, 단순화 모델 보용의 상반력과 동일한 상반력이 제 1 변위차원 보정용 모델에서도 발생하도록 한다. 제 1 실시형태에서는, 이러한 기하학적 구속조건으로서, 상기 기하학적 구속조건(1)이 제 1 변위차원 보정용 모델에 부가되어 있다.
또한, 제 1 변위차원 보정용 모델에서 설정된 기하학적 구속조건을 갖지 않는 제 2 변위차원 보정용 모델에 대하여, 제 1 변위차원 보정용 모델과의 사이에서, 다음 조건 1, 2를 만족하는 제 2 변위차원 보정용 모델의 각 질점의 위치(또는 각 질점의 위치와 이너셔를 갖는 링크의 자세각)이, 제 2 변위차원 보정용 모델의 제 1 요소 배치로서 가결정된다.
조건 1) 제 1 변위차원 보정용 모델의 질량중심의 위치와 제 2 변위차원 보정용 모델의 질량중심의 위치는 거의 일치한다.
조건 2) 어떤 점(Q)을 정했을 때, 제 1 변위차원 보정용 모델에 대한 제 2 변위차원 보정용 모델의 점(Q) 주변의 각운동량 적의 총합이 어떤 일정값(소정값)이 된다.
여기에서, 조건 1은 양 변위차원 보정용 모델에서 병진 상반력 혹은 질량중심의 운동에 의해 발생하는 관성력이 거의 동일하게 되기 위한 조건이다. 조건 1은 달리 말하면, 제 1 변위차원 보정용 모델의 각 질점의 위치와 이것에 대응하는 제 2 변위차원 보정용 모델의 질점의 위치와의 차(위치 벡터의 차)의 벡터를 이 질점의 병진가속도로 간주했을 때, 각 질점이 발생하는 관성력의 병진력 성분(질점의 질량*병진가속도)의 모든 질점에 대한 총합이 거의 0이 된다고 하는 조건과 등가이다.
또, 조건 2에 관한 상기 각운동량 적은, 각 변위차원 보정용 모델의 각 질점 에 대한 기준위치를 각각 임의로 정하고, 또, 상기 점(Q)의 위치를 임의로 정했을 때, 그 각 질점 마다 이하와 같이 정의되는 것이다. 또한, 각 변위차원 보정용 모델이 이너셔를 갖는 경우(어떤 1개 이상의 링크에 이너셔가 설정되어 있는 경우)에는, 그 이너셔를 갖는 각 링크에 대한 기준 자세각을 각각 임의로 정했을 때, 그 각 링크 마다 이하와 같이 정의되는 것이다.
즉, 각 변위차원 보정용 모델의 질점에 관계되는 각 운동량 적은, 점(Q)과 그 질점에 대응하는 기준위치의 점을 연결하는 선분(그 선분의 벡터)과, 이 질점의 이 기준점으로부터의 위치의 벗어남(그 위치 벗어남의 벡터)의 외적에, 이 질점의 질량을 승산한 것에 상당하는 것이다. 또한, 이 경우, 상기 외적과 질량과의 적에 비례관계를 갖는 것, 또는 이 외적과 질량과의 적에 근사적으로 동일한 것을 당해 질점에 관계되는 각 운동량 적으로 정의해도 된다. 또, 각 변위차원 보정용 모델의, 이너셔를 갖는 링크에 관계되는 각운동량 적은, 그 링크의 자세각의 이 링크에 대응하는 기준 자세각으로부터의 벗어남과 이 링크의 이너셔와의 적에 상당하는 것이다. 또한, 이 경우, 링크의 자세각의 기준 자세각으로부터의 벗어남과 이너셔와의 적에 비례관계를 갖는 것, 또는 이 적에 근사적으로 동일한 것을 당해 링크에 관계되는 각운동량 적으로 정의해도 된다.
또, 각 변위차원 보정용 모델의 질점에 관계되는 각운동량 적에 대해 보충하면, 임의의 질점에 관계되는 각운동량 적은, 질점과 상기 소정의 점을 연결하는 선분과, 그 질점에 대한 기준점과 상기 소정의 점을 연결하는 선분이 이루는 각도에 대해 단조롭게 변화되는 함수(단조증가 함수 또는 단조감소 함수)가 된다.
이렇게 각운동량 적을 정의했을 때, 조건 2는, 보다 상세하게 말하면, 제 1 변위차원 보정용 모델의 각 질점의 위치를, 제 2 변위차원 보정용 모델의 각 질점에 대응하는 기준위치로 하고, 또, 제 1 변위차원 보정용 모델의 이너셔를 갖는 각 링크의 자세각을, 제 2 변위차원 보정용 모델의 이너셔를 갖는 각 링크의 기준 자세각으로 했을 때의, 제 2 변위차원 보정용 모델의 각운동량 적의 총합이 어떤 일정값으로 된다 라고 하는 조건이다.
또, 달리말하면, 조건 2는, 제 1 변위차원 보정용 모델의 각 질점의 위치와 이것에 대응하는 제 2 변위차원 보정용 모델의 질점의 위치와의 차(위치 벡터의 차)의 벡터를 이 질점의 병진가속도로 간주하고, 또, 양 변위차원 보정용 모델의 이너셔를 갖는 각 링크의 자세각의 차를 이 링크의 각가속도로 간주했을 때에, 각 질점이 발생하는 관성력의 병진력 성분이 점(Q)의 주위에 작용하는 모멘트와 이너셔를 갖는 각 링크의 관성력(회전운동의 관성력)이 점(Q) 주위에 작용하는 모멘트와의 총합이 어떤 일정값(소정값)이 된다 라고 하는 조건과 등가이다.
그리고, 본 명세서에서 상세히 설명하는 실시형태에서는, 상기 점(Q)은 예를 들면 목표 ZMP로 설정된다. 또한, 점(Q)은 목표 ZMP에 한정되는 것은 아니지만, 이것 에 대해서는 후에 보충한다.
또한, 본 명세서의 제 1 및 제 2 실시형태에서는, 제 2 변위차원 보정용 모델에 대해, 로봇(1)의 상체자세를 단순화 모델 보용에서의 자세로 규제한 다음, 제 1 변위차원 보정용 모델과의 사이에서, 상기 조건 2를 만족하는 제 2 변위차원 보정용 모델의 각 질점의 위치(또는 각 질점의 위치와 이너셔를 갖는 링크의 자세각)가 제 2 변위차원 보정용 모델의 제 2 요소 배치로서 가결정된다. 그리고, 로봇(1)의 목표 보용에서의 운동 형태나 바닥의 마찰상태에 따른 가중값을 사용하여, 상기 제 1 요소 배치에 대응하는 상체자세와 상기 제 2 요소 배치에 대응하는 상체자세와의 가중 평균이, 변위차원 보정 상체자세로서 결정되는 동시에, 제 1 요소 배치에 대응하는 상체위치와 제 2 요소 배치에 대응하는 상체위치의 가중 평균이 변위차원 보정 상체위치로서 결정된다. 또는, 본 명세서의 제 3 실시형태에서는, 제 2 변위차원 보정용 모델에 대해, 로봇(1)의 목표 보용에서의 운동형태나 바닥의 마찰상태에 따른 가중값을 사용하여, 로봇(1)의 상체자세를, 상기 제 1 요소 배치에 대응하는 상체자세와 단순화 모델 보용의 상체자세와의 가중평균으로 규제한 뒤에, 상기 조건 2를 만족하는 제 2 변위차원 보정용 모델의 각 질점의 위치(또는 각 질점의 위치와 이너셔를 갖는 링크의 자세각)이 제 2 변위차원 보정용 모델의 제 2 요소 배치로서 결정된다. 그리고, 이 제 2 요소 배치에 대응하는 상체위치 자세가, 그대로 변위차원 보정 상체위치 자세로서 결정된다.
본 명세서의 각 실시형태에서는, 상기한 바와 같이, 제 1 변위차원 보정용 모델 및 제 2 변위차원 보정용 모델을 사용하여, 단순화 모델 보용의 목표 상체위치 자세를 보정하여 이루어지는 변위차원 보정 상체위치 자세가 구해진다. 상기 도 6의 플로우차트의 S024의 처리는, 상기한 바와 같이 변위차원 보정 상체위치 자세를 구하는 처리이다.
이하, 제 1 실시형태의 설명으로 되돌아와, 이 제 1 실시형태에서의 S024의 서브루틴 처리를 도 10을 참조하여 구체적으로 설명한다. 또한, 여기에서는, 본 명세서의 실시형태의 이해의 편의상, 사지탈 플레인(X축, Z축을 포함하는 평면) 위에서의 상체위치 자세의 보정(변위차원 보정 상체위치 자세의 산출)에 대해 설명하고, 래터럴 플레인(Y축, Z축을 포함하는 평면) 위에서의 상체위치 자세의 보정에 관해서는 생략한다.
우선, S100에서, 제 1 변위차원 보정용 모델과 제 2 변위차원 보정용 모델 사이의 중심에 관한 상기 조건 1과, 각운동량 적에 관한 상기 조건 2를 만족하도록 제 1 가보정 상체위치 자세(Pb21, θb21)(제 1 가보정 상체위치(Pb21)과 제 1 가보정 상체자세(θb21)의 세트)가 결정된다. 보다 정확하게 말하면, 양 모델 사이에서의 상기 조건 1, 2를 만족하도록 제 2 변위차원 보정용 모델의 상기 제 1 요소 배치가 결정되고, 그 제 1 요소 배치에서의 상체 질점(A1)의 위치 및 상체 링크의 자세에 대응하는 로봇(1)의 상체위치 자세가 상기 제 1 가보정 상체위치 자세(Pb21, θb21)로서 결정된다.
이 S100의 처리는, 도 11의 서브루틴 처리에 의해 실행된다. 이하 설명하면 우선, S200에서, 금회 시각(현재 시각) t에서의 단순화 모델 보용의 순시값(목표 상체위치 자세 등의 목표 운동의 순시값)을 기초로, 제 1 변위차원 보정용 모델의 각 질점(A1~A5)의 위치와, 이너셔를 갖는 상체(3)(상체 링크)의 자세각을 구한다. 구체적으로는, 단순화 모델 보용에서의 로봇(1)의 질량중심의 위치와, 제 1 변위차원 보정용 모델상에서의 로봇(1)의 질량중심의 위치가 동일하게 되도록 제 1 변위차원 보정용 모델의 각 질점(A1~A5)의 위치가 결정된다. 이 경우, 본 실시형태에서는, 단순화 모델 보용에서의 로봇(1)의 질량중심의 위치는, 단순화 모델의 상체 질점(3m)의 위치에 일치하므로, 그 위치는 단순화 모델 보용의 목표 상체위치 자세로부터 일의적으로 정해진다. 그리고, 제 1 변위차원 보정용 모델에서는, 상기한 바와 같이 각 질점(A1~A5)의 상대적 위치관계가 구속되어 있으므로, 그들 질점(A1~A5)의 질량중심의 위치(제 1 변위차원 보정용 모델에서의 로봇(1)의 질량중심의 위치)를 단순화 모델의 상체 질점(3m)의 위치에 일치시킴으로써 각 질점(A1~A5)의 위치가 일의적으로 결정되게 된다. 또, 제 1 변위차원 보정용 모델의 상체 링크의 자세각은, 단순화 모델 보용의 상체자세각(본 실시형태에서는 연직자세)과 동일한 것으로 한다. 이것에 의해 단순화 모델 보용의 순시 운동(금회 시각(t)의 순시값)으로부터, 제 1 변위차원 보정용 모델에 영향을 미치는 상기 기하학적 구속조건(1)에 따라, 제 1 변위차원 보정용 모델의 각 요소의 배치가 결정되게 된다. 또한, 이 제 1 변위차원 보정용 모델의 요소의 배치는 본 발명의 제 1 발명에서의 「제 1 배치」에 상당하는 것이다.
이어서, S202로부터의 처리가 실행되고, 제 1 변위차원 보정용 모델에 대해 상기 조건 1, 2를 충족시키는 제 2 변위차원 보정용 모델의 각 질점(A1~A5)의 위치와, 이너셔를 갖는 상체(3)(상체 링크)의 자세각과의 세트, 즉, 제 2 변위차원 보정용 모델의 상기 제 1 요소 배치가 탐색적으로 결정되고, 그 제 1 요소 배치에서의 상체 질점(A1) 및 상체 링크의 자세에 대응하는 로봇(1)의 상체위치 자세가 제 1 가보정 상체위치 자세(Pb21, θb21)로서 결정된다.
더욱 상세하게는, 우선, S202에서, 제 1 가보정 상체위치 자세의 초기 후보(Pb21_s, θb21_s)를 결정한다. 초기 후보(Pb21_s, θb21_s)는, 금회 시각(t)(현재 시각(t))에서의 제 1 가보정 상체위치(Pb21) 및 제 1 가보정 상체자세(θb21)의 개략적인 예상값에 상당하는 것으로, 예를 들면 다음과 같이 결정된다. 즉, 금회 시각(t)에서의 제 1 가보정 상체위치(Pb21)와 단순화 모델 보용의 상체위치(Pb)와의 차분(위치의 벗어남량)은, 전회 시각(전회의 제어주기의 시각)(t-△)t에서의 Pb21과 Pb와의 차분에 가까운 것으로 생각할 수 있다. 마찬가지로, 금회 시각(t)에서의 제 1 가보정 상체자세(θb21)와 단순화 모델 보용의 상체자세(θb)의 차분( 자세각의 편차량)은 전회시각(t-△t)에서의 θb21과 θb와의 차분에 가까운 것으로 생각할 수 있다. 그래서, 초기 후보(Pb21_s, θb21_s)를, 금회 시각(t)에서의 Pb, θb와, 전회 시각(t-△t)에서의 Pb, θb의 값 Pb_p, θb_p와, 전회시각(t-△t)에서의 Pb21, θb21의 값 Pb21_p, θb21_p과로부터 다음 식에 의해 결정한다.
Pb21_s = Pb+(Pb21_p-Pb_p) …식 04a
θb21_s = θb+(θb21_p-θb_p) …식 05a
이어서, S204를 경과하여, S206~S216의 루프 처리를 실행한다. S206에서는, 제 1 가보정 상체위치 자세의 현재의 후보(Pb21_s, θb21_s)와, 금회 시각(t)에서의 단순화 모델 보용의 목표 양 족평위치 자세를 기초로, 제 2 변위차원 보정 모델에서의 각 질점(A1~A5)의 위치를 구한다. 이 경우, 제 2 변위차원 보정용 모델에서의 로봇(1)의 상체(3)의 위치 자세가 현재의 후보(Pb21_s, θb21_s)에 일치하고, 또한, 제 2 변위차원 보정용 모델에서의 로봇(1)의 각 족평(22)의 위치 자세가 단순화 모델 보용의 목표 족평위치 자세에 일치하고 있는 것으로 가정하고, 각 질점(A1~A5)의 위치가 구해진다. 달리 말하면, 단순화 모델 보용의 순시 운동중의, 상체위치 자세의 순시값만을 후보(Pb21_s, θb21_s)로 바꿔 놓은 순시 운동으로부터, 상기 기하학적 구속조건(2)에 따라, 제 2 변위차원 보정용 모델에서의 각 질점(A1~A5)의 위치가 구해진다.
구체적으로는, 족평 질점 A3, A4의 위치는 목표 족평위치 자세로부터 결정된다. 또, 상체 질점(A1)의 위치는 후보(Pb21_s, θb21_s)로부터 결정되고, 상체(3)(상체 링크)의 자세각은 θb21_s와 동일하게 된다. 그리고, 각 대퇴 질점(A2, A3)의 위치는, 목표 양 족평위치 자세와 후보(Pb21_s, θb21_s)로부터 정해지는 로봇(1)의 각 다리체(2)의 자세로부터 결정된다. 보충하면, 상기한 바와 같이 본 명세서의 실시형태의 로봇(1)에서는, 각 다리체(2)는 각각 6자유도를 가지므로, 양 족평(22, 22) 및 상체(3)의 위치 자세가 정해지면, 각 다리체(2)의 각 부의 위치 자세도 일의적으로 정해진다. 따라서, 제 2 변위차원 보정용 모델의 상체 질점(A1)의 위치, 상체 링크의 자세각, 양 족평 질점(A4, A5)의 위치가 정해지면, 각 대퇴 질점(A2, A3)의 위치가 일의적으로 정해진다.
이어서, S208로 진행되고, 제 1 변위차원 보정용 모델과 제 2 변위차원 보정용 모델 사이에서의 질량중심의 위치의 벗어남(Gc_err)(이하, 모델간 전체 중심 벗어남(Gc_err)이라고 함)과, 제 1 변위차원 보정용 모델에 대한 제 2 변위차원 보정용 모델의 각운동량 적의 총합의 편차량(L_err)(이하, 모델간 각운동량 적 벗어남(L_err)이라고 함)을 구한다. 이 처리를 이하에 보다 구체적으로 설명한다. 또한, 이하의 설명에서는, 제 1 및 제 2 변위차원 보정용 모델의 각 질점(A1~A5)의 질량을 각각 mi(i=1,2,…,5), 위치(위치 벡터)를 일반적으로 Pi1 혹은 Pi2(i=1,2,…,5)로 표시한다. Pi1은 제 1 변위차원 보정용 모델의 질점(Ai)의 위치, Pi2는 제 2 변위차원 보정용 모델의 질점(Ai)의 위치를 일반적으로 나타내는 부호이다. 또, 제 1 및 제 2 변위차원 보정용 모델에서의 상체(3)(상체 링크)의 자세각을 각각 일반적으로 θb1, θb2로 표시한다. 본 실시형태에서는, θb1은 단순화 모델 보용의 목표 상체자세(θb)(연직자세)와 동일하다.
모델간 전체 중심 벗어남(Gc_err) 및 모델간 각운동량 벗어남(L_err)은 각각 예를 들면 다음 식 06, 07에 의해 산출된다.
Gc_err = Σ(mi*(Pi2_pi1)) …식 06
L_err = Σ(mi*(Pi1_Q)*(Pi2_pi1))+Ib*(θb2-θb1)+Const …식 07
여기에서, 이들 식의 Σ는 그것에 계속되는 괄호내의 부분의 모든 질점(Ai)(i=1,2,…,5)에 대한 총합을 의미한다. 또, 식 07의 「Const」는, 미리 정한 소정값이며, 상기 조건 2에서의 「일정값」(소정값)에 상당하는 것이다. 또, 식 07의 Q는 본 실시형태에서는, 단순화 모델 보용의 목표 ZMP의 위치와 동일하다.
이들 식 06, 07에서, 식 06의 우변은, 제 1 변위차원 보정용 모델의 각 질점(A1~A5)의 위치(Pi1)(i=1,2,…,5)에 의해 정해지는 질량중심의 위치와 제 2 변위차원 보정용 모델의 각 질점(A1~A5)의 위치(Pi2)(i=1,2,…,5)에 의해 정해지는 질량중심의 위치와의 벗어남을 의미하고 있다. 따라서, 모델간 전체 중심 벗어남(Gc_err)의 값이 0(0벡터) 혹은 거의 0이면, 상기 조건 1이 충족시켜지게 된다.
또, 식 07의 우변으로부터 「Const」를 제거한 항은, 제 1 변위차원 보정용 모델에 대한 제 2 변위차원 보정용 모델의 각운동량 적의 총합을 의미한다. 달리 말하면, 식 07의 우변으로부터 「Const」를 제거한 항은, 제 1 변위차원 보정용 모델의 각 질점(A1~A5)의 위치(Pi1)(i=1,2,…,5)를 제 2 변위차원 보정용 모델의 각 질점(A1~A5)의 기준위치로 하고, 또한, 제 1 변위차원 보정용 모델의 상체(3)(상체 링크)의 자세각을, 제 2 변위차원 보정용 모델의 상체(3)(상체 링크)의 기준 자세각으로 했을 때의, 제 2 변위차원 보정용 모델의 각운동량 적의 총합을 의미한다.
따라서, 모델간 각운동량 적 벗어남(L_err)의 값이 항상 0 혹은 거의 0이면 상기 조건 2가 충족시켜지게 된다.
여기에서 식 07의 우변의 Σ에 이어지는 괄호 내의 항에 대해 보충하면, (Pi1_Q)*(Pi2_pi1)은, 점(Q)와 질점(Ai)을 연결하는 선분의 벡터와, 제 1 변위차원 보정용 모델의 질점(Ai)에 대한 제 2 변위차원 보정용 모델의 질점(Ai)의 위치 벗어남의 벡터의 외적이다. 그것을 시각적으로 표현하면, (Pi1_Q)*(Pi2_pi1)은, 도 13에 도시하는 바와 같이, 사선 혹은 망 모양을 그은 각 삼각형의 면적의 2배의 크기의 양에 상당한다. 또한, 도 13에서는, 제 1 및 제 2 변위차원 보정용 모델의 각각에 있어서의 질점(Ai)(i=1,2,…,5)의 위치 Pi1, Pi2를 Pi1(Ai), Pi2(Ai)과 같이 기재하고 있다.
또, 각운동량 적에 관한 식 07에 관해서는, 이것 대신에, 다음 식 08~10중 어느 하나를 사용해도 된다.
L_err=Σ(Ci*mi*각도(Pi1_Q_Pi2))+Ib*(θb2-θb1)+Const …식 08
L_err=Σ(mi*(질점(Ai)의 수평성분 변위*높이))
+Ib*(θb2-θb1)+Const …식 09
L_err=Σ(mi*(질점의 수평성분 변위*높이)*C(질점(Ai)의 높이))
+Ib*(θb2-θb1)+Const …식 10
여기에서, 식 08중의 「각도(Pi1_Q_Pi2)」는, 제 1 변위차원 보정용 모델의 질점(Ai)과 점(Q)을 연결하는 선분과, 제 2 변위차원 보정용 모델의 질점(Ai)과 점(Q)을 연결하는 선분이 이루는 각도를 의미한다. 또, 식 08중의 「Ci」는 소정의 계수이며, 그 값은 Ci*mi*각도(Pi1_Q_Pi2)가 양 변위차원 보정용 모델의 질점(Ai)과 점(Q)로 형성되는 삼각형의 면적의 2배에 거의 동일하게 되도록 결정된다. 또, 식 09 및 10에서의 「질점(Ai)의 수평성분 변위」는, 제 1 변위차원 보정용 모델의 질점(Ai)과 제 2 변위차원 보정용 모델의 질점(Ai)의 위치 벗어남(Pi2_pi1)의 수평성분을 의미하고, 「높이」는 제 1 또는 제 2 변위차원 보정용 모델의 질점(Ai)의 점(Q)에 대한 상대높이, 즉, Pi1_Q 또는 Pi2-Q의 연직성분을 의미한다. 또한 식 10의 「C(질점(Ai)의 높이)」는, 제 1 또는 제 2 변위차원 보정용 모델의 질점(Ai)의 점(Q)에 대한 상대높이(Pi1_Q 또는 Pi2-Q의 연직성분)의 어떤 함수값을 의미한다. 이 경우, 함수값(C)(질점(Ai)의 높이)는, 기본적으로는, 질점(Ai)의 높이가 높을 수록, 값이 작아지는 단조함수인 것이 바람직하다.
각 운동량적에 관한 상기 식 07~10의 어느것을 사용해도, 그 식의 우변의 「Const」를 제외한 항은 각운동량 적의 총합에 거의 비례하거나 혹은 대체로 동일한 것으로 된다. 또한, 식 07~10의 「Const」는 일반적으로는 서로 상이하다.
보충하면, 상기 식 07~10의 우변의 Σ에 이어지는 각 항은, 제 1 변위차원 보정용 모델의 질점(Ai)과 점(Q)을 연결하는 선분과, 제 2 변위차원 보정용 모델의 질점(Ai)과 점(Q)을 연결하는 선분이 이루는 각도(Pi1_Q_Pi2)에 대해 거의 단조롭게 변화되는 함수가 된다.
본 실시형태에서는, S208에서, 상기 식(6)의 Pi1에 S200에서 구한 제 1 변위차원 보정용 모델의 각 질점(A1~A5)의 위치를 대입함과 동시에, 동 식(6)의 Pi2에, S206에서 구한 각 질점(A1~A5)의 위치를 대입함으로써 모델간 중심위치 벗어 남(Gc_err)이 산출된다. 또, 상기 식(7)의 Pi1, Pi2를 식(6)과 동일하게 함과 동시에, θb1에 S200에서 구한 상체자세(본 실시형태에서는 연직자세)을 대입하고, 또한, θb2에 제 1 가보정 상체자세의 후보의 현재값(θb21)을 대입함으로써 모델간 각운동량 적 벗어남(Lc_err)이 산출된다.
상기한 바와 같이 S208에서, 모델간 전체 중심 벗어남(Gc_err)과 모델간 각운동량 적 벗어남(L_err)을 구한 후, S210으로 진행되고, Gc_err과 L_err이 0근방의 소정의 범위 내에 있는지의 여부가 판단된다. 그리고, 이 판단 결과가 YES일 경우에는 S212를 경과하여, 후술의 S218로 진행된다. 한편, 그 판단 결과가 NO일 경우에는, S214로 진행되고, 제 1 가보정 상체위치 자세의 현재의 후보(Pb21_s, θb21_s)의 부근에 복수의 가후보(Pb21_s+△Pb21x, θb21_s), (Pb21_s+△Pb21z, θb21_s), (Pb21_s, θb21_s+△θb21)을 정한다. △Pb21x, △Pb21y는 각각 제 1 가보정 상체위치의 후보(Pb21_s)를 현재값으로부터 X축 방향, Y축 방향으로 미소량 변화시키기 위한 소정값이며, △θb21은 제 1 가보정 상체자세의 후보(θb21)를 Y축 주위로 미소량 변화시키기 위한 소정값이다. 그리고, 이들 각 가후보에 대해, 상기 S206, S208과 동일한 처리를 실행하고, 모델간 전체 중심 벗어남(Gc_err)과 모델간 각운동량 적 벗어남(L_err)을 구한다. 이 S214의 처리는, 제 1 가보정 상체위치 자세의 후보(Pb21_s, θb21_s)를 현재값으로부터 변화시켰을 때의 Gc_err와 L_err의 변화의 정도를 관측하기 위한 처리이다.
이어서, S216으로 진행되고, S208 및 S214에서 구한 Gc_err, L_err를 기초로, 그것들의 값이 0에 근접하도록 제 1 가보정 상체위치 자세의 새로운 후보를 결 정하고, 그것을(Pb21_s, θb21_s)에 대입한다. 새로운 후보는, 예를 들면 야코비안(감도 매트릭스)을 사용하여 결정된다. 그리고, S206으로부터의 처리가 다시 실행된다.
이상과 같이 하여, S206~S216의 루프 처리에 의해, Gc_err과 L_err이 0 근방의 소정의 범위 내에 들어가는 제 1 가보정 상체위치 자세, 바꾸어 말하면, 상기 조건 1, 2를 충족시키는 제 1 가보정 상체위치 자세가 탐색적으로 구해진다. 보충하면, S210의 조건이 만족시켜졌을 때의 제 1 가보정 상체위치 자세와, 이 S210의 직전의 S206에서 구해진 각 질점의 위치의 세트가, 상기 제 1 요소 배치에 상당하는 것이 된다. 또, 이 제 1 요소 배치는, 본 발명의 제 1 발명에서의 「제 2 배치」에 상당하는 것이다.
그리고, S210의 판단 결과가 YES가 되면, S212를 경과하여 S218로 진행되고, 현재의 (Pb21_s, θb21_s)이 금회 시각(t)에서의 제 1 가보정 상체위치 자세(Pb21, θb21)로서 결정된다. 이것에 의해, 단순화 모델 보용의 상체위치 자세를 상기 조건 1, 2를 만족시키도록 보정하여 이루어지는 보용(이하, 제 1 가보정 보용이라고 하는 경우가 있음)이 얻어지게 된다. 이 제 1 가보정 보용은, 단순화 모델 보용 중, 목표 상체위치 자세만을 보정한 것이며, 목표 족평위치 자세, 목표 ZMP, 목표 상반력 연직성분 등, 목표 보용의 다른 구성요소는 단순화 모델 보용과 동일하다. 또, 이 제 1 가보정 보용의 운동은, S210의 조건이 만족시켜졌을 때의 제 2 변위차원 보정용 모델의 배치(상기 제 1 요소 배치)로부터, 상기 기하학적 구속조건(2)에 따라서 결정되는 순시 목표 운동과 동일하다. 또, 이 제 1 가보정 보용의 운동은 본 발명의 제 1 발명에서의 제 1 가보정 순시 목표 운동에 상당한다. 따라서, S100의 처리에 의해, 본 발명의 제 1 발명에서의 제 1 가보정 운동 결정수단이 구성되어 있게 된다.
이상이 S100의 서브루틴 처리이다.
도 10의 플로우차트의 설명으로 되돌아와, 상기한 바와 같이 S100의 처리를 실행한 후, S102의 처리가 실행된다. 이 S102의 처리에서는, 제 2 변위차원 보정용 모델에서의 상체자세를 단순화 모델 보용의 순시값(금회 시각(t)에서의 순시값)에서의 상체자세와 동일하게 하고, 제 1 변위차원 보정용 모델과 제 2 변위차원 보정용 모델 사이의 각운동량 적에 관한 상기 조건 2를 만족하도록 제 2 가보정 상체위치 자세(Pb22, θb22)(제 2 가보정 상체위치(Pb22)와 제 2 가보정 상체자세(θb22)의 세트)가 결정된다. 보다 정확하게 말하면, 제 2 변위차원 보정용 모델에서의 상체자세를 단순화 모델 보용의 상체자세와 동일하게 한 뒤에, 양 모델 사이에서의 상기 조건 2를 만족하도록 제 2 변위차원 보정용 모델의 상기 제 2 요소 배치가 결정되고, 그 제 2 요소 배치에서의 상체 질점(A1)의 위치 및 상체 링크의 자세에 대응하는 로봇(1)의 상체위치 자세가 상기 제 2 가보정 상체위치 자세(Pb22, θb22)로서 결정된다. 또한, 이 S102의 처리에서는, 제 2 가보정 상체자세(θb22)는, 단순화 모델 보용의 상체자세와 동일할되므로, 이 S102의 처리는, 실질적으로는, 조건 2를 만족하도록 제 2 가보정 상체위치(Pb22)를 결정하는 처리라고 할 수 있다.
이 S102의 처리는 도 12의 서브루틴 처리에 의해 실행된다. 이하 설명하면, 우선, S300에서, 금회 시각(현재 시각)(t)에서의 단순화 모델 보용의 순시값(목표 상체위치 자세 등의 목표 운동의 순시값)을 기초로, 제 1 변위차원 보정용 모델의 각 질점(A1~A5)의 위치와, 이너셔를 갖는 상체(3)(상체 링크)의 자세각을 구한다. 이 처리는, 도 11의 S200의 처리와 동일하고, 구해지는 제 1 변위차원 보정용 모델의 각 요소의 배치도 S200의 처리에서 구해지는 것과 동일하다. 따라서, S200에서 구한 제 1 변위차원 보정용 모델의 각 요소의 배치를 그대로 도 12의 서브루틴 처리에서 사용하도록 하면, S300의 처리는 생략해도 된다.
이어서, S302로부터의 처리가 실행되고, 제 1 변위차원 보정용 모델에 대해 상기 조건 2를 충족시키는 제 2 변위차원 보정용 모델의 각 질점(A1~A5)의 위치와, 이너셔를 갖는 상체(3)(상체 링크)의 자세각의 세트, 즉, 제 2 변위차원 보정용 모델의 상기 제 2 요소 배치가 탐색적으로 결정되고, 그 제 2 요소 배치에서의 상체 질점(A1) 및 상체 링크의 자세에 대응하는 로봇(1)의 상체위치 자세가 제 2 가보정 상체위치 자세(Pb22, θb22)로서 결정된다. 단, 이 경우, 제 2 가보정 상체자세(θb22)는 단순화 모델 보용의 순시값(금회 시각(t)의 순시값)과 동일한 것으로 한다. 따라서, S302로부터의 처리는, 실질적으로는, 제 2 가보정 상체위치(Pb22)를 상기 조건 2를 만족시키도록 결정하는 처리이다.
더욱 상세하게는, 먼저, S302에서, 제 2 가보정 상체위치 자세의 초기 후보(Pb22_s, θb22_s)를 결정한다. 즉, 초기 후보(Pb22_s, θb22_s) 중, Pb22_s를 금회 시각(t)에서의 단순화 모델 보용의 상체위치(Pb)와, 전회시각(t-△t)에서의 단순화 모델 보용의 상체위치의 값(Pb_p)과, 전회시각(t-△t)에서의 제 2 가보정 상 체위치의 값(Pb22_p)으로부터 다음 식 04b에 의해 결정함과 동시에, 금회 시각(t)에서의 단순화 모델 보용의 상체자세(θb)로부터 다음 식 05b에 의해 결정한다.
Pb22_s=Pb+(Pb22_p-Pb_p) …식 04b
θb21_s=θb …식 05b
따라서, 제 2 가보정 상체위치의 초기 후보(Pb22_s)는, 상기 S202에서 먼저 설명한 것과 같이 결정되는 제 1 가보정 상체위치의 초기 후보(Pb21_s)와 동일하게 결정되는 한편, 제 2 가보정 상체자세의 초기 후보(θb22_s)는 단순화 모델 보용의 상체자세와 동일한 것으로 한다.
이어서, S304를 경과하여, S306~S316의 루프 처리를 실행한다. S306에서는, 제 2 가보정 상체위치 자세의 현재의 후보(Pb22_s, θb22_s)와, 금회 시각(t)에서의 단순화 모델 보용의 목표 양 족평위치 자세를 기초로, 제 2 변위차원 보정 모델에서의 각 질점(A1~A5)의 위치를 구한다. 이 처리는, 후보(Pb22_s, θb22_s)의 값 이외는, 상기 S206과 동일하고, 금회 시각(t)에서의 단순화 모델 보용의 순시 운동 중, 상체위치 자세만을 후보(Pb22_s, θb22_s)로 치환한 순시 운동으로부터, 상기 기하학적 구속조건(2)에 따라, 제 2 변위차원 보정용 모델에서의 각 질점(A1~A5)이 구해진다.
이어서, S308로 진행되고, 제 1 변위차원 보정용 모델과 제 2 변위차원 보정용 모델 사이에서의 모델간 각운동량 적 벗어남(L_err)을 구한다. 이 구하는 방식은 상기 S208에서 모델간 각운동량 적 벗어남을 구하는 경우와 동일하다. 즉, 상기 식(7)의 Pi1에 S300에서 구한 제 1 변위차원 보정용 모델의 각 질점(A1~A5)의 위치를 대입함과 동시에, 동 식(7)의 Pi2에, S306에서 구한 각 질점(A1~A5)의 위치를 대입하고, 또한, 식(7)의 θb2에 제 2 가보정 상체자세의 후보의 현재값(θb22)(=금회 시각(t)의 θb)을 대입함으로써 모델간 각운동량 적 벗어남(Lc_err)이 산출된다. 또한, 식(7) 대신에 상기 식(8)~(10)을 사용해도 된다.
이어서, S310로 진행되고, L_err가 0 근방의 소정의 범위내에 있는지의 여부가 판단된다. 그리고, 이 판단 결과가 YES일 경우에는, S312를 경과하고, 후술의 S318로 진행된다. 한편, 그 판단 결과가 NO일 경우에는, S314로 진행되고, 제 2 가보정 상체위치 자세의 현재의 후보(Pb22_s, θb22_s)의 부근에, 이 후보의 상체위치(Pb22_s)만을 미소량 변화시킨 복수의 가후보(Pb22_s+△Pb22x, θb22_s), (Pb22_s+△Pb22z, θb22_s)를 정한다. △Pb22x, △Pb22y는 각각 제 1 가보정 상체위치의 후보(Pb22_s)를 현재값으로부터 X축 방향, Y축 방향으로 미소량 변화시키기 위한 소정값이다. 그리고, 이들 각 가후보에 대해, 상기 S306, S308과 동일한 처리를 실행하여, 모델간 각운동량 적 벗어남(L_err)을 구한다. 이 S314의 처리는, 제 2 가보정 상체위치 자세의 후보(Pb22_s, θb22_s) 중의 상체위치의 후보만을 현재값으로부터 변화시켰을 때의 L_err과의 변화의 정도를 관측하기 위한 처리이다.
이어서, S316으로 진행되고, S308 및 S314에서 구한 L_err를 기초로, 그 값이 0에 근접하도록 제 2 가보정 상체위치 자세의 새로운 후보를 결정하고, 그것을(Pb22_s, θb22_s)에 대입한다. 새로운 후보는, 예를 들면 야코비안(감도 매트릭스)을 사용하여 결정된다. 그리고, S306부터의 처리가 다시 실행된다.
이상과 같이 하여, S306~S316의 루프 처리에 의해, 제 2 가보정 상체자세를 단순화 모델 보용의 상체자세와 같이 한 상태에서, L_err이 0근방의 소정의 범위 내에 들어가는 제 2 가보정 상체위치, 바꾸어 말하면, 상기 조건 2를 충족시키는 제 2 가보정 상체위치가 탐색적으로 구해진다. 보충하면, S310의 조건이 만족시켜졌을 때의 제 2 가보정 상체위치 자세와, 이 S310의 직전의 S306에서 구해진 각 질점의 위치와의 세트가, 상기 제 2 요소 배치에 상당하게 된다. 또, 이 제 2 요소 배치는, 본 발명의 제 1 발명에서의 「제 3 배치」에 상당하는 것이다.
그리고, S310의 판단 결과가 YES가 되면, S312를 경과하여 S318로 진행되고, 현재의 (Pb22_s, θb22_s)가 금회 시각(t)에서의 제 2 가보정 상체위치 자세(Pb22, θb22)로서 결정된다. 이것에 의해, 단순화 모델 보용의 상체위치를 상기 조건 2를 만족시키도록 보정하여 이루어지는 보용(이하, 제 2 가보정 보용이라고 하는 경우가 있음)이 얻어지게 된다. 이 제 2 가보정 보용은, 단순화 모델 보용 중, 목표 상체위치만을 보정한 것이며, 목표 상체자세, 목표 족평위치 자세, 목표 ZMP, 목표 상반력 연직성분 등, 목표 보용의 다른 구성요소는 단순화 모델 보용과 동일하다. 또, 이 제 2 가보정 보용은, S310의 조건이 만족시켜졌을 때의 제 2 변위차원 보정용 모델의 배치(상기 제 2 요소 배치)로부터, 상기 기하학적 구속조건(2)에 따라서 결정되는 순시 목표 보용과 동일하다. 또, 이 제 2 가보정 보용의 운동은 본 발명의 제 1 발명에서의 제 2 가보정 순시 목표 운동에 상당한다. 따라서, S102의 처리에 의해, 본 발명의 제 1 발명에서의 제 2 가보정 운동 결정수단이 구성되어 있게 된다.
이상이 S102의 서브루틴 처리이다.
도 10의 플로우차트의 설명으로 되돌아와, 상기한 바와 같이 S102의 처리를 실행한 후, S104의 처리가 실행된다. 이 처리에서는, 상기 제 1 가보정 상체위치 자세 및 제 2 가보정 상체위치 자세로부터 최종적으로 변위차원 보정 상체위치 자세를 결정하기 위한 가중값 w1에 관한 기본값 w1_aim(이하, 가중값 기본값(w1_aim)이라고 함)이 결정된다. 구체적으로는, 금회 보용에 관계되는 로봇(1)의 동작 모드가 상기 주행 모드일 경우에는, w1_aim=1, 상기 저마찰 바닥면 보행 모드일 경우에는, w1_aim=0.5, 이것들 이외의 동작 모드(즉 상기 통상 모드)일 경우에는, w1_aim=0인 것으로 된다.
이어서, S106에서, 가중값 w1의 값을 현재값(전회시각(t-△t)에 결정된 값)에서, 금회 시각(t)의 S104에서 상기한 바와 같이 결정한 가중값 기본값(w1_aim)에 서서히 근접하도록 결정한다. 구체적으로는, 예를 들면, 가중값 w1의 현재값과 가중값 기본값(w1_aim)의 차에 소정의 계수값(0<계수값<1)을 승산한 것을, 가중값 w1의 현재값에 더함으로써 금회 시각(t)에서의 가중값 w1을 결정한다. 이렇게 함으로써 가중값 w1은 가중값 기본값(w1_aim)에 응답지연을 동반하면서 서서히 추종하도록 결정된다. 이것은, 로봇(1)의 동작 모드가 바뀌고, 가중값 기본값(w1_aim)이 바뀌었을 때에, 가중값 w1의 값의 급변(불연속한 변화)을 피하기 위한 처리이다. 또한, 가중값 w1은 가중값 기본값(w1_aim)이 정상적으로 동일한 값으로 유지되면, 최종적으로 그 가중값 기본값(w1_aim)과 동일한 값에 유지되게 된다.
이어서, S108에서, 다른 또 하나의 가중값 w2가 결정된다. 이 가중값 w2는 먼저 결정한 가중값 w1과의 합이 1이 되도록 결정된다. 즉, 가중값 w2는 다음 식 11에 의해 결정된다.
w2=1-w1 …식 11
이어서, S110에서, 금회 시각(t)의 변위차원 보정 상체위치 자세(Pb2, θb2)가 최종적으로, 다음 식에 의해 결정된다.
Pb2=w1*Pb21+w2*Pb22 …식 12
θb2=w1*θb21+w2*θb22 …식 13
즉, 변위차원 보정 상체위치(Pb2)는, 금회 시각(t)에서, 전술과 같이 구한 제 1 가보정 상체위치(Pb21), 제 2 가보정 상체위치(Pb22)에 각각 가중값 w1, w2를 승산한 것의 총합, 바꾸어 말하면, 제 1 가보정 상체위치(Pb21), 제 2 가보정 상체위치(Pb22)의 가중평균값으로서 구해진다. 또, 변위차원 보정 상체자세(θb2)는, 제 1 가보정 상체자세(θb21), 제 2 가보정 상체자세(θb22)에 각각 가중값 w1, w2를 승산한 것의 총합, 바꾸어 말하면, 제 1 가보정 상체자세(θb21) 및 제 2 가보정 상체자세(θb22)의 가중평균값으로서 구해진다.
이상과 같이 하여, 변위차원 보용 보정 서브루틴의 처리가 실행되고, 변위차원 보정 상체위치 자세가 구해진다. 이것에 의해, 단순화 모델 보용의 상체위치 자세를 보정하여 이루어지는 목표 보용(이하, 변위차원 보정 보용이라고 하는 경우가 있음)이 얻어지게 된다. 이 변위차원 보정 보용은, 단순화 모델 보용 중, 목표 상체위치 자세만을 보정한 것이며, 목표 족평위치 자세, 목표 ZMP, 목표 상반력 연직성분 등, 목표 보용의 다른 구성요소는 단순화 모델 보용과 동일하다.
보충하면, 제 1 실시형태에서의 상기 변위차원 보정 보용의 운동은 본 발명 의 제 1 발명에서의 보정 후 순시 목표 운동에 상당한다. 따라서, S024의 변위차원 보용 보정 서브루틴의 처리에 의해, 이 제 1 발명에서의 목표 운동 보정 수단이 구성되게 된다.
여기에서, 단순화 모델 보용과, 이 단순화 모델 보용의 상체위치 자세를 상기 제 1 가보정 상체위치 자세로 보정하여 이루어지는 보용(상기 제 1 가보정 보용)과, 단순화 모델 보용의 상체위치 자세를 상기 제 2 가보정 상체위치 자세로 보정하여 이루어지는 보용(상기 제 2 가보정 보용)과, 변위차원 보정 보용의 관계에 대해 도 14~도 16을 참조하여 보충 설명을 해 둔다. 도 14은 제 2 변위차원 보정용 모델의 각 질점(Ai)(i=1,2,…,5)의 위치 및 상체(3)(상체 링크)의 자세각을 단순화 모델 보용대로 결정한 경우(즉 단순화 모델 보용을 상기 S024에서 보정하지 않은 경우)에 있어서의 제 2 변위차원 보정용 모델의 각 질점(Ai)의 위치 및 상체(3)(상체 링크)의 자세각과, 이 단순화 모델 보용에 대응하여 정해지는 제 1 변위차원 보정용 모델의 각 질점(Ai)의 위치 및 상체(3)(상체 링크)의 자세각의 관계를 예시하고 있다. 이 경우의 제 2 변위차원 보정용 모델의 각 질점(Ai)의 위치 및 상체(3)의 자세각, 즉, 제 2 변위차원 보정용 모델의 요소의 배치는, 달리 말하면, 단순화 모델 보용의 순시 운동으로부터, 상기 기하학적 구속조건(2)에 따라 결정된 것이라 할 수 가 있다. 또한, 상기 도 14에서는, 단순화 모델 보용에 대응하는 제 2 변위차원 보정용 모델의 각 질점(Ai)(i=1,2, ??,5)의 위치를 Pi2'(Ai)로 나타내고 있다.
또, 도 15는 상기 제 1 가보정 보용에 대응하는 제 2 변위차원 보정용 모델 의 각 질점(Ai)의 위치 및 상체(3)(상체 링크)의 자세각과, 제 1 변위차원 보정용 모델의 각 질점(Ai)의 위치 및 상체(3)(상체 링크)의 자세각의 관계를 예시하고 있다. 이 도 15의 제 2 변위차원 보정용 모델의 각 요소의 배치는, 도 14에서 상정하고 있는 단순화 모델 보용의 순시값에 대응하여, 상기 도 10의 S100에서 최종적으로 결정되는 제 2 변위차원 보정용 모델의 상기 제 1 요소 배치이다. 이 배치는, 상기 제 1 가보정 보용으로부터, 상기 기하학적 구속조건(2)에 따라 정해지는 것과 동일하다. 또한, 도 15에서는, 제 1 가보정 보용에 대응하는 제 2 변위차원 보정용 모델의 각 질점(Ai)(i=1,2,…,5)의 위치를 Pi21(Ai)로 표시하고 있다. 또, 도 15에 도시하는 제 1 변위차원 보정용 모델의 각 질점(Ai)의 위치 및 상체(3)(상체 링크)의 자세각은 도 14와 동일하다.
또, 도 16은 상기 제 2 가보정 보용에 대응하는 제 2 변위차원 보정용 모델의 각 질점(Ai)의 위치 및 상체(3)(상체 링크)의 자세각과, 제 1 변위차원 보정용 모델의 각 질점(Ai)의 위치 및 상체(3)(상체 링크)의 자세각의 관계를 예시하고 있다. 이 도 16의 제 2 변위차원 보정용 모델의 각 요소의 배치는, 도 14에서 상정하고 있는 단순화 모델 보용의 순시값에 대응하여, 상기 도 10의 S102에서 최종적으로 결정되는 제 2 변위차원 보정용 모델의 상기 제 2 요소 배치이다. 이 배치는, 상기 제 2 가보정 보용으로부터, 상기 기하학적 구속조건(2)에 따라 정해지는 것과 동일하다. 또한, 도 16에서는, 제 2 가보정 보용에 대응하는 제 2 변위차원 보정용 모델의 각 질점(Ai)(i=1,2,…,5)의 위치를 Pi22(Ai)로 나타내고 있다. 또, 도 16에 도시하는 제 1 변위차원 보정용 모델의 각 질점(Ai)의 위치 및 상체(3)(상 체 링크)의 자세각은 도 14와 동일하다.
이후의 설명에서는, 일반적으로, 제 1 변위차원 보정용 모델의 어떤 임의의 질점과, 이것에 대응하는 제 2 변위차원 보정용 모델의 질점과의 위치 벗어남을 병진가속도로 간주했을 때의 그 병진가속도를 그 질점의 모델간 의사 병진가속도라고 한다. 또, 제 1 변위차원 보정용 모델의 이너셔를 갖는 어떤 링크와, 이것에 대응하는 제 2 변위차원 보정용 모델의 링크의 자세각의 벗어남을 각가속도로 간주했을 때의 그 각가속도를 그 링크의 모델간 유사 각가속도라고 한다.
도 14에 도시하는 예에서, 단순화 모델 보용에 대응하는 제 2 변위차원 보정용 모델의 각 질점(Ai)의 위치(Pi2')에서는, 양다리체(2, 2)의 질점(A2~A5) 중, 지지다리측의 질점(A2, A4)은 제 1 변위차원 보정용 모델에 대해 약간, 로봇(1)의 전방측으로 위치 벗어난다. 또, 제 2 변위차원 보정용 모델의 미착지 다리측의 질점(A3, A5)은 제 1 변위차원 보정용 모델에 대해 비교적 크게 로봇(1)의 후방측으로 위치 벗어난다. 이 때문에, 제 2 변위차원 보정용 모델에서의 로봇(1)의 질량중심이 제 1 변위차원 보정용 모델에서의 로봇(1)의 질량중심(이것은 본 실시형태에서는 단순화 모델 보용에서의 로봇(1)의 질량중심과 일치함)보다도 로봇(1)의 후방측(X축의 마이너스 방향)으로 치우친다. 달리 말하면, 양다리체(2, 2)의 각 질점(A2~A5)의 모델간 의사 병진가속도에 의해 각 질점(A2~A5)이 발생하는 관성력의 병진력 성분(=각 질점(A2~A5)의 질량*모델간 의사 병진가속도)의 총합이 로봇(1)의 전방측으로 비교적 큰 것이 된다. 또, 각 질점(A2~A5)의 모델간 의사 병진가속도에 의해 각 질점(A2~A5)이 발생하는 관성력이 목표 ZMP 주위에 작용하는 모멘트가 로봇(1)의 전방 경사쪽으로 비교적 크게 된다. 또한, 본 실시형태에서는, 단순화 모델 보용의 상체자세와 제 1 변위차원 보정용 모델의 상체자세와는 동일하므로, 도 14의 예에서는, 상체 질점(A1)의 모델간 의사 병진가속도는 0이며, 또, 상체 링크의 모델간 유사 각가속도도 0이다.
이에 반해, 상기 제 1 가보정 보용에 대응하는 제 2 변위차원 보정용 모델의 요소의 배치(제 1 요소 배치), 즉, 상기 도 10의 S100에서 최종적으로 결정되는 제 2 변위차원 보정용 모델의 각 질점(Ai)의 위치 및 상체 링크의 자세각에 의해 정해지는 제 2 변위차원 보정용 모델의 요소의 배치에서는, 도 15에 도시되는 바와 같이, 양다리체(2, 2)의 질점(A2~A5)의 중심의 상기의 치우침을 보상하도록 하여, 제 2 변위차원 보정용 모델의 상체 질점(A1)의 위치가, 제 1 변위차원 보정용 모델의 상체 질점(A1)보다도 전방측으로 결정되고, 달리 말하면, 제 1 가보정 상체위치가 단순화 모델 보용보다도 전방측으로 보정된다. 동시에, 제 2 변위차원 보정용 모델의 각 질점(A1~A5)의 및 이너셔를 갖는 상체(3)의 자세는 상기한 각운동량 적의 총합이 어떤 일정값이 되도록 결정된다. 도시한 예에서는, 제 2 변위차원 보정용 모델에서의 상체자세(실선으로 나타내는 상체(3)의 자세)는 단순화 모델 보용의 상체자세(파선으로 나타내는 상체(3)의 자세)에 대해, 각도 θb21-θb만큼 후방으로 경사져 있다.
이 때문에, 제 1 가보정 보용에 대응하는 제 2 변위차원 보정용 모델의 각 질점(Ai)의 위치 및 상체 링크의 자세각에서는, 각 질점(Ai)의 모델간 의사 병진가속도에 수반되는 관성력의 병진력 성분의 총합이 도 14에 도시한 경우보다도 작아 져서, 거의 0이 되는 동시에, 이 관성력이 목표 ZMP 주위에 작용하는 모멘트의 총합도 도 14에 도시한 경우보다도 소정의 값(상기 조건 2의 「일정값」에 상당하는 값)에 근접한다.
이것에 의해, 제 1 가보정 보용은, 단순화 모델 보용에서는 고려되어 있지 않은 각 다리체의 운동에 수반되는 관성력의 영향을 보상하여, 단순화 모델 보용의 목표 상반력(병진 상반력 및 상반력 모멘트, 보다 엄밀하게는, 단순화 모델 보용에 의해 단순화 모델이 발생하는 상반력)과 동일한 상반력이 발생하도록 로봇(1)의 목표 운동(보다 상세하게는 목표 상체위치 및 목표 상체자세)을 보정한 것이 된다. 이 때문에, 제 1 가보정 보용은, 그 보용의 운동대로 실제의 로봇(1)을 동작시켰을 때에 발생하는 실 상반력이, 단순화 모델 보용의 운동대로에 실제의 로봇(1)을 동작시켰을 때에 발생하는 실 상반력보다도, 목표 상반력(=단순화 모델 보용의 상반력)에 보다 근접한 것이 된다. 즉, 제 1 가보정 보용의 운동과 상반력(병진 상반력 및 상반력 모멘트) 사이의 동역학적 정밀도가 단순화 모델 보용의 운동과 상반력 사이의 동역학적 정밀도보다도 높아지게 된다.
한편, 상기 제 2 가보정 보용에 대응하는 제 2 변위차원 보정용 모델의 요소의 배치(제 2 요소 배치), 즉, 상기 도 10의 S102에서 최종적으로 결정되는 제 2 변위차원 보정용 모델의 각 질점(Ai)의 위치 및 상체 링크의 자세각에 의해 정해지는 제 2 변위차원 보정용 모델의 요소의 배치에서는, 도 16에 도시되는 바와 같이, 상체자세를 단순화 모델 보용의 순시 상체자세와 동일하게 유지한 채, 제 2 변위차원 보정용 모델의 각 질점(A1~A5)의 위치가 상기한 각운동량 적의 총합이 어떤 일 정값이 되도록 결정된다.
이 때문에, 제 2 가보정 보용에 대응하는 제 2 변위차원 보정용 모델의 각 질점(Ai)의 위치 및 상체 링크의 자세각에서는, 각 질점(Ai)의 모델간 의사 병진가속도에 수반되는 관성력이 목표 ZMP 주위에 작용하는 모멘트의 총합이 도 14에 도시한 경우보다도 소정의 값(상기 조건 2의 「일정값」에 상당하는 값)에 근접한다.
이것에 의해, 제 2 가보정 보용은 로봇(1)의 목표 상체자세를 단순화 모델 보용의 상체자세와 동일하게 유지하면서, 단순화 모델 보용에서는 고려되고 있지 않은 각 다리체의 운동에 수반되는 관성력의 영향을 보상하여, 단순화 모델 보용의 상반력 모멘트와 동일한 상반력 모멘트가 발생하도록, 로봇(1)의 목표 상체위치를 보정한 것이 된다. 이러한 제 2 가보정 보용은 그 보용의 운동대로 실제의 로봇(1)을 동작시켰을 때에 발생하는 실 상반력 모멘트가 단순화 모델 보용의 운동대로 실제의 로봇(1)을 동작시켰을 때에 발생하는 실 상반력 모멘트보다도 목표 상반력 모멘트(=단순화 모델 보용의 상반력 모멘트)에 보다 가까운 것이 된다. 즉, 제 2 가보정 보용의 운동과 상반력 모멘트 사이의 동역학적 정밀도가 단순화 모델 보용의 운동과 상반력 모멘트 사이의 동역학적 정밀도보다도 높아지게 된다. 단, 제 2 가보정 보용을 결정할(제 2 변위차원 보정용 모델의 제 2 요소 배치를 결정할) 때에는, 제 1 및 제 2 변위차원 보정용 모델의 사이의 질량중심의 벗어남은 고려하고 있지 않으므로, 제 2 가보정 보용의 운동과 병진 상반력 사이의 동역학적인 정밀도는, 반드시 단순화 모델 보용의 운동과 병진 상반력 사이의 동역학적인 정밀도보다도 높아진다고는 할 수 없다.
상술한 바와 같은 제 1 가보정 보용의 상체위치 자세와 제 2 가보정 보용의 상체위치 자세로부터, S024의 변위차원 보용 보정 서브루틴에서 최종적으로 결정되는 변위차원 보정 보용의 상체위치 자세, 즉 변위차원 보정 상체위치 자세는, 상기 식 12 및 식 13에 의해 결정된다. 이 경우, 로봇(1)의 동작 모드가 정상적으로 상기 통상 모드(주행 모드 및 저마찰 바닥면 보행 모드 이외의 동작 모드이며, 마찰계수가 높은 통상적인 바닥면을 로봇(1)의 보행 등을 행하는 동작 모드)일 때에는(이 때 w1=0, w2=1), 변위차원 보정 상체자세가 단순화 모델에서 상정하고 있는 자세(기준 자세), 구체적으로는 본 실시형태에서는 연직자세로 유지됨과 동시에, 변위차원 보정 상체위치는 제 2 가보정 보용의 상체위치(제 2 가보정 상체위치)와 동일하게 된다. 이 때문에, 변위차원 보정 보용은, 상체자세를 변동시키지 않(상체자세를 보정하지 않)도록 하면서, 단순화 모델 보용의 상체위치를 보정하여, 변위차원 보정 보용의 운동과 상반력 모멘트 사이의 동역학적인 정밀도를 단순화 모델 보용보다도 높일 수 있는 보용이 된다. 즉, 변위차원 보정 보용의 운동은, 이것에 따라 실제의 로봇(1)을 동작시켰을 때에, 단순화 모델 보용의 운동에 따라서 실제의 로봇(1)을 동작시켰을 때보다도 정밀도 좋게 목표 ZMP를 만족하는 것이 된다.
또, 로봇(1)의 동작 모드가 정상적으로 주행 모드일 때에는(이때 w1=1, w2=0), 변위차원 보정 상체자세 및 변위차원 보정 상체위치가 각각 제 1 가보정 보용의 상체자세(제 1 가보정 상체자세)와 동일하게 된다. 이 때문에, 변위차원 보정 보용은, 단순화 모델 보용의 상체위치 및 상체자세 양자를 보정하여, 변위차원 보정 보용의 운동과 상반력(병진 상반력 및 상반력 모멘트) 사이의 동역학적인 정 밀도를 단순화 모델 보용보다도 높일 수 있는 보용이 된다. 보충하면, 주행 모드에서는, 목표 상반력 연직성분이 0에 가까운 시기(로봇(1)과 바닥면 사이의 마찰력이 미소하게 되는 시기)가 필연적으로 존재하게 된다. 그리고, 그러한 시기에서는, 일반적으로는, 상체(3)의 병진가속도를 거의 조작할 수 없으므로, 상체자세를 일정하게 유지한 채로는 목표 ZMP를 만족할 수는 없어, 상체자세의 변화가 필요하게 된다. 이 때문에, 본 실시형태에서는, 로봇(1)의 동작 모드가 정상적으로 주행 모드일 때에는, 변위차원 보정 보용의 동역학적인 정밀도를 높이는 것을 중시하고, 변위차원 보정 상체를 자세가 제 1 가보정 상체자세와 동일하게 되도록 하고 있다.
또, 로봇(1)의 동작 모드가 정상적으로 저마찰 바닥면 보행 모드일 때에는(이때 w1=w2=0.5), 변위차원 보정 상체자세는, 제 1 가보정 보용의 상체자세각의 1/2의 자세각(제 1 가보정 보용의 상체자세각 보다도 연직방향에 대한 경사각이 작은 상체자세각, 보다 엄밀하게는, 제 1 가보정 보용의 상체자세각의 1/2과 제 2 가보정 보용의 상체자세각의 1/2의 합)인 것으로 하고, 변위차원 보정 상체위치는, 제 1 가보정 보용의 상체위치와 제 2 가보정 보용의 상체위치의 중간위치인 것으로 한다. 이 때문에, 변위차원 보정 보용은, 상체자세의 변동을 억제하면서, 변위차원 보정 보용의 운동과 상반력(병진 상반력 및 상반력 모멘트) 사이의 동역학적인 정밀도를 단순화 모델 보용보다도 높이도록 단순화 모델 보용의 상체위치 및 상체자세 양자를 보정한 것이 된다. 이 경우, 변위차원 보정 상체위치를, 제 1 가보정 보용의 상체위치와 제 2 가보정 보용의 상체위치의 중간위치로 함으로써 변위차원 보정 보용의 운동에 의해 로봇(1)에 발생하는 병진관성력 수평성분이 과대하게 되 는 것을 방지할 수 있다. 동시에, 변위차원 보정 상체자세를, 제 1 가보정 보용의 상체자세각보다도 작은 경사각으로 함으로써, 상체자세의 변동을 억제하면서, 목표 ZMP를 만족할 수도 있다. 따라서, 로봇(1)의 동작 모드가 정상적으로 저마찰 바닥면 보행 모드일 때에는, 변위차원 보정 보용은, 단순화 모델 보용보다도 동역학적 정밀도를 높이면서, 또한, 상체자세의 변동을 최대한 억제하면서, 또한, 로봇(1)의 슬립을 방지하면서, 로봇(1)의 안정한 동작을 가능하게 하는 보용이 된다.
또한, 로봇(1)의 동작 모드가 전환될 때는, 상기 도 10의 S106의 처리에 의해, 가중값 w1의 값을(나아가서는, 가중값 w2도) 서서히 변화시키므로, 변위차원 보정 상체자세나 변위차원 보정 상체위치가 급변하지는 않는다.
도 9의 설명으로 되돌아와, 상술한 바와 같이 변위차원 보용 보정 서브루틴을 실행한 후, S026으로 진행하고, 로봇(1)의 스핀(연직축 주위의 회전)을 캔슬하기 위한 팔체의 동작이 결정된다. 이 처리는, 로봇(1)의 팔을 흔들지 않고 목표 보용대로 로봇(1)을 운동시킨 경우에 목표 ZMP 주위에 발생하는 상반력 모멘트의 연직성분과 역방향의 상반력 모멘트를 팔체의 팔 흔들기(양 팔을 전후 역방향으로 흔드는 운동)에 의해 발생시키도록 팔체의 자세를 결정하는 것이며, 상기 공보문헌 1의 도 13의 S034와 동일하게 행해진다. 그 상세한 것은, 동 공보문헌 1에 기재되어 있으므로, 여기에서는 새로운 설명을 생략한다.
이어서, S028로 진행되고, 풀 모델 보정용(상기 풀 모델 보정부(100e)의 처리용)의 ZMP 허용범위의 순시값과 상반력 수평성분 허용범위의 순시값이 결정된다. 이것은, 상기 목표 순시값 발생부(100b)에서 실행되는 처리이며, 상기 S020에서 결 정한 금회 보용 패러미터 중 ZMP 허용범위 및 상반력 수평성분 허용범위를 규정하는 보용 패러미터에 기초하여 결정된다.
이어서, S030으로 진행되고, 풀 모델을 사용한 보정 보용을 발생한다. 이 처리는 상기 풀 모델 보정부(100e)에 의해 실행되는 처리이다. 이 경우, 이 처리는 상기 공보문헌 1의 도 13의 S038의 처리와 동일하며, 동 공보문헌 1에 기재된 대로 실행된다. 따라서, 본 명세서에서는 상세한 설명은 생략한다. 이 처리에 의해, 목표 상체위치 자세(상기 변위차원 보정 보용의 상체위치 자세)를 더욱 수정하여 이루어지는 보정 목표 상체위치 자세와 보정 목표 상반력 모멘트가 결정된다.
또한, 상기 풀 모델 보정부(100e)에서 사용하는 풀 모델은, 예를 들면 도 17에 도시하는 바와 같이, 로봇(1)의 상체(3), 각 다리체(2)의 고관절, 대퇴 링크, 하퇴 링크, 발목관절, 족평(22)에 각각 질점을 갖고, 또한 상체(3)(상체 링크)에 이너셔(Ib)를 갖는 것과 같은 다질점 모델이다. 이 경우, 상체(3) 이외의 링크에도 이너셔를 설정하도록 해도 된다.
이상이, 본 실시형태에서의 보용생성장치(100)의 보용생성처리이다.
다음에 도 4를 참조하여 복합 컴플라이언스 제어장치(101)의 동작을 설명해 둔다. 또한, 복합 컴플라이언스 제어장치(101)의 동작은, 본 출원인이 앞서 출원한 일본 특개평10-277969호 공보 등에 상세하게 기재되어 있으므로, 본 명세서에서는 개략적인 설명에 그친다. 보용생성장치(100)에서, 상기한 바와 같이 생성된 목표 보용 중, 보정 목표 상체위치 자세(궤도), 목표 팔자세(궤도)가 로봇 기하학 모델(역키네마틱스 연산부)(102)에 송출된다.
또, 목표 족평위치 자세(궤도), 목표 ZMP 궤도(목표 전체 상반력 중심점 궤도), 및 목표 전체 상반력(궤도)(보정 목표 상반력 모멘트와 목표 상반력 연직성분)은 복합 컴플라이언스 동작 결정부(104)에 보내지는 동시에, 목표 상반력 분배기(106)에도 보내진다. 그리고, 목표 상반력 분배기(106)에서, 상반력은 각 족평(22)에 분배되고, 목표 각 족평 상반력 중심점 및 목표 각 족평 상반력이 결정된다. 이 결정된 목표 각 족평 상반력 중심점 및 목표 각 족평 상반력은 복합 컴플라이언스 동작 결정부(104)에 보내진다.
복합 컴플라이언스 동작 결정부(104)로부터, 기구변형 보상된 수정 목표 족평위치 자세(궤도)가 로봇 기하학 모델(102)에 보내진다. 또한, 기구변형 보상된 수정 목표 족평위치 자세는, 각 다리체(2)의 컴플라이언스 기구(72)의 변형을 고려하면서, 6축력센서(50)에 의해 검출되는 실제의 상반력을 목표 상반력에 근접시키도록 각 족평(22)의 목표 족평위치 자세를 보정한 것을 의미한다. 로봇 기하학 모델(102)은 목표 상체위치 자세(궤도)와 기구변형 보상된 수정 목표 족평위치 자세(궤도)가 입력되면, 그것들을 만족하는 다리체(2, 2)의 12개의 관절의 관절변위지령(값)을 산출하여 변위 콘트롤러(108)에 보낸다. 변위 콘트롤러(108)는 로봇 기하학 모델(102)에서 산출된 관절변위지령(값)을 목표값으로 하여 로봇(1)의 12개의 관절의 변위를 추종제어 한다. 또, 로봇 기하학 모델(102)은 목표 팔자세를 만족하는 팔관절의 변위지령(값)을 산출하여 변위 콘트롤러(108)에 보낸다. 변위 콘트롤러(108)는, 로봇 기하학 모델(102)에서 산출된 관절변위지령(값)을 목표값으로 하여 로봇(1)의 팔체의 12개의 관절의 변위를 추종제어 한다.
로봇(1)에 발생한 상반력(상세하게는 실제 각 족 상반력)은 6축력센서(50)에 의해 검출된다. 그 검출값은 상기 복합 컴플라이언스 동작 결정부(104)에 보내진다. 또, 로봇(1)에 발생한 자세경사 편차(θerrx, θerry)(상세하게는 목표 상체자세각 에 대한 실 상체자세각의 편차이며, 롤링 방향(X축 주위)의 자세각 편차가 θerrx이며, 피칭 방향(Y축 주위)의 자세각 편차가 θerry임)가 자세 센서(54)를 통하여 검출되고, 그 검출값은 자세안정화 제어연산부(112)에 보내진다. 이 자세안정화 제어연산부(112)에서, 로봇(1)의 상체자세각을 목표 상체자세각으로 복원하기 위한 목표 전체 상반력 중심점(목표 ZMP) 주위 보상 전체 상반력 모멘트가 산출되어 복합 컴플라이언스 동작 결정부(104)에 보내진다. 복합 컴플라이언스 동작 결정부(104)는 입력값에 기초하여 목표 상반력을 수정한다. 구체적으로는, 목표 전체 상반력 중심점(목표 ZMP) 주위에 보상 전체 상반력 모멘트, 또는, 보상 전체 상반력 모멘트와 보정 목표 상반력 모멘트의 합이 작용하도록 목표 상반력을 수정한다.
복합 컴플라이언스 동작 결정부(104)는, 수정된 목표 상반력에 센서 검출값 등으로부터 산출되는 실 로봇의 상태 및 상반력을 일치시키면 상기 기구변형 보상된 수정 목표 족평위치 자세(궤도)를 결정한다. 단 모든 상태를 목표에 일치시키는 것은 사실상 불가능이므로, 이것들 사이에 트레이드오프 관계를 부여하여 타협적으로 될 수 있는 한 일치시킨다. 즉, 각 목표에 대한 제어편차에 가중값을 주고, 제어편차(또는 제어편차의 2승)의 가중평균이 최소가 되도록 제어한다. 이것에 의해 실제의 족평위치 자세와 전체 상반력이 목표 족평위치 자세와 목표 전체 상반력에 대략 따르도록 제어된다.
[제 2 실시형태]
다음에, 본 발명의 제 2 실시형태를 도 18~도 22를 참조하면서 설명한다. 본 실시형태는, 로봇(1) 및 제어 유닛(60)의 구성은 제 1 실시형태와 동일하고, 단순화 모델 및 제 1 변위차원 보정용 모델과, 보용생성장치(100)의 처리의 일부가 제 1 실시형태와 상이한 것이다. 따라서, 본 실시형태의 설명에서는, 제 1 실시형태와 동일부분에 대해서는 제 1 실시형태와 동일한 부호 및 도면을 사용하여, 상세한 설명을 생략한다. 또한, 제 2 실시형태는 본 발명의 제 1, 3, 4, 7~10, 13~15 발명의 1실시형태이다.
도 18은 본 실시형태에서의 단순화 모델(동역학 모델)의 구조를 도시하며, 도 19는 본 실시형태에서의 제 1 변위차원 보정용 모델의 구조를 도시하고 있다.
도 18에 도시하는 본 실시형태의 단순화 모델은, 로봇(1)의 각 다리체(2)(상세하게는 각 다리체(2)의 족평(22))에 각각 대응하는 2개의 족평 질점(2m2, 2m2), 및 상체(3)에 대응하는 상체 질점(3m2)으로 이루어지는 3질점과, 이너셔(J)가 있고 질량이 없는 플라이휠(FH)로 구성되는 모델이며, 상기 공보문헌 1의 도 11에 도시한 모델과 동일하다. 따라서, 본 명세서에서의 상세한 설명은 생략하지만, 그 개요는 다음과 같다.
즉, 이 단순화 모델에서는, 각 족평 질점(2m2, 2m2)의 동역학(운동과 상반력의 관계), 및 상체 질점(3m2) 및 플라이휠(FH)의 동역학이 서로 비간섭으로 구성됨과 동시에, 로봇(1) 전체의 동역학은 그것들의 선형결합으로 표시된다. 또, 플라 이휠(FH)의 회전운동에 의해 발생하는 상반력은, 상체(3)의 자세각의 회전운동(병진 상반력을 변화시키지 않고, 상반력 모멘트만을 변화시키는 회전운동)에 의해 발생하는 상반력에 대응한다. 또한, 상체 질점(3m2)은, 상체(3)의 위치 자세에 대응하여 일의적으로 정해지는 점(상체(3)에 임의로 고정된 로컬 좌표계상에서의 어떤 고정점)에 설정되어 있고, 각 다리 질점(2m2)은 각 다리체(2)의 족평(22)의 위치 자세에 대응하여 일의적으로 정해지는 점(족평(22)에 임의로 고정된 로컬 좌표계상에서의 어떤 고정점)에 설정되어 있다. 또, 각 질점(2m2, 2m2, 3m2)의 질량의 총 합은 로봇(1)의 총 질량과 동일하다. 상체 질점(3m2)의 질량은 상체(3)의 질량 이외에, 양 팔체의 질량을 포함하고 있다.
이 단순화 모델의 동역학을 기술하는 식(운동방정식)은 이하의 식 14~16에 의해 표시된다. 단, 본 명세서의 이해의 편의상, 여기에서는 사지탈 플레인(전후축(X축)과 연직축(Z축)을 포함하는 평면)에서의 운동방정식만을 기술하고, 래터럴 플레인(좌우축(Y축)과 연직축(Z축)을 포함하는 평면)에서의 운동방정식은 생략한다. 또, 식 14~16의 변수는 이하와 같이 정의한다.
Zsup: 지지다리 족평 질점 연직위치, Zswg: 미착지 다리 족평 질점 연직위치, Zb: 상체 질점 연직위치, Xsup: 지지다리 족평 질점 수평위치, Xswg: 미착지 다리 족평 질점 수평위치, Xb: 상체 질점 수평위치, θby: 연직방향에 대한 Y축 주위의 상체자세각, mb: 상체 질점 질량, msup: 지지다리 족평 질점 질량, mswg: 미착지 다리 족평 질점 질량, J: 플라이휠의 관성 모멘트, Fx: 상반력 수평성분, Fz: 상반력 연직성분, My: 목표 ZMP 주위의 상반력 모멘트(상세하게는 상반력 모멘트의 좌우축(Y축) 주위 성분)
Fz=mb*(g+d2Zb/dt2)+msup*(g+d2Zsup/dt2)
+mswg*(g+d2Zswg/dt2) ……식 14
Fx=mb*d2Xb/dt2+msup*d2Xsup/dt2+mswg*d2Xswg/dt2 ……식 15
My=-mb*(Xb-Xzmp)*(g+d2Zb/dt2)+mb*(Zb-Zzmp)*(d2Xb/dt2)
-msup*(Xsup-Xzmp)*(g+d2Zsup/dt2)
+msup*(Zsup-Zzmp)*(d2Xsup/dt2)
-mswg*(Xswg-Xzmp)*(g+d2Zswg/dt2)
-mswg*(Zswg-Zzmp)*(d2Xswg/dt2)+J*d2θby/dt2 …식 16
이러한 단순화 모델을 사용하는 제 2 실시형태에서는, 후술하는 바와 같이, 상기 공보문헌 1과 완전히 동일하며, 목표 ZMP를 만족하는 단순화 모델 보용이 생성된다.
보충하면, 이 제 2 실시형태의 단순화 모델은, 각 다리체(2)의 무릎관절의 굽힘 동작에 수반되는 이 무릎관절의 근방부위의 운동에 의해 발생하는 관성력은 무시되어 있다. 즉, 제 2 실시형태의 단순화 모델은, 각 다리체(2)의 무릎관절의 굽힘 동작에 수반되는 이 무릎관절의 근방부위의 운동에 의해 발생하는 관성력을 0으로 간주하여 구축된 동역학 모델이라고 할 수 있다.
다음에, 도 19를 참조하여 본 실시형태의 제 1 변위차원 보정용 모델을 설명하면, 이 모델은, 상체(3), 각 다리체(2)의 대퇴 링크, 족평(22)에 각각 대응하는 상체 질점(A1), 대퇴 질점(A2, A3), 족평 질점(A4, A5)으로 이루어지는 5질점 모델 이다. 또, 로봇(1)의 상체(3)(상체 링크)가 상체 질점(A1)의 주위에 이너셔(관성 모멘트)(Ib)를 갖는 것으로 되어 있다. 즉, 본 실시형태의 제 1 변위차원 보정용 모델은, 제 1 실시형태의 제 1 및 제 2 변위차원 보정용 모델과 동일하게, 질점(A1~A5)과 이너셔를 갖는 상체 링크를 요소로 하여 구성되어 있다.
이 경우, 상체 질점(A1), 각 족평 질점(A4, A5)은 상기 제 1 실시형태의 제 1 혹은 제 2 변위차원 보정용 모델의 것과 동일하고, 대응하는 부위(상체(3), 족평(22))의 위치 자세에 대응하여 일의적으로 정해지는 점(그 대응하는 부위에 임의로 고정설정한 로컬 좌표계에서의 어떤 고정점)에 설정되어 있다. 또한, 상체 질점(A1), 각 족평 질점(A4, A5) 및 각 대퇴 질점(A2, A3)의 질량의 총 합은 로봇(1)의 총 질량(mtotal)과 일치한다. 또, 상체 질점(A1)의 질량은 상체(3)의 질량의 이외에 양 팔체(5, 5) 및 머리부(4)의 질량을 포함하고 있다.
그리고, 본 실시형태에서도 제 1 변위차원 보정용 모델의 요소의 배치에는, 어떤 기하학적인 구속조건이 설정되어 있다. 구체적으로는, 이 제 1 변위차원 보정용 모델에서는, 로봇(1)의 각 다리체(2)의 무릎관절을, 이 다리체(2)의 발목관절의 중심과 고관절의 중심을 연결하는 방향으로만 신축하는 직동형(텔레스코픽형)의 관절로 간주하고 있고, 각 대퇴 질점(A2, A3)은 대응하는 다리체(2)의 발목관절의 중심과 고관절의 중심을 연결하는 선분의 내분점에 설정되어 있다. 그 내분점은, 이 내분점으로부터 발목관절의 중심까지의 거리와 고관절의 중심까지의 거리의 비율이 소정의 비율이 되는 점이며, 각 다리체(2)를 직선 형상으로 연장시켰을 때의 무릎관절 근방의 점(예를 들면, 이 무릎관절의 중심보다도 약간, 대퇴 링크(24) 근 처의 점)이다. 따라서, 본 실시형태에서의 제 1 변위차원 보정용 모델에서는, 대퇴 질점(A2, A3)이 대응하는 다리체(2)의 발목관절의 중심과 고관절의 중심을 연결하는 선분의 내분점에 구속되어 있다.
또한, 대퇴 질점(A2, A3)은 상기 내분점으로부터 상기 선분과 직각인 방향으로 소정의 거리만큼 오프셋 한 점에 설정해도 된다. 바꿔 말하면, 상기 선분으로부터 소정의 거리만큼 떨어진, 이 선분에 평행한 직선상에 각 대퇴 질점(A2, A3)을 설정해도 된다.
또, 이 제 1 변위차원 보정용 모델의 각 질점(A1~A5)의 글로벌 좌표계상에서의 위치, 및 상체(3)(상체 링크)의 자세각은 단순화 모델 보용의 운동의 순시값에 대응하여 기하학적으로 정해지는 것으로 되어 있다. 보다 구체적으로는, 본 실시형태의 제 1 변위차원 보정용 모델의 상체 질점(A1)의 글로벌 좌표계에서의 위치는, 단순화 모델 보용의 상체위치 자세에 대응하는 위치에 결정되고, 각 족평 질점(A4, A5)의 글로벌 좌표계에서의 위치는 단순화 모델 보용의 각 족평위치 자세에 대응하는 위치에 결정된다. 또한, 상체 링크의 자세각은 단순화 모델 보용의 상체자세와 동일한 것으로 한다. 그리고, 각 대퇴 질점(A2, A3)의 글로벌 좌표계상에서의 위치는, 단순화 모델 보용의 상체위치 자세와 각 족평위치 자세를 기초로 정해지는 상기의 내분점의 위치에 결정된다. 즉, 로봇(1)의 상체위치 자세 및 각 족평위치 자세에 대응하여, 각 다리체(2)의 각 고관절 및 각 발목관절의 중심점의 글로벌 좌표계에서의 위치가 일의적으로 정해지므로, 각 다리체(2)의 고관절의 중심점 및 발목관절의 중심점을 연결하는 선분의 내분점으로서의 각 대퇴 질점(A2, A3) 의 글로벌 좌표계에서의 위치가 정해진다.
또, 제 2 실시형태의 제 1 변위차원 보정용 모델에서는, 그 질점(A1~A5)의 질량중심이 단순화 모델상에서의 로봇(1)의 질량중심의 위치, 즉, 단순화 모델의 모든 질점(2m2, 2m2, 3m2)의 중심의 위치에 일치하도록 상기 내분점에 관계되는 소정의 비율과, 질점(A1~A5)의 질량비가 결정되어 있다.
여기에서, 제 2 실시형태에서 상기한 바와 같이 제 1 변위차원 보정용 모델의 요소의 배치를 정한다고 하는 것은, 제 1 변위차원 보정용 모델의 요소의 배치(글로벌 좌표계에서의 질점(A1~A5)의 위치 및 상체 링크의 자세)를 정하기 위한 기하학적 구속조건(3)을 다음과 같이 정의했을 때, 단순화 모델 보용의 순시 운동으로부터, 그 기하학적 구속조건(3)에 따라서 제 1 변위차원 보정용 모델의 요소의 배치를 결정하는 것과 동일하다.
기하학적 구속조건(3): 주어진 임의의 순시 목표 운동에 대해, 제 1 변위차원 보정용 모델의 요소 중 상체 질점(A1) 및 상체 링크의 배치가, 주어진 순시 목표 운동에서의 로봇(1)의 상체(3)의 위치 자세에 대응하여 정해지는 배치와 일치하고, 또한, 각 족평 질점(A4, A5)의 위치가 주어진 순시 목표 운동에서의 로봇(1)의 각 족평위치 자세에 대응하여 정해지는 위치에 일치하고, 또한, 각 대퇴 질점(A2, A3)의 위치가 주어진 순시 목표 운동에서의 각 다리체(2)의 고관절의 중심과 발목관절의 중심을 연결하는 선분상의 소정의 내분점의 위치에 일치한다.
제 2 실시형태에서는, 이 기하학적 구속조건(3)이 본 발명에서의 제 1 기하학적 구속조건에 상당하는 것이다.
또한, 본 실시형태에서는, 제 2 변위차원 보정용 모델의 구조는, 상기 도 8에 도시한 제 1 실시형태의 것과 동일하며, 본 실시형태(제 2 실시형태)에서의 제 1 변위차원 보정용 모델과 동일하게, 상체 질점(A1), 대퇴 질점(A2, A3), 및 족평 질점(A4, A5)을 갖고, 또, 상체 링크에 이너셔(Ib)를 갖고 있다. 이 경우, 상체 질점(A1), 각 족평 질점(A4, A5)의 대응하는 부위(상체(3), 각 족평(22))에 고정된 로컬 좌표계에서의 위치는 도 19의 제 1 변위차원 보정용 모델과 동일하다. 또, 각 질점(A1~A5)의 질량은 도 19의 제 1 변위차원 보정용 모델의 것과 동일하다. 그리고, 제 2 변위차원 보정용 모델에서는, 각 질점(A1~A5) 및 상체(3)(상체 링크)는 로봇(1)이 채용할 수 있는 임의의 자세 상태에 대응하는 위치 자세로 이동 가능하게 되어 있다. 즉, 로봇(1)의 임의의 순시 목표 운동과 제 2 변위차원 보정용 모델의 각 요소의 배치 사이에는, 상기 제 1 실시형태에서 설명한 상기 기하학적 구속조건(2)이 설정되어 있다.
다음에 본 실시형태(제 2 실시형태)에서의 보용생성장치(100)의 처리를 상세하게 설명한다. 본 실시형태에서의 보용생성장치(100)의 기본적 처리수순은 제 1 실시형태와 동일하고, 상기 도 9의 플로우차트에 따라 보용이 생성된다.
구체적으로는, S010로부터 S018까지의 처리가 제 1 실시형태와 동일하게 실행된다. 이들 처리는 제 1 실시형태와 동일하다.
그리고, S018의 다음에 S020의 처리가 실행되고, 금회 보용의 보용 패러미터가 결정된다. 즉, 금회 보용의 목표 족평위치 자세 궤도, 목표 팔자세 궤도, 목표 ZMP 궤도, 및 목표 상반력 연직성분 궤도를 규정하는 패러미터가 결정됨과 동시에, 기준 상체자세 궤도, 상반력 수평성분 허용범위, 및 ZMP 허용범위를 규정하는 패러미터가 결정된다. 이 경우, 본 실시형태에서의 단순화 모델은, 상기한 바와 같이 상기 공보문헌 1에서 사용하고 있는 동역학 모델과 동일하므로, 동 공보문헌 1의 도 13의 S022~S030의 처리와 동일한 처리를 본 실시형태의 S020에서 실행함으로써 금회 보용의 보용 패러미터가 결정된다.
또한, 동 공보문헌 1의 도 13의 S022~S028의 처리에서는, 정상 보용의 작성 등을 위해, 단순화 모델 보용용의 상반력 수평성분 허용범위를 설정하여 사용하고 있는데, 본 실시형태에서는, 그 단순화 모델 보용용의 상반력 수평성분 허용범위는, 예를 들면 동 공보문헌 1의 도 13의 S30에서 설정하는 풀 모델 보정용의 상반력 수평성분 허용범위와 동일하게 하거나, 혹은, 그것보다도 넓은 범위로 설정하면 된다. 또는, 본 명세서의 제 1 실시형태와 동일하게, 단순화 모델 보용용의 상반력 수평성분 허용범위를 무한대의 범위로 하거나, 혹은, 단순화 모델 보용(혹은 정상 보용)의 상반력 수평성분이 항상 그 상반력 수평성분 허용범위 내에 들어가는 것 같은 넓은 범위로 정해도 된다.
이어서, 도 9의 S020의 처리의 후, 또는 S016의 판단 결과가 NO이었을 경우에는, S022로 진행되고, 보용 패러미터(S020에서 결정한 보용 패러미터)를 기초로, 금회 보용(단순화 모델 보용)의 순시값이 결정된다. 이 경우, 본 실시형태에서의 단순화 모델은, 상기한 바와 같이 상기 공보문헌 1에서 사용하고 있는 동역학 모델과 동일하므로, 동 공보문헌 1의 도 13의 S032의 처리와 동일한 처리를 본 실시형태의 S022에서 실행함으로써 단순화 모델 보용의 순시값이 결정된다.
보다 구체적으로는, 상기 S020에서 결정한 보용 패러미터를 기초로, 목표 족평위치 자세, 목표 ZMP, 목표 팔자세, 목표 상반력 연직성분, 기준 상체자세의 순시값이 결정되고, 또한, 상기 도 16의 단순화 모델상에서, 로봇(1)의 운동이 발생하는 관성력과 중력의 합력이 목표 ZMP 주위에 작용하는 모멘트 수평성분이 0이 되고, 또한, 상반력 수평성분이 단순화 모델 보용용의 상반력 수평성분 허용범위를 초과하지 않도록 목표 상체위치 자세의 순시값이 결정된다. 여기에서, 목표 상체위치 자세의 순시값에 관해 보충하면, 목표 상체위치 연직성분은 목표 상반력 연직성분과 상기 식 14로부터 구해지는 단순화 모델의 상체 질점(3m2)의 연직위치에 대응하여 결정된다. 그리고, 목표 상반력 연직성분이 비교적 큰 시기에서는, 주로 상체(3)의 수평가속도를 조정하여, 목표 ZMP 주위의 모멘트 수평성분이 0이 되도록 하면서, 목표 상체자세의 순시값이 기준 상체자세(예를 들면 연직자세)에 근접하도록 목표 상체자세 및 목표 상체위치 수평성분이 결정된다. 또, 목표 상반력 연직성분이 비교적 작거나, 혹은 0이 되는 시기에서는, 상체(3)의 수평가속도를 거의 0으로 하면서(엄밀하게는, 전체 중심의 수평가속도를 거의 0으로 하면서), 주로 상체(3)의 자세각의 각가속도를 조정하여, 목표 ZMP 주위의 모멘트 수평성분이 0이 되도록, 목표 상체자세 및 목표 상체위치 수평성분의 순시값이 결정된다.
또한, S022의 처리에서 사용하는 단순화 모델 보용용의 상반력 수평성분 허용범위는 상기 S020의 처리에서 사용하는 것과 동일해도 된다.
이어서, S024로 진행되고 변위차원 보정 서브루틴이 실행된다. 이 서브루틴 처리는, 기본적 처리수순은, 상기 제 1 실시형태와 동일하고, 상기 도 10의 플로우 차트에 따라서 실행된다. 즉, 우선, S100에서, 상기 제 1 실시형태와 동일하게, 제 1 변위차원 보정용 모델과 제 2 변위차원 보정용 모델 사이의 중심에 관한 상기 조건 1과, 각운동량 적에 관한 상기 조건 2를 만족하도록 제 1 가보정 상체위치 자세(Pb21, θb21)가 결정된다. 이 처리는, 제 1 실시형태와 동일하게, 도 11의 서브루틴 처리에 의해 실행된다.
구체적으로는, S200에서, 금회 시각(현재 시각)(t)에서의 단순화 모델 보용의 순시값(목표 상체위치 자세 등의 목표 운동의 순시값)을 기초로, 제 1 변위차원 보정용 모델의 각 질점(A1~A5)의 위치라고, 이너셔를 갖는 상체(3)(상체 링크)의 자세각을 구한다. 이 경우, 상기한 바와 같이, 제 1 변위차원 보정용 모델의 상체 질점(A1)의 위치는 단순화 모델 보용의 상체위치 자세의 순시값에 대응하는 위치에 결정되고, 각 족평 질점(A4, A5)의 글로벌 좌표계에서의 위치는 단순화 모델 보용의 각 족평위치 자세에 대응하는 위치에 결정된다. 또, 각 대퇴 질점(A2, A3)의 위치는, 단순화 모델 보용의 상체위치 자세와 각 족평위치 자세를 기초로 정해지는 로봇(1)의 각 다리체(2)의 고관절의 중심점과 발목관절의 중심점을 연결하는 선분을 소정의 비율로 내분하여 이루어지는 내분점의 위치에 결정된다. 또, 제 1 변위차원 보정용 모델의 상체 링크의 자세각은 단순화 모델 보용의 상체자세각과 동일한 것으로 한다.
이것에 의해 단순화 모델 보용의 순시 운동(금회 시각(t)의 순시값)으로부터, 본 실시형태에서의 제 1 변위차원 보정용 모델에 관계되는 상기 기하학적 구속조건(3)에 따라, 제 1 변위차원 보정용 모델의 각 요소의 배치가 결정되게 된다. 또한, 이 제 1 변위차원 보정용 모델의 요소의 배치는 본 발명의 제 1 발명에서의 「제 1 배치」에 상당하는 것이다.
이어서, S202부터 S218까지의 처리가 실행된다. 이것들의 처리는, 제 1 실시형태와 동일하다. 즉, 상기 조건 1, 2를 충족시키는 제 1 가보정 상체위치 자세가 탐색적으로 요구되고, 그것이 금회 시각(t)에서의 제 1 가보정 상체위치 자세(Pb21, θb21)로서 결정된다. 이것에 의해, 단순화 모델 보용의 상체위치 자세를 상기 조건 1, 2를 만족시키도록 보정하여 이루어지는 보용(제 1 가보정 보용)이 얻어진다. 이 제 1 가보정 보용의 운동은, S210의 조건이 만족시켜졌을 때의 제 2 변위차원 보정용 모델의 배치(상기 제 1 요소 배치)로부터, 상기 기하학적 구속조건(2)에 따라서 결정되는 순시 목표 운동과 동일하다.
보충하면, 본 실시형태에서는, 각 변위차원 보정용 모델의 양 족평 질점(A4, A5)의 위치는 양 변위차원 보정용 모델에서 동일하다. 따라서, S208에서 모델간 전체 중심 벗어남(Gc_err)과 모델간 각운동량 적 벗어남(L_err)을 산출할 때는, 양 족평 질점(A4, A5)에 관계되는 항은 생략해도 된다.
상기한 바와 같이 S100의 처리를 실행한 후, S102의 처리가 상기 제 1 실시형태와 동일하게 실행되고, 제 2 변위차원 보정용 모델에서의 상체자세를 단순화 모델 보용의 순시값(금회 시각(t)에서의 순시값)에서의 상체자세와 동일하게 하여, 제 1 변위차원 보정용 모델과 제 2 변위차원 보정용 모델 사이의 각운동량 적에 관한 상기 조건 2를 만족하도록 제 2 가보정 상체위치 자세(Pb22, θb22)가 결정된다. 또한, 이 S102의 처리에서는, 제 2 가보정 상체자세(θb22)는, 단순화 모델 보용의 상체자세와 동일하게 되므로, 이 S102의 처리는, 실질적으로는, 조건 2를 만족하도록 제 2 가보정 상체위치(Pb22)를 결정하는 처리라고 할 수 있다.
이 처리는, 제 1 실시형태와 동일하게, 도 12의 서브루틴 처리에 의해 실행된다.
구체적으로는, S300에서, 금회 시각(현재 시각)(t)에서의 단순화 모델 보용의 순시값을 기초로, 제 1 변위차원 보정용 모델의 각 질점(A1~A5)의 위치와, 이너셔를 갖는 상체(3)(상체 링크)의 자세각을 구한다. 이 처리 및 그것에 의해 구해지는 제 1 변위차원 보정용 모델의 요소의 배치는, 본 실시형태에서의 도 11의 S200의 처리와 동일하다. 따라서, 본 실시형태에서도, S200에서 구한 제 1 변위차원 보정용 모델의 각 요소의 배치를, 그대로 도 12의 서브루틴 처리에서 사용하도록 하면, S300의 처리는 생략해도 된다.
이어서, S302~S318까지의 처리가 제 1 실시형태와 동일하게 실행된다. 이들 처리는 제 1 실시형태와 같다. 즉, 상체자세가 단순화 모델 보용의 상체자세와 동일하고, 또한, 상기 조건 2를 충족시키는 제 2 가보정 상체위치 자세가 탐색적으로 구해지고, 그것이 금회 시각(t)에서의 제 2 가보정 상체위치 자세(Pb22, θb22)로서 결정된다. 이것에 의해, 단순화 모델 보용의 상체위치만을 상기 조건 2를 만족시키도록 보정하여 이루어지는 보용(제 2 가보정 보용)이 얻어진다. 이 제 2 가보정 보용은, S310의 조건이 만족시켜졌을 때의 제 2 변위차원 보정용 모델의 배치(상기 제 2 요소 배치)로부터, 상기 기하학적 구속조건(2)에 따라서 결정되는 순시 목표 보용과 동일하다.
보충하면, 본 실시형태에서는, 각 변위차원 보정용 모델의 양 족평 질점(A4, A5)의 위치는, 양 변위차원 보정용 모델에서 동일하므로, 상기 S208의 처리의 경우와 동일하게, S308에서 모델간 각운동량 적 벗어남(L_err)을 산출할 때는, 양 족평 질점(A4, A5)에 관계되는 항은 생략해도 된다.
상기한 바와 같이 S102의 처리를 실행한 후, S104~S110의 처리가 제 1 실시형태와 동일하게 실행된다. 이들 처리는 제 1 실시형태와 완전히 동일하다. 이것에 의해, 금회 시각(t)에서의 변위차원 보정 상체위치 자세(Pb2, θb2)가 결정되고, 단순화 모델 보용의 상체위치 자세를 보정하여 이루어지는 변위차원 보정 보용이 얻어진다.
본 실시형태(제 2 실시형태)에서는, 이상과 같이 도 9의 S024의 처리(변위차원 보용 보정 서브루틴)을 실행한 후, S026~S032의 처리가 제 1 실시형태와 동일하게 실행된다. 이들 처리는 제 1 실시형태와 동일하다.
또한, 보용생성장치(100)에서 이상에서 설명한 바와 같이 생성되는 목표 보용을 입력하는 복합 컴플라이언스 제어장치(101)의 동작은 상기 제 1 실시형태와 동일하다.
또, 보충하면, 제 2 실시형태에서의 변위차원 보용 보정 서브루틴의 처리는, 본 발명의 제 1 발명에서의 목표 운동 보정 수단을 구성하고 있고, 이 처리에서 결정되는 변위차원 보정 보용의 운동이 이 제 1 발명에서의 보정 후 순시 목표 운동에 상당한다. 또, 제 2 실시형태에서의 S100의 처리, S102의 처리가, 각각 제 1 발명에서의 제 1 가보정 운동 결정수단, 제 2 가보정 운동 결정수단에 상당하고, 각각의 처리에서 결정되는 제 1 가보정 보용, 제 2 가보정 보용이 각각 제 1 발명에서의 제 1 가보정 순시 목표 운동, 제 2 가보정 순시 목표 운동에 상당한다.
여기에서, 본 실시형태에서의 단순화 모델 보용과, 상기 제 1 가보정 보용과, 상기 제 2 가보정 보용과, 변위차원 보정 보용의 관계에 대해 도 20~도 22를 참조하여 보충 설명을 해 둔다. 도 20은 제 2 변위차원 보정용 모델의 각 질점(Ai)(i=1,2,…,5)의 위치 및 상체(3)(상체 링크)의 자세각을 단순화 모델 보용대로 결정한 경우(즉 단순화 모델 보용을 상기 S024에서 보정하지 않는 경우)에 있어서의 제 2 변위차원 보정용 모델의 각 질점(Ai)의 위치 및 상체(3)(상체 링크)의 자세각과, 이 단순화 모델 보용에 대응하여 정해지는 제 1 변위차원 보정용 모델의 각 질점(Ai)의 위치 및 상체(3)(상체 링크)의 자세각과의 관계를 예시하고 있다. 이 경우의 제 2 변위차원 보정용 모델의 요소의 배치는 단순화 모델 보용의 순시 운동으로부터, 상기 기하학적 구속조건(2)에 따라서 결정된 것이라고 할 수 있다. 또한, 상기 도 20에서는, 단순화 모델 보용에 대응하는 제 2 변위차원 보정용 모델의 각 질점(Ai)(i=1,2,…,5)의 위치를 Pi2'(Ai)로 표시하고 있다.
또, 도 21은 상기 제 1 가보정 보용에 대응하는 제 2 변위차원 보정용 모델의 각 질점(Ai)의 위치 및 상체(3)(상체 링크)의 자세각과, 제 1 변위차원 보정용 모델의 각 질점(Ai)의 위치 및 상체(3)(상체 링크)의 자세각과의 관계를 예시하고 있다. 이 도 21의 제 2 변위차원 보정용 모델의 각 요소의 배치는, 도 20에서 상정하고 있는 단순화 모델 보용의 순시값에 대응하여, 상기 도 10의 S100에서 최종적으로 결정되는 제 2 변위차원 보정용 모델의 상기 제 1 요소 배치이다. 이 배치 는, 상기 제 1 가보정 보용으로부터, 상기 기하학적 구속조건(2)에 따라서 정해지는 것과 동일하다. 또한, 도 21에서는, 제 1 가보정 보용에 대응하는 제 2 변위차원 보정용 모델의 각 질점(Ai)(i=1,2,…,5)의 위치를 Pi21(Ai)으로 표시하고 있다. 또, 도 21에 도시하는 제 1 변위차원 보정용 모델의 각 질점(Ai)의 위치 및 상체(3)(상체 링크)의 자세각은 도 20과 동일하다.
또, 도 22는 상기 제 2 가보정 보용에 대응하는 제 2 변위차원 보정용 모델의 각 질점(Ai)의 위치 및 상체(3)(상체 링크)의 자세각과, 제 1 변위차원 보정용 모델의 각 질점(Ai)의 위치 및 상체(3)(상체 링크)의 자세각과의 관계를 예시하고 있다. 이 도 22의 제 2 변위차원 보정용 모델의 각 요소의 배치는, 도 20에서 상정하고 있는 단순화 모델 보용의 순시값에 대응하여, 상기 도 10의 S102에서 최종적으로 결정되는 제 2 변위차원 보정용 모델의 상기 제 2 요소 배치이다. 이 배치는 상기 제 2 가보정 보용으로부터, 상기 기하학적 구속조건(2)에 따라서 정해지는 것과 동일하다. 또한, 도 22에서는, 제 2 가보정 보용에 대응하는 제 2 변위차원 보정용 모델의 각 질점(Ai)(i=1,2,…,5)의 위치를 Pi22(Ai)로 표시하고 있다. 또, 도 22에 도시하는 제 1 변위차원 보정용 모델의 각 질점(Ai)의 위치 및 상체(3)(상체 링크)의 자세각은 도 20과 동일하다.
도 20에 도시하는 예에서, 단순화 모델 보용에 대응하는 제 2 변위차원 보정용 모델의 각 질점(Ai)의 위치(Pi2')에서는, 대퇴 질점(P22', P32')이 제 1 변위차원 보정용 모델에 대해 로봇(1)의 전방측에 존재한다. 즉, 제 2 변위차원 보정용 모델에서의 로봇(1)의 질량중심이 단순화 모델 보용에서의 로봇(1)의 질량중심보다도 로봇(1)의 전방측(X축의 정방측)으로 치우친다. 달리 말하면, 양다리체(2, 2)의 각 대퇴 질점(A2, A3)의 모델간 의사 병진가속도에 의해 각 대퇴 질점(A2, A3)이 발생하는 관성력의 병진력 성분(=각 질점(A2, A3)의 질량*모델간 의사 병진가속도)의 총합이 로봇(1)의 후방측에 발생하는 것으로 된다. 또, 각 대퇴 질점(A2, A3)의 모델간 의사 병진가속도에 의해 각 대퇴 질점(A2, A3)이 발생하는 관성력이 목표 ZMP 주위에 작용하는 모멘트가 로봇(1)의 후방 경사쪽에 발생하는 것이 된다. 또한, 본 실시형태에서는, 단순화 모델 보용과 제 1 변위차원 보정용 모델에서, 양 족평위치 자세 및 상체위치 자세는 동일하므로, 도 20의 예에서는, 상체 질점(A1), 각 족평 질점(A4, A5)의 각각의 모델간 의사 병진가속도는 0이며, 또, 상체 링크의 모델간 유사 각가속도도 0이다.
이에 반해, 상기 제 1 가보정 보용에 대응하는 제 2 변위차원 보정용 모델의 요소의 배치(제 1 요소 배치), 즉, 본 실시형태에서 상기 도 10의 S100에서 최종적으로 결정되는 제 2 변위차원 보정용 모델의 각 질점(Ai)의 위치 및 상체 링크의 자세각에 의해 정해지는 제 2 변위차원 보정용 모델의 요소의 배치에서는, 도 21에 도시되는 바와 같이, 대퇴 질점(A2, A3)의 전방측으로의 치우침을 보상하도록 하여, 제 2 변위차원 보정용 모델의 상체 질점(A1)의 위치가 제 1 변위차원 보정용 모델의 상체 질점(A1)보다도 후방측에 결정되고, 바꾸어 말하면, 상체위치가 단순화 모델 보용보다도 후방측으로 보정된다. 동시에, 제 2 변위차원 보정용 모델의 각 질점(A1~A5)의 위치 및 이너셔를 갖는 상체(3)의 자세는 상기한 각운동량 적이 어떤 일정값(소정값)으로 되도록 결정된다. 도시의 예에서는, 제 2 변위차원 보정 용 모델에서의 상체자세(실선으로 표시되는 상체(3)의 자세)는, 단순화 모델 보용의 상체자세(파선으로 표시하는 상체(3)의 자세)에 대해, 각도 θb21-θb만큼 전방으로 경사져 있다. 보충하면, 도 21의 사선 혹은 횡선을 그은 삼각형 면적의 2배가, 각각, 상체 질점(A1), 대퇴 질점(A2, A3)에 관계되는 각운동량 적에 상당하는 것이다.
이 때문에, 제 1 가보정 보용에 대응하는 제 2 변위차원 보정용 모델의 각 질점(Ai)의 위치 및 상체 링크의 자세각에서는, 각 질점(Ai)의 모델간 의사 병진가속도에 수반되는 관성력의 병진력 성분의 총합이 도 20에 도시한 경우보다도 작아져서, 거의 0이 됨과 동시에, 이 관성력이 목표 ZMP 주위에 발생하는 모멘트의 총합도 도 20에 도시한 경우보다도 소정의 값(상기 조건 2에 관계되는 「일정값」에 상당하는 값)에 근접한다.
이것에 의해, 제 1 가보정 보용은, 단순화 모델 보용에서는 고려되고 있지 않는 각 다리체의 무릎관절 부근의 부분의 운동에 수반되는 관성력의 영향을 보상하여, 단순화 모델 보용의 목표 상반력(병진 상반력 및 상반력 모멘트)과 동일한 상반력이 발생하도록 로봇(1)의 목표 운동(보다 자세하게는 목표 상체위치 및 목표 상체자세)을 보정한 것이 된다. 이 때문에, 제 1 가보정 보용은, 그 보용의 운동대로 실제의 로봇(1)을 동작시켰을 때에 발생하는 실 상반력이, 단순화 모델 보용의 운동대로 실제의 로봇(1)을 동작시켰을 때에 발생하는 실 상반력보다도, 목표 상반력(=단순화 모델 보용의 상반력)에 보다 가까운 것이 된다. 즉, 제 1 가보정 보용의 운동과 상반력(병진 상반력 및 상반력 모멘트) 사이의 동역학적 정밀도가 단순화 모델 보용의 운동과 상반력 사이의 동역학적 정밀도보다도 높아지게 된다.
한편, 상기 제 2 가보정 보용에 대응하는 제 2 변위차원 보정용 모델의 요소의 배치(제 2 요소 배치), 즉, 본 실시형태에서 상기 도 10의 S102에서 최종적으로 결정되는 제 2 변위차원 보정용 모델의 각 질점(Ai)의 위치 및 상체 링크의 자세각에 의해 정해지는 제 2 변위차원 보정용 모델의 요소의 배치에서는, 도 22에 도시되는 바와 같이, 상체자세를 단순화 모델 보용의 순시 상체자세와 동일하게 유지한 채, 제 2 변위차원 보정용 모델의 각 질점(A1~A5)의 위치가, 상기한 각운동량 적의 총합이 어떤 일정값(소정값)이 되도록 결정된다.
이 때문에, 제 2 가보정 보용에 대응하는 제 2 변위차원 보정용 모델의 각 질점(Ai)의 위치 및 상체 링크의 자세각에서는, 각 질점(Ai)(보다 상세하게는 상체 질점(A1) 및 대퇴 질점(A2, A3))의 모델간 의사 병진가속도에 수반되는 관성력이 목표 ZMP 주위에 작용하는 모멘트의 총합이 도 20에 도시한 경우보다도 소정의 값(상기 조건 2의 「일정값」에 상당하는 값)에 근접한다.
이것에 의해, 제 2 가보정 보용은, 로봇(1)의 목표 상체자세를 단순화 모델 보용의 상체자세와 동일하게 유지하면서, 단순화 모델 보용에서는 고려되고 있지 않은 각 다리체의 무릎관절 부근의 부분의 운동에 수반되는 관성력의 영향을 보상하여, 단순화 모델 보용의 상반력 모멘트와 동일한 상반력 모멘트가 발생하도록, 로봇(1)의 목표 상체위치를 보정한 것이 된다. 이러한 제 2 가보정 보용은, 그 보용의 운동대로 실제의 로봇(1)을 동작시켰을 때에 발생하는 실 상반력 모멘트가, 단순화 모델 보용의 운동대로 실제의 로봇(1)을 동작시켰을 때에 발생하는 실 상반력 모멘트보다도, 목표 상반력 모멘트(=단순화 모델 보용의 상반력 모멘트)에 보다 가까운 것이 된다. 즉, 제 2 가보정 보용의 운동과 상반력 모멘트 사이의 동역학적 정밀도가 단순화 모델 보용의 운동과 상반력 모멘트 사이의 동역학적 정밀도보다도 높아지게 된다. 단, 제 2 가보정 보용을 결정할(제 2 변위차원 보정용 모델의 제 2 요소 배치를 결정할) 때에는, 제 1 및 제 2 변위차원 보정용 모델 사이의 질량중심의 벗어남은 고려하지 않고 있으므로, 제 2 가보정 보용의 운동과 병진 상반력 사이의 동역학적인 정밀도는, 반드시 단순화 모델 보용의 운동과 병진 상반력 사이의 동역학적인 정밀도보다도 높아진다고는 할 수 없다.
그리고, 본 실시형태에서는, 전술한 바와 같은 제 1 가보정 보용의 상체위치 자세와 제 2 가보정 보용의 상체위치 자세로부터, 변위차원 보정 상체위치 자세가 제 1 실시형태와 동일하게 상기 식 12 및 식 13에 의해 결정된다. 이 때문에, 제 1 실시형태와 동일하게, 로봇(1)의 동작 모드가 정상적으로 통상 모드일 때에는, 변위차원 보정 보용은, 상체자세를 변동시키지 않(상체자세를 보정하지 않)도록 하면서, 단순화 모델 보용의 상체위치를 보정하여, 변위차원 보정 보용의 운동과 상반력 모멘트 사이의 동역학적인 정밀도를 단순화 모델 보용보다도 높일 수 있는 보용이 된다.
또, 로봇(1)의 동작 모드가 정상적으로 주행 모드일 때에는, 제 1 실시형태 와 동일하게, 변위차원 보정 보용은 단순화 모델 보용의 상체위치 및 상체자세 양자를 보정하여, 변위차원 보정 보용의 운동과 상반력(병진 상반력 및 상반력 모멘트)과의 사이의 동역학적인 정밀도를 단순화 모델 보용보다도 높일 수 있는 보용이 된다.
또, 로봇(1)의 동작 모드가 정상적으로 저마찰 바닥면 보행 모드일 때에는, 제 1 실시형태와 동일하게, 변위차원 보정 보용은 단순화 모델 보용보다도 동역학적 정밀도를 높이면서, 또한, 상체자세의 변동을 최대한 억제하면서, 또한, 로봇(1)의 슬립을 방지하면서, 로봇(1)의 안정한 동작을 가능하게 하는 보용이 된다.
또한, 로봇(1)의 동작 모드가 전환될 때는, 상기 도 10의 S106의 처리에 의해, 가중값 w1(나아가서는, 가중값 w2도)의 값을 서서히 변화시키므로, 변위차원 보정 상체자세나 변위차원 보정 상체위치가 급변하는 일은 없다.
[제 3 실시형태]
다음에 본 발명의 제 3 실시형태를 도 23~도 25를 참조하면서 설명한다. 본 실시형태는, 로봇(1)의 구성은 제 1 및 제 2 실시형태와 동일하고, 또, 단순화 모델, 제 1 변위차원 보정용 모델 및 제 2 변위차원 보정용 모델의 구조는 제 2 실시형태와 동일하다. 그리고, 본 실시형태는 보용생성장치(100)의 처리의 일부만이 제 2 실시형태와 상이한 것이다. 따라서, 본 실시형태의 설명에서는, 제 2 실시형태와 동일부분에 대해서는 제 2 실시형태와 동일한 부호 및 도면을 사용하고, 상세한 설명을 생략한다. 이하, 상기 제 2 실시형태와 상위한 부분을 주체로 하여, 본 실시형태를 설명한다. 또한, 본 실시형태는 본 발명의 제 2~4, 제 7~10, 제 13~15 발명의 1실시형태이다.
본 실시형태에서는 보용생성장치(100)의 처리는 도 9의 S024의 변위차원 보용 보정 서브루틴만이 상기 제 2 실시형태와 상이하다. 따라서, 이 변위차원 보용 보정 서브루틴 이외의 처리에 대해서는 설명을 생략한다.
본 실시형태에서의 변위차원 보용 보정 서브루틴은 도 23의 플로우차트에서 나타내는 바와 같이 행해진다. 이하 설명하면 우선, S500에서, 제 1 변위차원 보정용 모델과 제 2 변위차원 보정용 모델 사이의 중심에 관한 상기 조건 1과, 각운동량 적에 관한 상기 조건 2를 만족하도록 제 1 가보정 상체위치 자세(Pb21, θb21)가 결정된다.
이 처리는, 제 2 실시형태에서의 S100(도 10)의 처리와 동일하고, 도 11의 서브루틴 처리에 의해 제 2 실시형태와 완전히 동일하게 실행된다. 보충하면, 본 실시형태(제 3 실시형태)에서는, 도 11의 S200의 처리에서 구해지는 제 1 변위차원 보정용 모델의 각 요소의 배치가, 본 발명의 제 2 발명에서의 「제 1 배치」에 상당하고, 또, S210의 조건이 성립했을 때의 제 2 변위차원 보정용 모델의 각 요소의 배치가 상기 제 1 요소 배치에 상당하는 동시에, 본 발명의 제 2 발명에서의 「제 2 배치」에 상당한다.
이어서, S502, S504 및 S506의 처리가, 각각 제 2 실시형태에서의 S104, S106, S108과 완전히 동일하게 실행되고, 금회 시각(t)에서의 가중값 w1, w2의 값이 결정된다.
이어서, S508에서, 제 2 변위차원 보정용 모델에서의 상체자세를, S500에서 결정한 제 1 가보정 상체자세(θb21)에 S504에서 결정한 가중값 w1을 승산하여 이루어지는 자세와 상기 단순화 모델 보용의 순시값에서의 상체자세(θb)에 S506에서 결정한 가중값 w2를 승산하여 이루어지는 자세와의 합(w1*θb21+w2*θb)과 동일하 게 하여, 제 1 변위차원 보정용 모델과 제 2 변위차원 보정용 모델 사이의 각운동량 적에 관한 상기 조건 2를 만족하도록 제 2 가보정 상체위치 자세(Pb22, θb22)가 결정된다. 또한, 이 S508의 처리에서는, 제 2 가보정 상체자세(θb22)는 w1*θb21+w2*θb한 것으로 되므로, 이 S508의 처리는, 실질적으로는, 조건 2를 만족하도록 제 2 가보정 상체위치(Pb22)를 결정하는 처리라고 할 수 있다.
이 S508의 처리는 도 24의 서브루틴 처리에 의해 실행된다. 이 서브루틴 처리는, 상기 제 2 실시형태에서의 도 12의 서브루틴 처리에 대해 제 2 가보정 상체자세의 후보(θb22_s)의 값만이 상이한 것이다. 즉, 본 실시형태(제 3 실시형태)의 도 24의 서브루틴 처리에서는, 제 2 가보정 상체자세의 후보(θb22_s)가 w1*θb21+w2*θb(금회 시각(t)의 가중값 w1을 금회 시각(t)의 제 1 가보정 상체자세(θb21)에 승산하여 이루어지는 자세각과 금회 시각(t)의 가중값 w2를 금회 시각(t)의 단순화 모델 보용의 순시값에서의 상태자세(θb)에 승산하여 이루어지는 자세각과의 합)에 고정되고, 이 점에서만, 도 12의 서브루틴 처리와 상이하다(도 12의 서브루틴 처리에서는, 후보(θb22_s)는 단순화 모델 보용의 순시값에서의 상체자세에 고정되어 있음). 보다 구체적으로는, 도 24의 서브루틴 처리는, S602의 처리에서, 초기 후보(θb22_s)가 w1*θb21+w2*θb으로 설정되고, 이것 이외는, 도 12의 서브루틴 처리와 동일하다. 이 경우, 도 24의 S600, S604~S618이 각각 도 12의 S300, S304-S318과 동일하다.
이러한 S508의 처리에 의해, 단순화 모델 보용의 상체자세를 w1*θb21+w2*θ로 보정하고, 또한, 단순화 모델 보용의 상체위치를 상기 조건 2를 만족시키도록 보정하여 이루어지는 보용으로서의 제 2 가보정 보용이 얻어지게 된다.
상기한 바와 같이 S508의 처리를 실행한 후, S510의 처리가 실행되고, 금회 시각(t)에서의 변위차원 보정 상체위치 자세(Pb2, θb2)가 결정된다. 즉, 제 2 가보정 보용의 상체위치 자세(Pb22, θb22)(=(Pb22, w1*θb21+w2*θb))가 그대로, 변위차원 보정 상체위치 자세(Pb2, θb2)로서 결정된다. 보충하면, 본 실시형태(제 3 실시형태)에서는, S610의 조건이 성립했을 때의 제 2 변위차원 보정용 모델의 요소의 배치가 상기 제 2 요소 배치에 상당하는 동시에, 본 발명의 제 2 발명에서의 「제 3 배치」에 상당한다.
이상이 본 실시형태(제 3 실시형태)에서의 변위차원 보용 보정 서브루틴의 상세이다.
보충하면, 이 제 3 실시형태에서는, 변위차원 보용 보정 서브루틴의 처리가, 본 발명의 제 2 발명에서의 목표 운동 보정 수단에 상당하고, 이 처리에서 결정되는 변위차원 보정 보용의 운동(제 3 실시형태에서는 이것은 제 2 가보정 보용의 운동과 동일함)이, 이 제 2 발명에서의 보정 후 순시 목표 운동에 상당한다. 또한, S500의 처리가 제 2 발명에서의 가보정 운동 결정수단에 상당하고, 이 처리에서 결정되는 제 1 가보정 보용이 제 2 발명에서의 가보정 순시 목표 운동에 상당한다.
이상에서 설명한 본 실시형태에서는, 제 1 가보정 보용은 제 2 실시형태와 동일하다. 따라서, 상기 도 20 및 도 21을 참조하여 설명한 바와 같이, 제 1 가보정 보용은, 단순화 모델 보용에서는 고려되지 않고 있는 각 다리체의 무릎관절 부근의 부분의 운동에 수반되는 관성력의 영향을 보상하여, 단순화 모델 보용의 목표 상반력(병진 상반력 및 상반력 모멘트)과 동일한 상반력이 발생하도록 로봇(1)의 목표 운동(보다 상세하게는 목표 상체위치 및 목표 상체자세)을 보정한 것이 된다. 이 때문에, 제 1 가보정 보용은, 그 보용의 운동대로 실제의 로봇(1)을 동작시켰을 때에 발생하는 실 상반력이, 단순화 모델 보용의 운동대로 실제의 로봇(1)을 동작시켰을 때에 발생하는 실 상반력보다도, 목표 상반력(=단순화 모델 보용의 상반력)에 보다 가까운 것이 된다. 즉, 제 1 가보정 보용의 운동과 상반력(병진 상반력 및 상반력 모멘트) 사이의 동역학적 정밀도가 단순화 모델 보용의 운동과 상반력 사이의 동역학적 정밀도보다도 높아지게 된다.
한편, 도 25는, 본 실시형태(제 3 실시형태)에서의 제 2 가보정 보용에 대응하는 제 2 변위차원 보정용 모델의 요소의 배치(제 2 요소 배치)와 제 1 변위차원 보정용 모델의 요소의 배치와의 관계를 예시하고 있다. 이 도 25의 제 2 변위차원 보정용 모델의 각 요소의 배치는, 상기 도 20에서 상정하고 있는 단순화 모델 보용의 순시값에 대응하여, 상기 도 23의 S506에서 최종적으로 결정되는 제 2 변위차원 보정용 모델의 상기 제 2 요소 배치이다. 이 배치는 상기 제 2 가보정 보용으로부터, 상기 기하학적 구속조건(2)에 따라서 정해지는 것과 동일하다. 또한, 도 25에서는, 제 2 가보정 보용에 대응하는 제 2 변위차원 보정용 모델의 각 질점(Ai)(i=1,2,…,5)의 위치를 Pi22(Ai)로 표시하고 있다. 또, 도 25에 도시하는 제 1 변위차원 보정용 모델의 각 질점(Ai)의 위치 및 상체 링크의 자세각은 상기 도 20과 동일하다.
이 도 25에 도시되는 바와 같이, 제 2 가보정 보용에 대응하는 제 2 변위차 원 보정용 모델의 요소의 배치에서는, 상체자세를, 제 1 가보정 상체자세(θb21)에 가중값 w1을 승산하여 이루어지는 자세각과 상기 단순화 모델 보용의 순시값에서의 상체자세(θb)에 가중값 w2를 승산하여 이루어지는 자세각과의 합으로 규제한 상태에서, 제 2 변위차원 보정용 모델의 각 질점(A1~A5)의 위치가 상기한 각운동량 적의 총합이 어떤 일정값(소정값)이 되도록 결정된다. 보충하면, 도 25의 사선 혹은 횡선을 그은 삼각형 면적의 2배가, 각각, 상체 질점(A1), 대퇴 질점(A2, A3)에 관계되는 각운동량 적에 상당하는 것이다.
이 때문에, 제 2 가보정 보용에 대응하는 제 2 변위차원 보정용 모델의 각 질점(Ai)의 위치 및 상체 링크의 자세각에서는, 각 질점(Ai)(보다 상세하게는 상체 질점(A1) 및 대퇴 질점(A2, A3))의 모델간 의사 병진가속도에 수반되는 관성력이 목표 ZMP 주위에 작용하는 모멘트의 총합이 도 20에 도시한 경우보다도 소정의 값(상기 조건 2의 「일정값」에 상당하는 값)에 근접한다.
이것에 의해, 제 2 가보정 보용은, 로봇(1)의 목표 상체자세를 단순화 모델 보용의 순시값에서의 상체자세(본 실시형태에서는 연직자세)와 제 1 가보정 상체자세 사이의 자세로 규제하면서, 단순화 모델 보용에서는 고려되지 않고 있는 각 다리체의 무릎관절 부근의 부분의 운동에 수반되는 관성력의 영향을 보상하여, 단순화 모델 보용의 상반력 모멘트와 같은 상반력 모멘트가 발생하도록, 로봇(1)의 목표 상체위치를 보정한 것이 된다. 이러한 제 2 가보정 보용은, 그 보용의 운동대로 실제의 로봇(1)을 동작시켰을 때에 발생하는 실 상반력 모멘트가 단순화 모델 보용의 운동대로 실제의 로봇(1)을 동작시켰을 때에 발생하는 실 상반력 모멘트보 다도 목표 상반력 모멘트(2단순화 모델 보용의 상반력 모멘트)에 보다 가까운 것이 된다. 즉, 제 2 가보정 보용의 운동과 상반력 모멘트 사이의 동역학적 정밀도가 단순화 모델 보용의 운동과 상반력 모멘트 사이의 동역학적 정밀도보다도 높아지는 것이 된다.
그리고, 본 실시형태에서는, 제 2 가보정 상체위치 자세가 변위차원 보정 상체위치 자세로서 결정된다. 이 경우, 로봇(1)의 동작 모드가 정상적으로 통상 모드일 경우(w1=0일 경우)에는, 변위차원 보정 보용(=제 2 가보정 보용)은, 제 2 실시형태와 동일하게, 상체자세를 변동시키지 않(일정하게 유지하)도록 하면서, 단순화 모델 보용의 상체위치를 보정하여, 변위차원 보정 보용의 운동과 상반력 모멘트 사이의 동역학적인 정밀도를 단순화 모델 보용보다도 높일 수 있는 보용이 된다. 이 경우, 단순화 모델 보용이 상기 제 2 실시형태와 동일하면, 본 실시형태(제 3 실시형태)에서의 변위차원 보정 보용도 제 2 실시형태와 동일하게 된다.
또, 로봇(1)의 동작 모드가 정상적으로 주행 모드일 경우(w1=1일 경우)에는, 상기 도 23의 S506에서 결정되는 제 2 가보정 상체위치 자세는 제 1 가보정 상체위치 자세와 동일하거나, 혹은 거의 동일하게 된다(양자의 상체위치는 완전하게 동일하게 된다고는 할 수 없음). 이 때문에, 이 경우의 변위차원 보정 보용(=제 2 가보정 보용)은 단순화 모델 보용의 상체위치 및 상체자세 양자를 보정하여, 변위차원 보정 보용의 운동과 상반력(병진 상반력 및 상반력 모멘트) 사이의 동역학적인 정밀도를 단순화 모델 보용보다도 높일 수 있는 보용이 된다. 이 경우도, 단순화 모델 보용이 상기 제 2 실시형태와 동일하면, 본 실시형태(제 3 실시형태)에서의 변위차원 보정 보용도 제 2 실시형태와 동일하게 된다.
또, 로봇(1)의 동작 모드가 정상적으로 저마찰 바닥면 보행 모드일 경우(w1=0.5일 경우)에는, 변위차원 보정 상체자세는 제 1 가보정 보용의 상체자세각의 1/2의 자세각과 단순화 모델 보용의 상체자세각의 1/2의 자세각과의 합인 것으로 하고, 변위차원 보정 상체위치는 상체자세각이 제 1 가보정 보용의 상체자세각의 1/2의 자세각과 단순화 모델 보용의 상체자세각의 1/2의 자세각의 합인 경우에 대응하는 제 2 가보정 보용의 상체위치인 것으로 한다. 이 때문에, 이 경우의 변위차원 보정 보용은, 상기 제 2 실시형태와 동일하게 상체자세의 변동을 억제하면서, 변위차원 보정 보용의 운동과 상반력(병진 상반력 및 상반력 모멘트) 사이의 동역학적인 정밀도를 단순화 모델 보용보다도 높이도록 단순화 모델 보용의 상체위치 및 상체자세 양자를 보정한 것이 된다. 나아가서는, 이 변위차원 보정 보용은 단순화 모델 보용보다도 동역학적 정밀도를 높이면서, 또한, 상체자세의 변동을 최대한 억제하면서, 또한, 로봇(1)의 슬립을 방지하면서, 로봇(1)의 안정한 동작을 가능하게 하는 보용이 된다. 또, 이 경우, 본 실시형태에서는, 변위차원 보정 상체위치는, 보정 후의 상체자세로서의 변위차원 보정 상체자세에 대응하여, 상기 조건 2를 만족시키도록 결정되는 것이기 때문에, 그 변위차원 보정 상체위치 자세를 포함하는 변위차원 보정 보용의 운동대로 실제의 로봇(1)의 동작시켰을 때에 발생하는 실 상반력 모멘트와 목표 상반력 모멘트의 오차를 효과적으로 저감할 수 있다.
또한, 로봇(1)의 동작 모드가 전환될 때는, 상기 도 23의 S504의 처리에 의해, 가중값 w1의 값을 서서히 변화시키므로, 상기 제 1 및 제 2 실시형태와 동일하 게, 변위차원 보정 상체자세나 변위차원 보정 상체위치가 급변하는 일은 없다.
다음에, 이상에서 설명한 제 1~제 3 실시형태에 관련된 변형태양을 몇개 설명한다.
상기 제 1~제 3 실시형태에서는, 변위차원 보정 상체자세는 상기 제 1 가보정 상체자세에 가중값 w1을 승산한 것에 따라 결정된다. 이 경우, 제 1 가보정 상체자세(제 1 가보정 보용의 상체의 경사각)에 대해, 가중값 w1이 주파수특성을 갖도록 해도 된다. 예를 들면, 제 1 가보정 상체자세의 주파수성분에 대해, 도 26(a)에 도시하는 바와 같이, 가중값 w1에 로 컷 특성을 갖게 한다. 이렇게 한 경우에는, 제 1 가보정 상체자세가 정상적으로 거의 일정하게 유지되는 상태, 예를 들면, 로봇(1)을 직립 자세 상태에서 계속적으로 정지시키는 것과 같은 목표 보용을 생성하는 경우에는, 제 1 가보정 상체자세에 가중값 w1을 승산하여 이루어지는 변위차원 보정 상체자세를 연직방향에 대한 오프셋이 발생하지 않고, 확실하게 정상적으로 연직자세로 유지할 수 있다. 이 때문에, 로봇(1)의 전체자세의 미관이 좋아진다. 또는, 필요에 따라, 도 26(b)에 도시하는 바와 같이, 가중값 w1에 하이 컷 특성을 갖도록 해도 된다. 이렇게 한 경우에는, 제 1 가보정 상체자세의 고주파성분, 즉, 제 1 가보정 상체자세를 고속으로 진동시키는 성분을 제거하여, 변위차원 보정 상체자세를 결정할 수 있게 된다. 이 결과, 변위차원 보정 상체자세의 미세한 진동이 생기는 것을 방지하여, 로봇(1)의 머리부 등에 탑재되는 촬상장치의 요동을 방지할 수 있다.
또한, 도 26(a) 또는 도 26(b)와 같이 가중값 w1에 주파수특성을 갖게 함으 로써, 본 발명의 제 5 발명의 1실시형태가 구축되게 된다.
또, 상기 제 1~제 3 실시형태에서는, 각운동량 적에 관계되는 점(Q)으로서, 목표 ZMP를 사용했는데, 점(Q)는 목표 ZMP 이외의 점이어도 되고, 예를 들면, 다음과 같은 점이어도 된다.
a) 보용을 기술하는 좌표계(글로벌 좌표계)의 원점
b) 로봇(1)과 함께 연속적으로 이동하는 적당히 설정한 점
c) 풀 모델에서의 로봇(1)의 질량중심
d) 단순화 모델에서의 로봇(1)의 질량중심
e) 제 1 및 제 2 변위차원 보정용 모델에 관계되는 어떤 소정의 질점의 집합의 중심(구체적으로는, 제 1 및 제 2 변위차원 보정용 모델 사이에서 위치의 차를 생기게 할 가능성이 있는 질점의 집합의 중심. 예를 들면, 제 1 실시형태에서는, 모든 질점(A1~A5)의 집합의 중심이 상당하고, 제 2 및 제 3 실시형태에서는, 상체 질점(A1), 대퇴 질점(A2, A3)의 집합의 중심이 상당함)
또, 상기 제 1 실시형태에서는, 도 9의 S024의 변위차원 보용 보정 서브루틴을 도 10의 처리에 의해 행하도록 했는데, 상기 제 3 실시형태와 동일하게, 도 23의 처리에 의해 행하도록 해도 된다. 이것에 의해, 본 발명의 제 2 발명에 관계되는 다른 실시형태가 구성되게 된다.
또, 상기 제 1~제 3 실시형태의 설명에서는, 도 9의 S024의 변위차원 보용 보정 서브루틴의 처리에서, 사지탈 플레인상에서의 단순화 모델 보용의 상체위치 자세를 보정하는 처리에 대해 설명했는데, 사지탈 플레인에 직교하는 래터럴 플레 인상에서의 상체위치 자세를 함께 보정하도록 해도 된다. 이 경우에는, 예를 들면 도 11의 S200~S218의 처리, 도 12의 S300~S318의 처리, 및 도 24의 S600~S618의 처리를 3차원으로 확장하여 행하면 된다. 또는, 사지탈 플레인상에서의 상체위치 자세의 보정 처리와, 래터럴 플레인상에서의 상체위치 자세의 보정 처리를 도 11, 도 12, 도 24와 동일한 알고리즘에 의해, 각각 독립적으로 행해도 된다. 보충하면, 상체위치의 연직성분을 포함하여 상체위치 자세를 보정하는 경우에 있어서, 사지탈 플레인상에서의 상체위치 자세의 보정 처리와, 래터럴 플레인상에서의 상체위치의 보정 처리를 독립하여 행하는 경우에는, 상체위치의 연직성분의 보정은, 사지탈 플레인상, 또는 래터럴 플레인상의 어느 한쪽의 플레인상에서의 보정 처리에 의해 행하고, 다른 한쪽의 플레인상에서의 보정 처리에서는, 상체위치의 연직성분을 제외하고, 그 다른 한쪽의 플레인상에서의 상체위치 자세의 보정을 행하도록 하면 된다.
또, 호라이즌틀 플레인(수평면)에서의 상체위치 자세를 합쳐서 보정하도록 해도 된다. 또는, 사지탈 플레인, 래터럴 플레인, 호라이즌틀 플레인중 어느 하나 또는 두개에 대해 상체위치 자세를 보정하도록 해도 된다.
또, 제 1~제 3 실시형태에서는, 도 10의 S100 또는 도 23의 S500에서, 제 1 가보정 상체위치 자세의 초기 후보(Pb21_s, θb21_s)를, 전회 제어주기의 시각에서 구한 제 1 가보정 상체위치 자세를 사용하여 결정했는데, 예를 들면 이 초기 후보(Pb21_s, θb21_s)를 단순화 모델 보용의 상체위치 자세와 동일하게 해도 된다. 마찬가지로, 도 10의 S102 또는 도 23의 S506에서, 제 2 가보정 상체위치의 초기 후보(Pb22_s)를, 전회 제어주기의 시각에서 구한 제 2 가보정 상체위치를 사용하여 결정했는데, 예를 들면 이초기 후보(Pb22_s)를 단순화 모델 보용의 상체위치와 동일하게 해도 된다. 단, 상기 조건 1, 2를 충족시키는 제 1 가보정 상체위치 자세, 또는 상기 조건 2를 충족시키는 제 2 가보정 상체위치를 단시간에 탐색하는 점에서는, 상기 제 1~제 3 실시형태에서 설명한 바와 같이, 초기 후보(Pb2_s, θb2_s)를 결정하는 것이 바람직하다.
또, 제 1~제 3 실시형태의 변위차원 보용 보정 서브루틴의 처리에서, 상기 조건 1, 2를 충족시키는 제 1 가보정 상체위치 자세를 탐색적으로 구하도록 했는데, 예를 들면 제 2 변위차원 보정용 모델의 요소의 배치(각 질점의 위치와 이너셔를 갖는 각 링크의 자세)를 상기 기하학적 구속조건(2)에 따라서 단순화 모델 보용에 대응시켜서 결정했을 때의 그 배치와, 제 1 변위차원 보정용 모델의 요소의 배치와의 차(양 모델간의 각 질점의 위치의 차와, 이너셔를 갖는 각 링크의 자세각의 차)로부터, 미리 작성한 함수식 또는 맵 등을 사용하여, 단순화 모델 보용의 상체위치 자세로부터 제 1 가보정 상체위치 자세로의 보정량을 결정하고, 그 보정량으로 단순화 모델 보용의 상체위치 자세를 보정함으로써 제 1 가보정 상체위치 자세를 결정하는 것도 가능하다.
또, 제 1 및 제 2 실시형태의 변위차원 보용 보정 서브루틴의 처리에서는, 상체자세를 단순화 모델 보용의 상체자세와 동일하게 했을 때에 상기 조건 2를 충족시키는 제 2 가보정 상체위치를 탐색적으로 구하도록 했는데, 제 2 변위차원 보정용 모델의 요소의 배치(각 질점의 위치와 이너셔를 갖는 각 링크의 자세)를 상기 기하학적 구속조건(2)에 따라서 단순화 모델 보용에 대응시켜서 결정했을 때의 그 배치와, 제 1 변위차원 보정용 모델의 요소의 배치와의 차(양 모델간의 각 질점의 위치의 차와, 이너셔를 갖는 각 링크의 자세각의 차)로부터, 미리 작성한 함수식 또는 맵 등을 사용하여, 단순화 모델 보용의 상체위치로부터 제 2 가보정 상체위치에의 보정량을 결정하고, 그 보정량으로 단순화 모델 보용의 상체위치를 보정함으로써 제 2 가보정 상체위치를 결정하는 것도 가능하다. 마찬가지로, 제 3 실시형태에서는, 단순화 모델 보용의 상체자세를 제 1 가보정 상체자세에 상기 가중값 w1을 승산한 것과 단순화 모델 보용의 상체자세에 상기 가중값 w2를 승산한 것과의 합으로 치환하여 이루어지는 보용(이하, 여기에서의 설명에서는 치환 보용이라고 함)의 순시값으로부터 상기 기하학적 구속조건(2)에 따라 제 2 변위차원 보정용 모델의 요소의 배치를 결정했을 때의 그 배치와, 제 1 변위차원 보정용 모델의 요소의 배치와의 차로부터, 미리 작성한 함수식 또는 맵 등을 사용하여, 상기 치환 보용의 상체위치로부터 제 2 가보정 상체위치에의 보정량을 결정하고, 그 보정량으로 이 치환 보용의 상체위치를 보정함으로써 제 2 가보정 상체위치를 결정하는 것도 가능하다.
또, 제 1~제 3 실시형태의 변위차원 보용 보정 서브루틴의 처리에서, 제 1 가보정 상체위치 자세를 결정할 때에, 모델간 전체 중심 벗어남(Gc_err)과 모델간 각운동량 적 벗어남(Lc_err)이 각각 허용범위 내인지의 여부의 판정(도 11의 S210의 처리)을 행하지 않고, 탐색 회수(후보(Pb21_s, θb21_s)의 갱신회수)가 소정 회수에 달하면 탐색 완료로 하고, 그 때의 후보(Pb21_s, θb21_s)를 제 1 가보정 상 체위치 자세로서 결정하도록 해도 된다. 또는, 모델간 전체 중심 벗어남(Gc_err)과 모델간 각운동량 적 벗어남(Lc_err)이 각각 허용범위 내에 들어가거나, 혹은, 탐색 회수가 소정 회수에 달하면 탐색 완료로 하여, 그 때의 후보(Pb21_s, θb21_s)를 제 1 가보정 상체위치 자세로서 결정하도록 해도 된다.
마찬가지로, 제 1~제 3 실시형태의 변위차원 보용 보정 서브루틴의 처리에서, 제 2 가보정 상체위치 자세를 결정할 때에, 모델간 각운동량 적 벗어남(Lc_err)이 각각 허용범위 내인지의 여부의 판정(도 12의 S310의 처리, 또는 도 24의 S610의 처리)을 행하지 않고, 탐색 회수(후보(Pb22_s, θb22_s)의 갱신회수)가 소정 회수에 달하면 탐색 완료로 하고, 그 때의 후보(Pb22_s, θb22_s)를 제 2 가보정 상체위치 자세로서 결정하도록 해도 된다. 또는, 모델간 각운동량 적 벗어남(Lc_err)이 각각 허용범위 내에 들어가는지, 혹은, 탐색 회수가 소정 회수에 달하면 탐색 완료로 하여, 그 때의 후보(Pb22_s, θb22_s)를 제 2 가보정 상체위치 자세로서 결정하도록 해도 된다.
또, 상기 제 1~제 3 실시형태에서는, 모델간 각운동량 적 벗어남(Lc_err)을 산출할 때에, 앞에 기술한 바와 같이, 상기 식 07 대신 예를 들면 상기 식 08을 사용하도록 해도 된다. 이 경우, 식 08의 우변의 Σ에 이어지는 각 항은, 제 1 변위차원 보정용 모델의 질점(Ai)과 점(Q)을 연결하는 선분과, 제 2 변위차원 보정용 모델의 질점(Ai)과 점(Q)을 연결하는 선분이 이루는 각도(Pi1_Q_Pi2)에 대해 거의 단조롭게 변화되는 함수가 된다. 따라서, 상기 제 1~제 3 실시형태에서는, 모델간 각운동량 적 벗어남(Lc_err)을 산출하기 위해서, 식 08을 사용함으로써, 본 발 명의 제 6 발명의 1 실시형태가 구축되게 된다.
또, 상기 제 2 및 제 3 실시형태에 관해서, 제 1 및 제 2 변위차원 보정용 모델 사이에서의 각 대퇴 질점(A2, A3)의 각각의 위치 벗어남은, 각 다리체(2)의 발목관절의 중심점과 고관절의 중심점을 연결하는 선분에 대한 제 2 변위차원 보정 모델의 대퇴 질점(A2, A3)의 위치 벗어남(이 선분에 거의 직교하는 면 내에서의 위치의 벗어남), 또는, 이 선분에 대한 무릎관절의 중심의 위치 벗어남과 거의 동일하다. 따라서, 모델간 전체 중심 벗어남(Gc_err)과 모델간 각운동량 적 벗어남(L_err)을 구할 때에, 예를 들면 상기 식 06, 07에서의 각 대퇴 질점(A2, A3)에 관계되는 위치 벗어남(P22_p21), (P32_p31) 대신, 상기 선분과, 대퇴 질점(A2, A3) 혹은 각 무릎관절 의 중심과의 거리(이하, 대퇴 질점(A2, A3)의 의사 위치 벗어남이라고 함)를 사용해도 된다.
게다가, 이 대퇴 질점(A2, A3)의 의사 위치 벗어남 거리는, 각 다리체(2)의 무릎관절의 굽힘각과 밀접한 관계가 있어, 이 대퇴 질점(A2, A3)의 의사 위치 벗어남을 무릎관절의 굽힘각으로 구하도록 해도 된다. 보다 구체적으로는, 상기한 도 20에 도시하는 바와 같이, 각 대퇴 링크(24)의 길이(대퇴 링크(24)의 양단의 고관절 및 무릎관절의 각각의 중심점 사이의 거리)를 L, 무릎관절의 굽힘각(대퇴 링크의 축심(고관절의 중심과 무릎관절의 중심을 지나는 직선)에 대한 하퇴 링크의 축심(무릎관절 의 중심과 발목관절의 중심을 지나는 직선의 경사각)을 θ라고 했을 때, 각 대퇴 질점(A2, A3)의 의사 위치 벗어남 거리는, 거의 L*sin(θ/2)과 동일한 것이 된다. 또한, 길이 L은 양 대퇴 링크(24, 24)에 대해 동일하다. 따라서, 예 를 들면 상기 식 06, 07에서의 각 대퇴 질점(A2, A3)에 관계되는 위치 벗어남(P22-P21), (P32-P31) 대신, 각 다리체(2)의 무릎관절의 굽힘각(θ)에 따라 정해지는 L*sin(θ/2)을 사용하도록 해도 된다. 보충하면, 상체위치 자세와 양 족평위치 자세를 정하면, 각 다리체(2)의 무릎관절의 굽힘각은 로봇(1)의 기하학 모델(링크 모델)에 의해 일의적으로 결정할 수 있다.
또, 상기 제 1~제 3 실시형태에서는, 제 1 및 제 2 변위차원 보정용 모델에 있어서의 각 다리체(2)의 질점을 2개로 했는데, 예를 들면 각 다리체(2)의 족평(22)의 근방, 하퇴 링크, 및 대퇴 링크에 각각 질점을 갖는(각 다리체(2)에 3질점을 갖는) 변위차원 보정용 모델을 구축해도 된다. 이 경우, 제 2 또는 제 3 실시형태와 같이, 제 1 변위차원 보정용 모델의 질점의 위치를 구속할 때에는, 각 족평 질점 이외의 2개의 질점을, 예를 들면 발목관절의 중심과 고관절의 중심을 연결하는 선분상의 소정의 내분비로 정해지는 2개의 점에 설정하도록 하면 된다. 또, 하퇴 링크 및/또는 상체 링크에 상당하는 이너셔를 갖는 강체(링크)를 양 변위차원 보정용 모델의 요소로서 더해도 된다.
또, 제 2 및 제 3 실시형태에서의 제 1 및 제 2 변위차원 보정용 모델의 족평 질점(A4, A5)과 같이, 양 변위차원 보정용 모델에서의 배치가 동일위치가 되는 질점은 그것을 양 변위차원 보정용 모델로부터 빼도 된다.
또, 상기 제 1~제 3 실시형태에서, 예를 들면 로봇(1)의 동작 모드가 상기 통상 모드(주행 모드 및 저마찰 바닥면 보행 모드 이외의 작동 모드)일 때에, 로봇(1)을 멈추어 서게 하고 양 팔체(5, 5)를 함께 전방으로 밀어 내거나 하는 것과 같 은 운동을 행하는 목표 보용을 생성하는 경우에는, 제 1 및 제 2 변위차원 보정용 모델에서, 각 팔체(5)에 대응하는 부위에 질점이나 이너셔를 갖도록 해도 된다.
게다가, 양 팔체(5, 5)의 팔꿈치관절의 굴신을 행하는 경우에는, 상기 제 2 및 제 3 실시형태에서의 제 1 및 제 2 변위차원 보정용 모델에서 대퇴 질점을 구비한 경우와 동일하게, 팔꿈치관절 혹은 그 근방에 대응하는 질점을 구비하도록 해도 된다. 보다 구체적으로는, 예를 들면 도 27에 도시하는 바와 같이, 제 1 및 제 2 변위차원 보정용 모델에서, 상체 질점(B1), 대퇴 질점(B2, B3) 및 족평 질점(B4, B5)에 더하여, 각 팔체(5)의 팔꿈치관절 근방에 각각 대응하는 팔꿈치 질점(B8, B9)과, 각 팔체(5)의 선단부 근방에 각각 대응하는 손끝 질점(B6, B7)을 구비하도록 하고, 제 1 변위차원 보정용 모델에서는, 각 팔체(5)의 어깨관절의 중심과 손목관절의 중심을 연결하는 선분상의 소정의 내분비로 정해지는 점에 팔꿈치 질점(B8, B9)이 구속되도록 한다. 그리고, 제 1 변위차원 보정용 모델과 제 2 변위차원 보정용 모델 사이에서의 팔꿈치관절(B8, B9)의 위치의 차를 포함하여, 상기 제 2 또는 제 3 실시형태와 동일하게, 모델간 전체 중심 벗어남(Gc_err) 및 모델간 각운동량 적 벗어남(L_err)이 0에 근접하도록(상기 조건 1, 2를 충족시키도록) 제 1 가보정 상체위치 자세를 구함과 동시에, 상체자세를 단순화 모델 보용의 상체자세와 동일하게 하거나, 혹은 제 1 가보정 상체자세에 상기 가중값 w1을 승산한 것과 단순화 모델 보용의 상체자세에 상기 가중값 w2를 승산한 것과의 합과 동일하게 한 상태에서, 모델간 각운동량 적 벗어남(L_err)이 0에 근접하도록(상기 조건 2를 충족시키도록) 제 2 가보정 상체위치 자세를 결정한다. 또한, 제 1 변위차원 보정용 모델에 관해서는, 제 1 실시형태에서, 각 다리체(2)의 자세를 구속한 경우와 동일하게, 제 1 변위차원 보정용 모델의 팔자세를, 로봇(1)의 직립 자세 상태에서의 팔자세(상하방향에 편 자세)로 구속하도록 해도 된다.
또, 제 1~제 3 실시형태에 관해 보충하면, 제 1 실시형태에서는, 본 발명에서의 제 1 기하학적 구속조건에 상당하는 상기 기하학적 구속조건(1)과, 제 2 기하학적 구속조건에 상당하는 상기 기하학적 구속조건(2)이 상기한 바와 같이 설정되어 있음으로써, 그것들의 기하학적 구속조건 (1), (2)는 본 발명의 제 9 발명과 같이 설정되어 있게 되어 있다. 마찬가지로, 제 2 및 제 3 실시형태에서는, 본 발명에서의 제 1 기하학적 구속조건에 상당하는 상기 기하학적 구속조건(3)과, 제 2 기하학적 구속조건에 상당하는 상기 기하학적 구속조건(2)이 상기한 바와 같이 설정되어 있음으로써, 그것들의 기하학적 구속조건 (3), (2)는 본 발명의 제 8 발명과 동일하게 설정되어 있는 것으로 되어 있다.
또한, 제 1~제 3 실시형태에서는, 제 1 변위차원 보정용 모델의 모든 요소의 질량의 총합이 로봇(1)의 총 질량과 일치하고, 로봇(1)의 순시 목표 운동에 대한 제 1 변위차원 보정용 모델의 질량중심 위치(G1)는, 이 순시 목표 운동에 대한 단순화 모델의 질량중심 위치(Gs)와 일치 또는 거의 일치하도록 하고 있다. 또, 제 2 변위차원 보정용 모델의 모든 요소의 질량의 총합도 로봇(1)의 총 질량과 일치하고, 로봇(1)의 순시 목표 운동에 대한 제 2 변위차원 보정용 모델의 질량중심 위치(G2)는, 이 순시 목표 운동에 대한 실제의 로봇(1)의 진 질량중심 위치(Gf)에 거의 일치하도록 하고 있다. 따라서, 제 1~제 3 실시형태에서는, G1과 G2의 차(G1-G2)는, 단순화 모델의 질량중심 위치(Gs)와 로봇의 진 질량중심 위치(Gf)의 차(Gs-Gf), 즉 단순화 모델의 질량중심 위치의 오차에 거의 일치하는 것으로 되어 있다. 따라서, 제 1~제 3 실시형태는, 본 발명에서의 제 1 기하학적 구속조건으로서의 상기 기하학적 구속조건 (1) 또는 (3)과, 제 2 기하학적 구속조건으로서의 상기 기하학적 구속조건 (2)가 상기한 제 9 발명과 같이 설정되어 있게 된다. 또한, 이 경우에 있어서, 앞에 기술한 바와 같이, 족평 근방의 질점(족평 질점)과 같이, 양 변위차원 보정용 모델에서의 배치가 동일위치가 되는 질점은, 그것을 양 변위차원 보정용 모델로부터 제외해도 되는 것은 물론이다.
이상 설명한 바와 같이, 본 발명은, 동역학 모델을 사용하여 작성된 순시 목표 보용의 운동을, 미분방정식이나 적분방정식을 포함하지 않는 기하학적인 연산에 의해, 적절하게 보정하고, 그 보정 후의 운동을 포함하는 순시 목표 보용의 동역학적 정밀도를 높이는 것과, 로봇의 상체 등의 소정 부위의 자세의 변동을 최대한 적게 하는 것을 양립할 수 있는 이동 로봇의 보용생성장치를 제공할 수 있는 점에서 유용하다.
Claims (15)
- 이동 로봇(1)의 순시 목표 운동과 순시 목표 상반력으로 이루어지는 순시 목표 보용을 차례차례로 발생하는 순시 보용발생수단을 구비한 보용생성장치(100)에 있어서,상기 순시 목표 운동으로부터 상기 이동 로봇의 소정 부위의 위치 및 자세를 가보정 하여 이루어지는 제 1 가보정 순시 목표 운동을 결정하는 제 1 가보정 운동 결정수단(100d)과,상기 순시 목표 운동으로부터 상기 소정 부위의 자세를 이 순시 목표 운동에서의 자세와 동일하게 유지하면서, 이 소정 부위의 위치를 가보정 하여 이루어지는 제 2 가보정 순시 목표 운동을 결정하는 제 2 가보정 운동 결정수단(100d)과,상기 제 1 가보정 순시 목표 운동과 제 2 가보정 순시 목표 운동을 기초로, 상기 순시 목표 운동에서의 상기 소정 부위의 위치 및 자세의 진보정을 실행하여 이루어지는 보정 후 순시 목표 운동을 결정하는 목표 운동 보정수단을 구비하고,상기 이동 로봇의 전체 또는 일부를, 이너셔를 갖는 강체와 질점 중 적어도 어느 하나를 요소로 하여, 복수의 요소로 이루어지는 모델로 표현하고, 상기 순시 보용발생수단이 발생한 순시 목표 운동으로부터, 이동 로봇의 순시 운동과 상기 모델의 각 요소의 배치와의 관계를 규정하도록 미리 정해진 제 1 기하학적 구속조건에 따라 결정되는 상기 모델의 각 요소의 배치를 제 1 배치로 하고, 상기 제 1 가보정 운동 결정수단이 결정한 제 1 가보정 순시 목표 운동으로부터, 이동 로봇의 순시 운동과 상기 모델의 각 요소의 배치와의 관계를 규정하도록 미리 정해진 제 2 기하학적 구속조건에 따라서 결정되는 상기 모델의 각 요소의 배치를 제 2 배치로 하고, 상기 제 2 가보정 운동 결정수단이 결정한 제 2 가보정 순시 목표 운동으로부터, 상기 제 2 기하학적 구속조건에 따라서 결정되는 상기 모델의 각 요소의 배치를 제 3 배치로 했을 때,상기 제 1 가보정 운동 결정수단은, 상기 제 2 배치와 제 1 배치 사이에서의 상기 모델의 각 요소의 배치의 차를 가속도로 간주함으로써 산출되는 각 요소의 관성력의 합력의 병진력 성분이 0이 되고, 또한, 이 합력이 미리 정해진 점 주위에 발생하는 모멘트 성분이 미리 정해진 값으로 되도록 상기 제 1 가보정 순시 목표 운동을 결정하고,상기 제 2 가보정 운동 결정수단은, 상기 제 3 배치와 제 1 배치 사이에서의 상기 모델의 각 요소의 배치의 차를 가속도로 간주함으로써 산출되는 각 요소의 관성력의 합력이 상기 미리 정해진 점 주위에 발생하는 모멘트 성분이 상기 미리 정해진 값이 되도록 상기 제 2 가보정 순시 목표 운동을 결정하고,상기 목표 운동 보정 수단은, 상기 제 1 가보정 순시 목표 운동에서의 상기 소정 부위의 자세에 미리 정해진 가중값 w1을 승산한 것과 상기 제 2 가보정 순시 목표 운동에서의 상기 소정 부위의 자세에 미리 정해진 가중값 w2를 승산한 것의 합을 상기 보정 후 순시 목표 운동에서의 상기 소정 부위의 순시 목표 자세로서 결정함과 동시에, 상기 제 1 가보정 순시 목표 운동에서의 상기 소정 부위의 위치에 상기 미리 정해진 가중값 w1을 승산한 것과 상기 제 2 가보정 순시 목표 운동에서의 상기 소정 부위의 위치에 미리 정해진 가중값 w2를 승산한 것의 합을 상기 보정 후 순시 목표 운동에서의 상기 소정 부위의 순시 목표 위치로서 결정하는 것을 특징으로 하는 이동 로봇의 보용생성장치.
- 이동 로봇(1)의 순시 목표 운동과 순시 목표 상반력으로 이루어지는 순시 목표 보용을 차례차례로 발생하는 순시 보용발생수단을 구비한 보용생성장치(100)에 있어서,상기 순시 목표 운동으로부터 상기 이동 로봇의 소정 부위의 위치 및 자세를 가보정 하여 이루어지는 가보정 순시 목표 운동을 결정하는 가보정 운동 결정수단과,상기 순시 목표 운동에서의 상기 소정 부위의 위치 및 자세의 진보정을 실행하여 이루어지는 보정 후 순시 목표 운동을 결정하는 목표 운동 보정 수단을 구비하고,상기 이동 로봇의 전체 또는 일부를, 이너셔를 갖는 강체와 질점 중 적어도 어느 한쪽을 요소로 하여, 복수의 요소로 이루어지는 모델로 표현하고, 상기 순시 보용발생수단이 발생한 순시 목표 운동으로부터, 이동 로봇의 순시 운동과 상기 모델의 각 요소의 배치와의 관계를 규정하도록 미리 정해진 제 1 기하학적 구속조건에 따라 결정되는 상기 모델의 각 요소의 배치를 제 1 배치로 하고, 상기 가보정 운동 결정수단이 결정한 가보정 순시 목표 운동으로부터, 이동 로봇의 순시 운동과 상기 모델의 각 요소의 배치와의 관계를 규정하도록 미리 정해진 제 2 기하학적 구속조건에 따라서 결정되는 상기 모델의 각 요소의 배치를 제 2 배치로 하고, 상기 목표 운동 보정 수단이 결정하는 보정 후 순시 목표 운동으로부터, 상기 제 2 기하학적 구속조건에 따라서 결정되는 상기 모델의 각 요소의 배치를 제 3 배치로 했을 때,상기 가보정 운동 결정수단은, 상기 제 2 배치와 제 1 배치 사이에서의 상기 모델의 각 요소의 배치의 차를 가속도로 간주함으로써 산출되는 각 요소의 관성력의 합력의 병진력 성분이 0이 되고, 또한, 이 합력이 미리 정해진 점 주위에 발생하는 모멘트 성분이 미리 정해진 값으로 되도록 상기 가보정 순시 목표 운동을 결정하고,상기 목표 운동 보정 수단은, 상기 가보정 순시 목표 운동에서의 상기 소정 부위의 자세에 미리 정해진 가중값 w1을 승산한 것과 상기 순시 보용발생수단이 발생한 상기 순시 목표 운동에서의 상기 소정 부위의 자세에 미리 정해진 가중값 w2를 승산한 것과의 합을 상기 보정 후 순시 목표 운동에서의 이 소정 부위의 순시 목표 자세로서 결정함과 동시에, 상기 제 3 배치와 제 1 배치 사이에서의 상기 모델의 각 요소의 배치의 차를 가속도로 간주함으로써 산출되는 각 요소의 관성력의 합력이 미리 정해진 점 주위에 발생하는 모멘트 성분이 미리 정해진 값이 되도록 상기 보정 후 순시 목표 운동에서의 상기 소정 부위의 순시 목표 위치를 결정하는 것을 특징으로 하는 이동 로봇의 보용생성장치.
- 제 1 항 또는 제 2 항에 있어서, 상기 미리 정해진 가중값 wl 및 미리 정해진 가중값 w2는, 모두, 그 크기가 0부터 1까지의 범위내의 크기이며, 적어도 상기 미리 정해진 가중값 w1을, 상기 목표 보용에 따라 상기 이동 로봇의 동작을 행하게 하려고 하는 노면상태와 이 목표 보용에 따른 이동 로봇의 운동형태 중 적어도 어느 한쪽에 따라 가변적으로 결정하는 수단을 구비하는 것을 특징으로 하는 이동 로봇의 보용생성장치.
- 제 3 항에 있어서, 상기 미리 정해진 가중값 w1의 크기와 상기 미리 정해진 가중값 w2의 크기의 합은 1인 것을 특징으로 하는 이동 로봇의 보용생성장치.
- 제 1 항 또는 제 2 항에 있어서, 상기 미리 정해진 가중값 w1은 이것을 승산하는 상기 소정 부위의 자세에 대해 주파수특성을 갖는 가중값인 것을 특징으로 하는 이동 로봇의 보용생성장치.
- 제 1 항 또는 제 2 항에 있어서, 상기 제 2 배치와 제 1 배치 사이의 각 요소의 배치의 차에 관계되는 상기 모멘트 성분 중, 상기 모델의 질량을 갖는 각 요소의 상기 제 1 배치에서의 위치(A)와 상기 제 2 배치에서의 위치(B)의 차에 기인하는 성분은, 상기 미리 정해진 점과 상기 위치(A)를 연결하는 선분과, 상기 미리 정해진 점과 상기 위치(B)를 연결하는 선분이 이루는 각도로부터, 이 각도에 관한 실질적으로 단조로운 함수를 사용하여 산출되고,상기 제 3 배치와 제 1 배치 사이의 각 요소의 배치의 차에 관계되는 상기 모멘트 성분 중, 상기 모델의 질량을 갖는 각 요소의 상기 제 1 배치에서의 위치(A)와 상기 제 3 배치에서의 위치(C)의 차에 기인하는 성분은, 상기 미리 정해진 점과 상기 위치(A)를 연결하는 선분과, 상기 미리 정해진 점과 상기 위치(C)를 연결하는 선분이 이루는 각도로부터 상기 단조로운 함수를 사용하여 산출되는 것을 특징으로 하는 이동 로봇의 보용생성장치.
- 제 1 항 또는 제 2 항에 있어서, 상기 순시 보용발생수단이 발생하는 순시 목표 운동은 상기 이동 로봇의 운동과 상반력과의 관계를 나타내는 동역학 모델로서, 적어도 이 이동 로봇의 1개 이상의 특정 부위의 특정한 운동성분에 의해 발생하는 관성력이 0인 것으로 하여 구축된 동역학 모델을 사용하여 결정되어 있고, 상기 모델은 상기 특정 부위 중 적어도 1개의 부위에 대응하는 요소를 포함하는 것을 특징으로 하는 이동 로봇의 보용생성장치.
- 제 1 항 또는 제 2 항에 있어서, 상기 순시 보용발생수단이 발생하는 순시 목표 운동은, 상기 이동 로봇의 운동과 상반력과의 관계를 나타내도록 미리 정해진 동역학 모델상에서의 목표 상반력 또는 목표 ZMP를 만족하도록 결정되어 있고,상기 순시 목표 운동으로부터, 상기 제 1 기하학적 구속조건에 따라서 결정되는 상기 모델의 각 요소의 배치의 시간적 변화에 의해 발생하는 각 요소의 관성력의 합력과 균형을 이루는 상반력과, 상기 순시 목표 운동으로부터, 상기 제 2 기하학적 구속조건에 따라서 결정되는 상기 모델의 각 요소의 배치의 시간적 변화에 의해 발생하는 각 요소의 관성력의 합력과 균형을 이루는 상반력과의 차에 미리 정해진 정상 오프셋을 더한 것이, 상기 순시 목표 운동에 의해 상기 동역학 모델에서 발생하는 상반력의 오차에 일치하도록 상기 제 1 및 제 2 기하학적 구속조건이 설정되어 있는 것을 특징으로 하는 이동 로봇의 보용생성장치.
- 제 1 항 또는 제 2 항에 있어서, 상기 순시 보용발생수단이 발생하는 순시 목표 운동은 상기 이동 로봇의 운동과 상반력과의 관계를 나타내도록 미리 정해진 동역학 모델상에서의 목표 상반력 또는 목표 ZMP를 만족하도록 결정되어 있고,상기 순시 목표 운동으로부터, 상기 제 1 기하학적 구속조건에 따라서 결정되는 상기 모델의 각 요소의 배치의 질량중심과, 상기 순시 목표 운동으로부터, 상기 제 2 기하학적 구속조건에 따라서 결정되는 상기 모델의 각 요소의 배치의 질량중심과의 차에 이 요소의 총 질량을 승산한 것이, 상기 순시 목표 운동에서의 상기 동역학 모델의 질량중심의 오차에 이 동역학 모델의 총 질량을 승산한 것과 일치하도록 상기 제 1 및 제 2 기하학적 구속조건이 설정되어 있는 것을 특징으로 하는 이동 로봇의 보용생성장치.
- 제 1 항 또는 제 2 항에 있어서, 상기 이동 로봇은 상체로부터 연장하여 설치된 복수의 다리체 또는 복수의 팔체를 복수의 가동체로서 구비하는 로봇이며, 상기 제 1 기하학적 구속조건은 각 가동체의 선단부 근방의 미리 정해진 점과 이 가동체의 상기 상체와의 연결부 근방의 미리 정해진 점을 연결하는 선분에 평행한 직선 상에 상기 모델의 요소 중 어느 하나가 존재한다고 하는 조건을 포함하는 것을 특징으로 하는 이동 로봇의 보용생성장치.
- 제 1 항 또는 제 2 항에 있어서, 상기 이동 로봇은 상체로부터 연장하여 설치된 복수의 다리체 또는 복수의 팔체를 복수의 가동체로서 구비하는 로봇이며, 상기 제 1 기하학적 구속조건은 상기 모델상에서의 상기 상체와 각 가동체가 미리 정해진 일정 자세 상태로 유지된다고 하는 조건을 포함하는 것을 특징으로 하는 이동 로봇의 보용생성장치.
- 제 11 항에 있어서, 상기 미리 정해진 일정 자세는 상기 이동 로봇의 상체와 복수의 가동체를 연직방향을 향하게 한 자세인 것을 특징으로 하는 이동 로봇의 보용생성장치.
- 제 1 항 또는 제 2 항에 있어서, 상기 제 2 기하학적 구속조건은, 상기 이동 로봇의 임의의 순시 목표 운동으로부터, 그 조건에 따라서 결정되는 상기 모델의 각 요소의 배치가, 상기 순시 목표 운동에 따르는 상기 로봇에서의 이 요소에 대응하는 부위의 배치에 일치하도록 설정되는 것을 특징으로 하는 이동 로봇의 보용생성장치.
- 제 1 항 또는 제 2 항에 있어서, 상기 이동 로봇은, 상체로부터 연장하여 설치된 복수의 다리체 또는 복수의 팔체를 복수의 가동체로서 구비함과 동시에, 각 가동체의 상체와의 연결부와 이 가동체의 선단부 사이의 중간부에 굴곡가능한 관절을 갖고, 상기 순시 보용발생수단이 발생하는 순시 목표 운동은 상기 로봇의 운동과 상반력과의 관계를 나타내는 동역학 모델로서, 각 가동체의 굴신 운동에 기인하여 이 가동체의 중간부 혹은 그 근방에서 발생하는 관성력이 0인 것으로 하여 구축된 동역학 모델을 사용하여 결정되어 있고, 상기 모델은 적어도 상기 각 가동체의 중간부 혹은 그 근방부위에 대응시킨 질점을 요소로서 포함하는 모델인 것을 특징으로 하는 이동 로봇의 보용생성장치.
- 제 14 항에 있어서, 상기 제 1 기하학적 구속조건은 각 가동체의 선단부 근방의 미리 정해진 점과, 이 가동체의 상기 상체와의 연결부 근방의 미리 정해진 점을 연결하는 선분에, 상기 모델의 요소 중, 이 가동체의 중간부 혹은 그 근방부위에 대응시킨 질점이 존재한다고 하는 조건을 포함하고, 상기 제 2 기하학적 구속조건은 상기 이동 로봇의 임의의 순시 목표 운동으로부터, 그 조건에 따라서 결정되는 상기 모델의 각 요소의 배치가 상기 순시 목표 운동을 따르는 상기 로봇에서의 이 요소에 대응하는 부위의 배치에 일치하도록 설정되어 있는 것을 특징으로 하는 이동 로봇의 보용생성장치.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004031271 | 2004-02-06 | ||
JPJP-P-2004-00031271 | 2004-02-06 | ||
PCT/JP2005/001693 WO2005075156A1 (ja) | 2004-02-06 | 2005-02-04 | 移動ロボットの歩容生成装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20060126655A KR20060126655A (ko) | 2006-12-08 |
KR101131773B1 true KR101131773B1 (ko) | 2012-04-05 |
Family
ID=34836042
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020067011906A KR101131773B1 (ko) | 2004-02-06 | 2005-02-04 | 이동 로봇의 보용생성장치 |
Country Status (5)
Country | Link |
---|---|
US (1) | US7715944B2 (ko) |
EP (1) | EP1721711B1 (ko) |
JP (1) | JP4800037B2 (ko) |
KR (1) | KR101131773B1 (ko) |
WO (1) | WO2005075156A1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101655298B1 (ko) | 2015-09-14 | 2016-09-07 | 홍성훈 | 연통이 구비된 하향식 그릴장치 |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE602005027049D1 (de) * | 2004-01-13 | 2011-05-05 | Honda Motor Co Ltd | Gangerzeugungsvorrichtung für beweglichen roboter |
JP2008073830A (ja) * | 2006-09-25 | 2008-04-03 | Fanuc Ltd | ロボット制御装置 |
US8138707B2 (en) * | 2007-10-23 | 2012-03-20 | Honda Motor Co., Ltd. | Bipedal walking robot |
KR20110017500A (ko) * | 2009-08-14 | 2011-02-22 | 삼성전자주식회사 | 다리식 이동 로봇의 제어장치 및 그 제어방법 |
KR101667032B1 (ko) * | 2009-10-30 | 2016-10-17 | 삼성전자 주식회사 | 로봇의 경로 계획 장치 및 그 방법 |
KR101760883B1 (ko) | 2010-09-09 | 2017-08-04 | 삼성전자주식회사 | 로봇 및 그 제어방법 |
KR20120071599A (ko) * | 2010-12-23 | 2012-07-03 | 삼성전자주식회사 | 보행 로봇 및 그 제어 방법 |
JP5948932B2 (ja) * | 2012-02-16 | 2016-07-06 | セイコーエプソン株式会社 | ロボット制御装置、ロボット制御方法およびロボット制御プログラムならびにロボットシステム |
US9517561B2 (en) * | 2014-08-25 | 2016-12-13 | Google Inc. | Natural pitch and roll |
US10081098B1 (en) | 2014-08-25 | 2018-09-25 | Boston Dynamics, Inc. | Generalized coordinate surrogates for integrated estimation and control |
US9618937B1 (en) | 2014-08-25 | 2017-04-11 | Google Inc. | Slip detection using robotic limbs |
US9387588B1 (en) | 2014-08-25 | 2016-07-12 | Google Inc. | Handling gait disturbances with asynchronous timing |
US9623556B1 (en) * | 2014-09-03 | 2017-04-18 | X Development Llc | Robotic sole joint |
JP6228097B2 (ja) * | 2014-10-06 | 2017-11-08 | 本田技研工業株式会社 | 移動ロボット |
JP5927270B2 (ja) * | 2014-11-06 | 2016-06-01 | ファナック株式会社 | ロボットシミュレーション装置 |
US9446518B1 (en) * | 2014-11-11 | 2016-09-20 | Google Inc. | Leg collision avoidance in a robotic device |
US9440353B1 (en) | 2014-12-29 | 2016-09-13 | Google Inc. | Offline determination of robot behavior |
US9499218B1 (en) | 2014-12-30 | 2016-11-22 | Google Inc. | Mechanically-timed footsteps for a robotic device |
US9594377B1 (en) | 2015-05-12 | 2017-03-14 | Google Inc. | Auto-height swing adjustment |
US9586316B1 (en) | 2015-09-15 | 2017-03-07 | Google Inc. | Determination of robotic step path |
US9778132B1 (en) * | 2015-12-16 | 2017-10-03 | X Development Llc | Methods and systems for force sensor calibration |
US9789919B1 (en) | 2016-03-22 | 2017-10-17 | Google Inc. | Mitigating sensor noise in legged robots |
US9987745B1 (en) | 2016-04-01 | 2018-06-05 | Boston Dynamics, Inc. | Execution of robotic tasks |
US20180088234A1 (en) * | 2016-09-27 | 2018-03-29 | Carnegie Mellon University | Robust Localization and Localizability Prediction Using a Rotating Laser Scanner |
CN110053039B (zh) * | 2018-01-17 | 2021-10-29 | 深圳市优必选科技有限公司 | 一种机器人行走中重力补偿的方法、装置及机器人 |
US10946518B2 (en) * | 2018-07-24 | 2021-03-16 | Invia Robotics, Inc. | Spatiotemporal controller for controlling robot operation |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0994785A (ja) * | 1995-09-29 | 1997-04-08 | Honda Motor Co Ltd | 脚式歩行ロボットの歩容生成方法 |
WO2002087832A1 (fr) | 2001-04-27 | 2002-11-07 | Honda Giken Kogyo Kabushiki Kaisha | Dispositif de generation de mouvement de robot mobile sur jambes |
WO2003057427A1 (fr) | 2001-12-28 | 2003-07-17 | Honda Giken Kogyo Kabushiki Kaisha | Dispositif de commande pour robot mobile sur jambes |
EP1475198A1 (en) * | 2002-01-18 | 2004-11-10 | Honda Giken Kogyo Kabushiki Kaisha | Controller of legged mobile robot |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3167404B2 (ja) * | 1992-02-26 | 2001-05-21 | 本田技研工業株式会社 | ロボットの関節駆動制御装置 |
JP3148827B2 (ja) | 1992-04-30 | 2001-03-26 | 本田技研工業株式会社 | 脚式移動ロボットの歩行制御装置 |
JP3273443B2 (ja) * | 1992-05-22 | 2002-04-08 | 本田技研工業株式会社 | ロボットのリンクなどの軌道生成方法及び装置 |
JP3233450B2 (ja) | 1992-05-22 | 2001-11-26 | 本田技研工業株式会社 | 指定時刻到達関数発生器 |
US5872893A (en) * | 1996-07-25 | 1999-02-16 | Honda Giken Kogyo Kabushiki Kaisha | Gait generation system of legged mobile robot |
JP3663034B2 (ja) | 1996-07-25 | 2005-06-22 | 本田技研工業株式会社 | 脚式移動ロボットの歩容生成装置 |
JP3629133B2 (ja) | 1997-01-31 | 2005-03-16 | 本田技研工業株式会社 | 脚式移動ロボットの制御装置 |
JP3443077B2 (ja) * | 1999-09-20 | 2003-09-02 | ソニー株式会社 | ロボットの運動パターン生成装置及び運動パターン生成方法、並びにロボット |
JP3677623B2 (ja) | 2000-09-11 | 2005-08-03 | 独立行政法人産業技術総合研究所 | 脚式ロボットのリアルタイム最適制御方法 |
KR100637057B1 (ko) * | 2000-11-17 | 2006-10-23 | 혼다 기켄 고교 가부시키가이샤 | 레그식 이동 로봇의 보용 생성장치 |
WO2003057426A1 (fr) * | 2001-12-28 | 2003-07-17 | Honda Giken Kogyo Kabushiki Kaisha | Dispositif de production de demarche pour robot mobile a jambes |
DE602005027049D1 (de) | 2004-01-13 | 2011-05-05 | Honda Motor Co Ltd | Gangerzeugungsvorrichtung für beweglichen roboter |
-
2005
- 2005-02-04 KR KR1020067011906A patent/KR101131773B1/ko active IP Right Grant
- 2005-02-04 EP EP05709758A patent/EP1721711B1/en not_active Expired - Fee Related
- 2005-02-04 JP JP2005517747A patent/JP4800037B2/ja not_active Expired - Fee Related
- 2005-02-04 US US10/597,620 patent/US7715944B2/en not_active Expired - Fee Related
- 2005-02-04 WO PCT/JP2005/001693 patent/WO2005075156A1/ja active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0994785A (ja) * | 1995-09-29 | 1997-04-08 | Honda Motor Co Ltd | 脚式歩行ロボットの歩容生成方法 |
WO2002087832A1 (fr) | 2001-04-27 | 2002-11-07 | Honda Giken Kogyo Kabushiki Kaisha | Dispositif de generation de mouvement de robot mobile sur jambes |
WO2003057427A1 (fr) | 2001-12-28 | 2003-07-17 | Honda Giken Kogyo Kabushiki Kaisha | Dispositif de commande pour robot mobile sur jambes |
EP1475198A1 (en) * | 2002-01-18 | 2004-11-10 | Honda Giken Kogyo Kabushiki Kaisha | Controller of legged mobile robot |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101655298B1 (ko) | 2015-09-14 | 2016-09-07 | 홍성훈 | 연통이 구비된 하향식 그릴장치 |
Also Published As
Publication number | Publication date |
---|---|
JP4800037B2 (ja) | 2011-10-26 |
US7715944B2 (en) | 2010-05-11 |
KR20060126655A (ko) | 2006-12-08 |
US20090171503A1 (en) | 2009-07-02 |
EP1721711B1 (en) | 2011-12-07 |
EP1721711A4 (en) | 2009-12-02 |
EP1721711A1 (en) | 2006-11-15 |
WO2005075156A1 (ja) | 2005-08-18 |
JPWO2005075156A1 (ja) | 2007-10-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101131773B1 (ko) | 이동 로봇의 보용생성장치 | |
KR101121020B1 (ko) | 이동 로봇의 보용생성 장치 | |
KR101160161B1 (ko) | 이동 로봇의 보용생성장치 | |
KR101083414B1 (ko) | 다리식 이동 로봇의 제어장치 | |
US9120512B2 (en) | Control device and gait generating device for bipedal mobile robot | |
KR101131774B1 (ko) | 이동로봇의 보용생성장치 | |
KR20070083835A (ko) | 다리식 이동 로봇 및 그 제어 프로그램 | |
JP5404543B2 (ja) | 脚式移動ロボットの制御装置 | |
JP5232120B2 (ja) | 移動体の制御装置 | |
JP5404544B2 (ja) | 脚式移動ロボットの制御装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20150224 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20160219 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20170221 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20180302 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20190306 Year of fee payment: 8 |