KR100557440B1 - walking robot and control method thereof - Google Patents

walking robot and control method thereof Download PDF

Info

Publication number
KR100557440B1
KR100557440B1 KR1020040034805A KR20040034805A KR100557440B1 KR 100557440 B1 KR100557440 B1 KR 100557440B1 KR 1020040034805 A KR1020040034805 A KR 1020040034805A KR 20040034805 A KR20040034805 A KR 20040034805A KR 100557440 B1 KR100557440 B1 KR 100557440B1
Authority
KR
South Korea
Prior art keywords
reference point
walking robot
cross product
stable
size
Prior art date
Application number
KR1020040034805A
Other languages
Korean (ko)
Other versions
KR20050109790A (en
Inventor
민승기
박재호
노창현
이용권
오연택
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020040034805A priority Critical patent/KR100557440B1/en
Priority to JP2004239943A priority patent/JP4157081B2/en
Publication of KR20050109790A publication Critical patent/KR20050109790A/en
Application granted granted Critical
Publication of KR100557440B1 publication Critical patent/KR100557440B1/en

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62DMOTOR VEHICLES; TRAILERS
    • B62D57/00Vehicles characterised by having other propulsion or other ground- engaging means than wheels or endless track, alone or in addition to wheels or endless track
    • B62D57/02Vehicles characterised by having other propulsion or other ground- engaging means than wheels or endless track, alone or in addition to wheels or endless track with ground-engaging propulsion means, e.g. walking members
    • B62D57/032Vehicles characterised by having other propulsion or other ground- engaging means than wheels or endless track, alone or in addition to wheels or endless track with ground-engaging propulsion means, e.g. walking members with alternately or sequentially lifted supporting base and legs; with alternately or sequentially lifted feet or skid
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63HTOYS, e.g. TOPS, DOLLS, HOOPS OR BUILDING BLOCKS
    • A63H11/00Self-movable toy figures
    • A63H11/18Figure toys which perform a realistic walking motion
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S901/00Robots
    • Y10S901/01Mobile robot

Abstract

본 발명은 보행로봇 및 그 제어방법에 관한 것이다. 본 발명의 제어방법은 복수의 발을 갖는 보행로봇의 제어방법에 있어서, 지면과 맞닿은 발들 사이의 영역을 포함하는 안정영역 중 위험경계선 상의 제1 기준점(A)과 제2 기준점(B)을 선택하고 상기 보행로봇의 ZMP를 산출하는 단계와, 상기 제1 기준점(A)으로부터 상기 제2 기준점(B)에 이르는 제1 벡터(

Figure 112004020660136-pat00001
)와 상기 제1 기준점(A)으로부터 ZMP(Z)에 이르는 제2 벡터(
Figure 112004020660136-pat00002
)의 외적의 크기(K)를 산출하는 단계와, 산출된 외적의 크기에 따라 상기 구동로봇의 움직임을 제어하는 단계를 포함하는 것을 특징으로 한다. 이에 의해 보행로봇의 안정도를 간단하게 판별할 수 있다.The present invention relates to a walking robot and a control method thereof. In the control method of the walking robot having a plurality of feet, the control method of the present invention selects a first reference point (A) and a second reference point (B) on a dangerous boundary line among the stable areas including the area between the feet in contact with the ground. Calculating a ZMP of the walking robot, and a first vector from the first reference point A to the second reference point B
Figure 112004020660136-pat00001
) And a second vector from the first reference point A to ZMP (Z)
Figure 112004020660136-pat00002
Calculating a magnitude (K) of the cross product and controlling the movement of the driving robot according to the calculated size of the cross product. As a result, the stability of the walking robot can be easily determined.

안정도 판별Stability Determination

Description

보행로봇 및 그 제어방법{walking robot and control method thereof}Walking robot and control method

도1은 보행 중 양발이 지면에 맞닿은 보행로봇의 부분적인 사시도,1 is a partial perspective view of a walking robot in which both feet are in contact with the ground during walking;

도2는 본 발명의 실시예에 따른 보행로봇의 개략적인 블록 구성도,2 is a schematic block diagram of a walking robot according to an embodiment of the present invention;

도3(a) 및 도3(b)는 보행로봇이 형성하는 안정영역을 표시한 것,3 (a) and 3 (b) show a stable area formed by a walking robot,

도4는 본 발명의 실시예에 따른 안정도 판별을 위한 순서도,4 is a flowchart for determining stability according to an embodiment of the present invention;

도5(a) 내지 도5(c)는 세그먼트와 ZMP간의 상대적인 위치에 따른 외적의 크기(K)의 부호를 나타낸 것이다. 5 (a) to 5 (c) show the sign of the magnitude K of the cross product according to the relative position between the segment and ZMP.

본 발명은 보행로봇 및 그 제어방법에 관한 것으로서, 보다 상세하게는 간단한 알고리즘으로 안정도를 판별하는 보행로봇 및 그 제어방법에 관한 것이다.The present invention relates to a walking robot and a control method thereof, and more particularly, to a walking robot for determining stability by a simple algorithm and a control method thereof.

보행로봇은 바퀴로 이동하는 로봇에 비해 안정성이 떨어지고, 안정성이 지속적으로 유지되도록 제어해야 하는 기술적 어려움이 있다.Walking robots are inferior in stability to robots moving by wheels, and there are technical difficulties in controlling stability so that they are continuously maintained.

4개 이상의 다리를 갖는 보행로봇의 경우 무게중심을 이용하여 안정도를 고려하는 것이 가능하다. 그러나 2족 보행 로봇의 경우, 동적상태에서의 안정도를 고려하는 것이 매우 중요하다. 이를 위해 ZMP(Zero Moment Point)라는 개념이 이용되 고 있는데, 이는 작용력의 모든 모멘트의 합이 영이 되는 지면상의 점을 나타낸다.In the case of a walking robot having four or more legs, it is possible to consider stability using the center of gravity. However, in the case of biped walking robot, it is very important to consider the stability in the dynamic state. For this purpose, the concept of Zero Moment Point (ZMP) is used, which represents a point on the ground where the sum of all moments of the force is zero.

도1은 보행 중 양발이 지면에 맞닿은 보행로봇의 부분적인 사시도이다.1 is a partial perspective view of a walking robot in which both feet abut the ground during walking.

도1에 도시된 바와 같이, 지면에 맞닿은 2개의 발의 영역과 두 발사이의 영역이 볼록 다각형(convex hull)을 형성하고 있다. 이 때 형성되는 빗금으로 처리된 볼록 다각형(convex hull)이 안정영역이다. As shown in Fig. 1, the areas of the two feet and the two launchers, which contact the ground, form a convex hull. The convex hull formed by the hatching formed at this time is a stable region.

안정도는 ZMP와 안정영역간의 상대적인 위치로부터 결정된다. 즉, ZMP가 안정영역 안에 있을 때 로봇은 안정상태에 있는 것으로 판별되고, 안정영역 밖에 있을 때 로봇은 불안정상태에 있는 것으로 판별된다. Stability is determined from the relative position between ZMP and the stable region. That is, the robot is determined to be in a stable state when the ZMP is in the stable region, and the robot is determined to be in an unstable state when it is outside the stable region.

그런데 종래 보행로봇은 복잡한 운동방정식을 풀어 로봇자세 및 보행상태의 안정도를 판별하였다. 제어용 컨트롤러는 운동방정식을 푸는 과정에서 많은 연산을 수행하였기 때문에 과부하가 걸릴 수 있었다. 이는 실시간 제어가 매우 중요한 보행로봇에 있어서, 보행로봇의 실시간 제어를 어렵게 만드는 원인이 되었다.However, the conventional walking robot solved the complex motion equation to determine the stability of the robot posture and walking state. The controller for controller could be overloaded because it performed many operations in solving the equation of motion. This causes the walking robot to make it difficult to control the walking robot in real time.

따라서 본 발명의 목적은 간단한 연산을 통해 안정도를 판별하는 보행로봇 및 그 제어방법을 제공하는 것이다.Accordingly, an object of the present invention is to provide a walking robot and its control method for determining stability through simple calculations.

상기의 목적은, 본 발명에 따라, 복수의 발을 갖는 보행로봇의 제어방법에 있어서, 지면과 맞닿은 발들 사이의 영역을 포함하는 안정영역 중 위험경계선 상의 제1 기준점(A)과 제2 기준점(B)을 선택하고 상기 보행로봇의 ZMP를 산출하는 단계와, 상기 제1 기준점(A)으로부터 상기 제2 기준점(B)에 이르는 제1 벡터(

Figure 112004020660136-pat00004
)와 상기 제1 기준점(A)으로부터 ZMP(Z)에 이르는 제2 벡터(
Figure 112004020660136-pat00005
)의 외적의 크기(K)를 산출하는 단계와, 산출된 외적의 크기에 따라 상기 보행로봇의 움직임을 제어하는 단계를 포함하는 것을 특징으로 하는 보행로봇의 제어방법에 의해 달성될 수 있다.The above object is, according to the present invention, in the method of controlling a walking robot having a plurality of feet, the first reference point (A) and the second reference point on the dangerous boundary line of the stable area including the area between the feet in contact with the ground ( Selecting B) and calculating a ZMP of the walking robot, and a first vector (from the first reference point A to the second reference point B)
Figure 112004020660136-pat00004
) And a second vector from the first reference point A to ZMP (Z)
Figure 112004020660136-pat00005
Calculating the size (K) of the cross product and controlling the movement of the walking robot according to the calculated size of the cross product.

여기서, 상기 외적의 크기(K)는 다음과 같은 수식에 의해 산출될 수 있다.Here, the size K of the cross product may be calculated by the following equation.

Figure 112004020660136-pat00006
Figure 112004020660136-pat00006

(여기서, 제1 기준점(A)의 좌표는 (xa, ya), 제2 기준점(B)의 좌표는 (xb, yb), ZMP의 좌표는 (xz, yz)이고, θ는

Figure 112004020660136-pat00007
로부터 반시계방향으로
Figure 112004020660136-pat00008
에 이르는 각도이다.)Here, the coordinate of the first reference point A is (x a , y a ), the coordinate of the second reference point B is (x b , y b ), and the coordinate of ZMP is (x z , y z ), θ is
Figure 112004020660136-pat00007
Counterclockwise from
Figure 112004020660136-pat00008
Is the angle to.)

그리고 다음과 같은 수식에 의한 안정도 마진을 검출하는 단계를 더 포함하고,And further comprising the step of detecting the stability margin by the following formula,

Figure 112004020660136-pat00009
Figure 112004020660136-pat00009

(여기서, L은 제1 기준점과 제2 기준점의 이격거리이다. 즉, L=│

Figure 112004020660136-pat00010
│)Where L is the separation between the first and second reference points, ie L = │
Figure 112004020660136-pat00010
│)

상기 산출된 외적의 크기에 따라 상기 보행로봇의 움직임을 제어하는 단계는 상기 안정도 마진에 기초하여 제어하는 것이 안정성을 확보하는데 효과적이다. 이를 위해 산출된 외적의 크기에 따라 상기 보행로봇의 움직임을 제어하는 단계는, 상기 안정영역의 외곽선 각각에 대한 상기 안정도 마진의 크기가 허용범위 이내가 되도록 상기 보행로봇의 움직임을 제어할 수도 있으며, 상기 제1 기준점과 상기 제2 기준점은 상기 안정영역의 가장자리로부터 일정 이격거리를 갖는 내부영역에서 선택되도록 할 수도 있다.The controlling of the movement of the walking robot according to the calculated size of the cross product is effective to ensure stability by controlling based on the stability margin. In the controlling of the movement of the walking robot according to the calculated size of the cross product, the movement of the walking robot may be controlled so that the size of the stability margin with respect to each outline of the stable area is within an allowable range. The first reference point and the second reference point may be selected in an inner region having a predetermined distance from an edge of the stable region.

그리고 상기 외적의 크기가 갖는 부호에 따라 상기 보행로봇이 안정한지 여부를 판별하는 단계를 더 포함하고, 산출된 외적의 크기에 따라 상기 보행로봇의 움직임을 제어하는 단계는 상기 보행로봇의 안정여부에 기초하여 제어하여 안정성을 유지할 수 있다. 그리고 상기 안정영역은 지면에 맞닿은 발이 하나인 경우 발바닥과 맞닿은 지면을 포함하는 영역으로 제한된다.And determining whether the walking robot is stable according to the sign of the size of the cross product, and controlling the movement of the walking robot according to the calculated size of the cross product includes: It can control based on stability. And the stable area is limited to the area including the ground in contact with the sole when there is only one foot in contact with the ground.

또한 상기의 목적은, 본 발명의 다른 분야에 따라, 보행로봇에 있어서, 복수의 발과; 동작을 구동하는 구동부와; 지면과 맞닿은 발 사이의 영역을 포함하는 안정영역 중 제1 기준점(A)으로부터 상기 안정영역 중 제2 기준점(B)에 이르는 제1 벡터(

Figure 112004020660136-pat00011
)와 상기 제1 기준점(A)으로부터 ZMP(Z)에 이르는 제2 벡터(
Figure 112004020660136-pat00012
)의 외적의 크기(K)를 산출하고 산출된 외적의 크기에 따라 상기 구동부를 제어하는 제어부를 포함하는 것을 특징으로 하는 보행로봇에 의해 달성될 수 있다.In addition, the above object, according to another field of the present invention, in the walking robot, a plurality of feet; A driving unit for driving an operation; The first vector (1) from the first reference point (A) of the stable region including the area between the foot in contact with the ground and the second reference point (B) of the stable region (
Figure 112004020660136-pat00011
) And a second vector from the first reference point A to ZMP (Z)
Figure 112004020660136-pat00012
It can be achieved by a walking robot, characterized in that it comprises a control unit for calculating the size (K) of the cross product and controls the drive unit according to the calculated size of the cross product.

여기서, 상기 외적의 크기(K)는 다음과 같은 수식에 의해 산출될 수 있다.Here, the size K of the cross product may be calculated by the following equation.

Figure 112004020660136-pat00013
Figure 112004020660136-pat00013

(여기서, 제1 기준점(A)의 좌표는 (xa, ya), 제2 기준점(B)의 좌표는 (xb, yb), ZMP의 좌표는 (xz, yz)이고, θ는

Figure 112004020660136-pat00014
로부터 반시계방향으로
Figure 112004020660136-pat00015
에 이르는 각도이다.)Here, the coordinate of the first reference point A is (x a , y a ), the coordinate of the second reference point B is (x b , y b ), and the coordinate of ZMP is (x z , y z ), θ is
Figure 112004020660136-pat00014
Counterclockwise from
Figure 112004020660136-pat00015
Is the angle to.)

상기 제어부는 상기 외적의 크기가 갖는 부호에 따라 상기 보행로봇이 안정한지 여부를 판별하고, 판별결과에 기초하여 상기 구동부를 제어하는 것이 안정성이 유지되도록 제어하는데 효과적이다.The controller is effective to determine whether the walking robot is stable according to the sign of the size of the cross product and to control the driving unit based on the determination result so that the stability is maintained.

그리고 상기 제어부는 다음과 같은 수식에 의한 안정도 마진을 검출하고, 상기 안정도 마진에 기초하여 상기 구동부를 제어하는 것이 안정성을 확보하는데 바람직하다.In addition, the controller detects a stability margin according to the following equation, and controlling the drive unit based on the stability margin is preferable to ensure stability.

Figure 112004020660136-pat00016
Figure 112004020660136-pat00016

(여기서, L은 제1 기준점과 제2 기준점의 이격거리이다. 즉, L=|

Figure 112004020660136-pat00017
|)Where L is the separation between the first and second reference points, ie L = |
Figure 112004020660136-pat00017
|)

그리고 상기 안정영역은 지면에 맞닿은 발이 하나인 경우 발바닥과 맞닿은 지면을 포함하는 영역인 것으로 한다.The stable area is an area including the ground in contact with the sole when the foot is in contact with the ground.

이하, 첨부한 도면을 참조하여 본 발명의 실시예를 상세히 설명한다.Hereinafter, with reference to the accompanying drawings will be described an embodiment of the present invention;

도2는 본 발명의 실시예에 따른 보행로봇의 개략적인 구성블록도이다. Figure 2 is a schematic block diagram of a walking robot according to an embodiment of the present invention.

도2에 도시된 바와 같이, 보행로봇은 복수의 발(10a, 10b), 구동부(20) 및 제어부(30)를 갖는다. 구동부(20)는 발(10a,10b)을 포함한 다리, 몸통, 팔 등에 형성된 관절부의 운동을 구동하기 위한 모터 등으로 구성된다. 제어부(30)는 안정도를 판별하고 이에 따라 구동부(20)를 제어하는 컨트롤러 등을 포함한다.As shown in FIG. 2, the walking robot has a plurality of feet 10a and 10b, a driving unit 20, and a control unit 30. The driving unit 20 includes a motor for driving the movement of the joints formed on the legs, the trunk, the arms, and the like including the feet 10a and 10b. The controller 30 includes a controller for determining stability and controlling the driver 20 accordingly.

도3(a) 및 도3(b)는 보행로봇이 형성하는 안정영역을 표시한 것이다.3 (a) and 3 (b) show a stable area formed by a walking robot.

각 안정영역은 볼록다각형(convex hull)으로서 6개의 꼭지점 및 꼭지점을 잇 는 영역경계선을 갖고 있다.Each stable region is a convex hull with six vertices and region boundary lines connecting the vertices.

도3(a)를 참조하면, ZMP가 내부에 있는 경우 임의의 꼭지점으로부터 시계방향에 위치하는 인접 꼭지점을 기준으로 하여 ZMP는 시계방향에 위치한다.Referring to Fig. 3 (a), when the ZMP is inside, the ZMP is located in the clockwise direction with respect to the adjacent vertex located in the clockwise direction from any vertex.

도3(b)를 참조하면, ZMP가 안정영역의 외부에 위치하는 경우, 임의의 꼭지점으로부터 시계방향에 위치하는 인접 꼭지점을 기준으로 ZMP는 반시계방향에 위치한다.Referring to FIG. 3 (b), when the ZMP is located outside the stable region, the ZMP is located in the counterclockwise direction with respect to the adjacent vertex located clockwise from any vertex.

이와 같이 ZMP의 위치에 따라, 꼭지점을 잇는 일정방향의 세그먼트와 ZMP를 잇는 선의 연결방향이 다르다. 이러한 차이점에 기초하여 제어부(30)는 간단한 알고리즘으로 안정도를 판별한다. In this way, the connection direction of the segment connecting the vertex and the line connecting the ZMP is different according to the position of the ZMP. Based on this difference, the controller 30 determines the stability by a simple algorithm.

도4는 본 발명의 실시예에 따른 안정도 판별을 위한 순서도이다.4 is a flowchart for determining stability according to an embodiment of the present invention.

먼저, 제어부(30)는 로봇의 움직임에 따라(S1), 안정영역과 ZMP를 산출한다(S2). 안정영역은 로봇을 지지하는 두 발 사이에서 생성되는 것으로, 제어부(30)는 direct kinematics 등을 이용하여 볼록다각형의 각 꼭지점 위치를 실시간으로 산출한다. 안정영역의 영역경계선 이외에도 안정도 판별의 기준이 되는 임의의 기준선으로 위험영역선을 선택할 수 있다. 위험영역선으로서 영역경계선을 채택하고, 영역경계선의 세그먼트 상의 임의의 제1 기준점 및 제2 기준점을 선택한다. First, the controller 30 calculates the stable region and the ZMP according to the movement of the robot (S1). The stable area is generated between the two feet supporting the robot, and the controller 30 calculates the positions of the vertices of the convex polygon in real time using direct kinematics. In addition to the boundary line of the stable area, the dangerous area line may be selected as an arbitrary reference line that is used as a standard for determining stability. An area boundary line is adopted as the danger area line, and an arbitrary first reference point and a second reference point on a segment of the area boundary line are selected.

다음, 제1 기준점(A)으로부터 상기 안정영역 중 제2 기준점(B)에 이르는 제1 벡터(

Figure 112004020660136-pat00018
)와 상기 제1 기준점(A)으로부터 ZMP(Z)에 이르는 제2 벡터(
Figure 112004020660136-pat00019
)의 외적의 크기(K)를 산출한다(S3).Next, the first vector from the first reference point (A) to the second reference point (B) in the stable region (
Figure 112004020660136-pat00018
) And a second vector from the first reference point A to ZMP (Z)
Figure 112004020660136-pat00019
The size K of the cross product of () is calculated (S3).

Figure 112004020660136-pat00020
식(1)
Figure 112004020660136-pat00020
Formula (1)

여기서, |

Figure 112004020660136-pat00021
| 및 |
Figure 112004020660136-pat00022
|는 각각
Figure 112004020660136-pat00023
Figure 112004020660136-pat00024
의 크기이며, θ는
Figure 112004020660136-pat00025
로부터 반시계방향으로
Figure 112004020660136-pat00026
에 이르는 각도이다.Where |
Figure 112004020660136-pat00021
| And |
Figure 112004020660136-pat00022
| Each
Figure 112004020660136-pat00023
And
Figure 112004020660136-pat00024
Is the size of θ
Figure 112004020660136-pat00025
Counterclockwise from
Figure 112004020660136-pat00026
Is the angle to.

제어부(30)는 외적의 크기(K)에 따라 보행로봇의 안정도를 판단하고 이에 따라 구동부(20)를 제어하게 된다. The controller 30 determines the stability of the walking robot according to the size K of the cross product and controls the driving unit 20 accordingly.

외적의 크기(K) 중 그 ±부호는 보행로봇의 안정여부를 판단하는 기준이 된다(S4). 식(1)을 참조하면, 외적의 크기(K)는 θ에 따라 부호가 결정되는 것을 알 수 있다. 즉, 사인함수의 특성상 θ<180°인 경우에는 양수를, θ>180°인경우에는 음수를 갖게 된다.The ± sign of the size (K) of the cross product serves as a criterion for determining whether the walking robot is stable (S4). Referring to Equation (1), it can be seen that the sign of the magnitude K of the cross product is determined according to θ. That is, the characteristic of the sine function is positive when θ <180 ° and negative when θ> 180 °.

도5(a) 내지 도5(c)는 세그먼트와 ZMP간의 상대적인 위치에 따른 K의 부호를 나타낸 것이다. 5 (a) to 5 (c) show the sign of K according to the relative position between the segment and ZMP.

도5(a)를 참조하면, 점 P0를 제1 기준점(A)으로 하고, 점 P1을 제2 기준점(B)으로 하였을 때, 제1 벡터(

Figure 112004020660136-pat00027
)로부터 반시계방향으로 제2 벡터(
Figure 112004020660136-pat00028
)에 이르는 각이 180°상이므로 외적의 크기(K)는 음수가 된다. 이 때, 외적의 크기(K)의 부호에 따라 ZMP는 안정영역 내부에 위치하는 것으로 판정되어, 로봇이 안정상태에 있는 것으로 최종 판단된다.Referring to FIG. 5A, when the point P0 is the first reference point A and the point P1 is the second reference point B, the first vector (
Figure 112004020660136-pat00027
Counterclockwise from the second vector (
Figure 112004020660136-pat00028
Since the angle leading to) is 180 °, the magnitude (K) of the cross product is negative. At this time, according to the sign of the magnitude K of the cross product, it is determined that the ZMP is located inside the stable area, and finally the robot is determined to be in a stable state.

반면, 도5(b)에 나타낸 바와 같이, 제1 벡터(

Figure 112004020660136-pat00029
)로부터 반시계방향으로 제2 벡터(
Figure 112004020660136-pat00030
)에 이르는 각이 180°미만인 경우 외적의 크기(K)는 양수가 된다. 이 때, ZMP는 안정영역의 외부에 위치하는 것으로 판정되고, 로봇이 불안정한 상태에 있는 것으로 최종 판별된다.On the other hand, as shown in Fig. 5 (b), the first vector (
Figure 112004020660136-pat00029
Counterclockwise from the second vector (
Figure 112004020660136-pat00030
If the angle leading to) is less than 180 °, the cross product size (K) becomes positive. At this time, it is determined that ZMP is located outside the stable area, and finally it is determined that the robot is in an unstable state.

한편, 도5(c)에 나타낸 바와 같이 제1 벡터와 제2벡터가 평행한 경우 K는 0이 된다. 제어부(30)는 이에 따라 로봇이 안정 및 불안정상태의 임계점에 있는 것으로 판단하게 된다.On the other hand, as shown in Fig. 5C, when the first vector and the second vector are parallel, K becomes zero. The control unit 30 accordingly determines that the robot is at the critical point of the stable and unstable state.

만약 직교좌표계가 설정된다면, 제1 기준점(A), 제2 기준점(B) 및 ZMP(Z)의 좌표를 이용하여 다음과 같은 수식(2)에 의해 외적의 크기(K)를 구할 수 있다.If the Cartesian coordinate system is set, the magnitude (K) of the cross product can be obtained by the following equation (2) using the coordinates of the first reference point (A), the second reference point (B), and ZMP (Z).

Figure 112004020660136-pat00031
식(2)
Figure 112004020660136-pat00031
Formula (2)

여기서, 제1 기준점(A)의 좌표는 (xa, ya), 제2 기준점(B)의 좌표는 (xb, yb), ZMP의 좌표는 (xz, yz)이고, θ는

Figure 112004020660136-pat00032
로부터 반시계방향으로
Figure 112004020660136-pat00033
에 이르는 각도이다. 좌표계는 로봇의 발목을 원점으로 하여 설정될 수 있지만, 그 밖에 어떠한 좌표계를 기준으로 한다고 하더라도 식(2)가 적용될 수 있음을 알 수 있을 것이다.Here, the coordinate of the first reference point A is (x a , y a ), the coordinate of the second reference point B is (x b , y b ), and the coordinate of ZMP is (x z , y z ), and θ Is
Figure 112004020660136-pat00032
Counterclockwise from
Figure 112004020660136-pat00033
Is the angle to. The coordinate system may be set based on the ankle of the robot as an origin, but it will be appreciated that Equation (2) may be applied to any other coordinate system.

이와 같이 제어부(30)는 세그먼트를 나타내는 제1 벡터(

Figure 112004020660136-pat00034
)와 ZMP를 잇는 제2 벡터(
Figure 112004020660136-pat00035
)간의 외적의 결과의 부호에 따라 안정도를 판별할 수 있으며, 이 결과에 따라 구동부(20)를 제어한다.In this way, the control unit 30 may include a first vector representing a segment (
Figure 112004020660136-pat00034
) And the second vector (ZMP)
Figure 112004020660136-pat00035
The stability can be determined according to the sign of the result of the cross product between the two and the control unit 20 is controlled according to this result.

즉, 로봇이 불안정한 상태로 판별되는 경우, 제어부(30)는 구동부(20)를 제 어하여 로봇의 자세를 제어하게 된다(S5). That is, when the robot is determined to be in an unstable state, the controller 30 controls the driver 20 to control the attitude of the robot (S5).

반면, 로봇이 안정상태에 있는 것으로 판별되는 경우, ZMP와 세그먼트 사이의 거리를 통해 안정도를 측정한다(S6). 즉, 외적의 절대적인 크기는 제1 벡터와 제2 벡터가 형성하는 평행사변형의 넓이를 나타내기 때문에, 제1 기준점과 제2 기준점의 이격거리로 K를 나누어 주면 ZMP로부터 제1 벡터까지의 거리(이하 "안정도 마진"이라 한다.)를 산출할 수 있다(S6). On the other hand, if it is determined that the robot is in a stable state, the stability is measured through the distance between the ZMP and the segment (S6). That is, since the absolute magnitude of the cross product represents the area of the parallelogram formed by the first vector and the second vector, if K is divided by the separation distance between the first and second reference points, the distance from ZMP to the first vector ( Hereinafter referred to as "stability margin" can be calculated (S6).

Figure 112004020660136-pat00036
식(3)
Figure 112004020660136-pat00036
Formula (3)

(여기서, L은 제1 기준점과 제2 기준점의 이격거리이다. 즉, L=|

Figure 112004020660136-pat00037
|)Where L is the separation between the first and second reference points, ie L = |
Figure 112004020660136-pat00037
|)

제어부(30)는 안정도 마진에 따라 구동부(20)를 제어하여 로봇이 불안정한 상태가 되는 것을 사전에 방지할 수 있다(S7). The controller 30 may control the driving unit 20 according to the stability margin in advance to prevent the robot from becoming in an unstable state (S7).

안정도를 확보하기 위해서는, 안정도 마진이 일정크기 이상의 허용범위를 갖도록 하거나, 도5(a) 내지 도5(c)에 도시된 실선과 같이 안정도 판별의 기준이 되는 세그먼트를 영역내부에서 선택하는 것이 가능하다. 이에 따라 안정영역을 임의로 축소시켜 로봇의 안정도에 대한 민감도를 증가시킬 수 있게 된다. 제어부(30)는 안정도 마진이 각 세그먼트를 기준으로 일정한 값을 갖도록 제어하여 보행로봇의 안정성을 최대로 유지할 수 있다.In order to secure the stability, it is possible to make the stability margin have a allowable range of a certain size or more, or to select a segment, which is a reference for stability determination, within the region as shown in the solid lines shown in FIGS. 5 (a) to 5 (c). Do. Accordingly, the stability area can be arbitrarily reduced to increase the sensitivity to the stability of the robot. The controller 30 may maintain the stability of the walking robot to the maximum by controlling the stability margin to have a constant value based on each segment.

전술한 실시예는 2족 보행로봇의 경우, 2개의 발이 모두 지면에 닿은 경우에 형성되는 안정영역을 예로 들었지만, 다른 경우에도 안정영역을 적절히 설정하여 안정도를 판별할 수 있음은 물론이다.In the above-described embodiment, in the case of the biped walking robot, the stable area formed when both feet touch the ground is exemplified. However, in other cases, the stability area may be appropriately determined to determine the stability.

예컨대, 2족 보행로봇에서 하나의 발이 지면에서 떨어진 경우 안정영역은 지면에 맞닿은 하나의 발이 형성하는 영역만을 기준으로 한다. 마찬가지로 하나의 발을 갖는 로봇 혹은 3개 이상의 발을 갖는 로봇의 경우에도 안정영역을 설정함으로서 간단히 안정여부 및 안정도 마진을 구할 수 있다.For example, when one foot is separated from the ground in the biped walking robot, the stable area is based only on an area formed by one foot in contact with the ground. Similarly, in the case of a robot having one foot or a robot having three or more feet, stability stability and stability margin can be obtained simply by setting a stable area.

또한 안정영역이 3차원의 공간영역으로 확장된 경우에도 식(1) 내지 식(3)을 적용할 수 있다. 다만, 식(2)는 다음과 같이 변형되어야 할 것이다.Equations (1) to (3) can also be applied when the stable region is extended to a three-dimensional space region. Equation (2) should be modified as follows.

Figure 112004020660136-pat00038
Figure 112004020660136-pat00038

여기서, 제1 기준점(A)의 좌표는 (xa, ya, za), 제2 기준점(B)의 좌표는 (xb, yb, zb), ZMP의 좌표는 (xz, yz, zz)이고, θ는

Figure 112004020660136-pat00039
로부터 반시계방향으로
Figure 112004020660136-pat00040
에 이르는 각도이다.Here, the coordinate of the first reference point A is (x a , y a , z a ), the coordinate of the second reference point B is (x b , y b , z b ), and the coordinate of ZMP is (x z , y z , z z ), and θ is
Figure 112004020660136-pat00039
Counterclockwise from
Figure 112004020660136-pat00040
Is the angle to.

비록 본 발명의 몇몇 실시예들이 도시되고 설명되었지만, 본 발명의 속하는 기술분야의 통상의 지식을 가진 당업자라면 본 발명의 원칙이나 정신에서 벗어나지 않으면서 본 실시예를 변형할 수 있음을 알 수 있을 것이다. 발명의 범위는 첨부된 청구항과 그 균등물에 의해 정해질 것이다.Although some embodiments of the invention have been shown and described, it will be apparent to those skilled in the art that the embodiments may be modified without departing from the spirit or spirit of the invention. . It is intended that the scope of the invention be defined by the claims appended hereto and their equivalents.

본 발명에 의해 보행로봇의 안정도를 간단하게 판별할 수 있다.According to the present invention, it is possible to easily determine the stability of the walking robot.

Claims (12)

복수의 발을 갖는 보행로봇의 제어방법에 있어서,In the control method of a walking robot having a plurality of feet, 지면과 맞닿은 발들 사이의 영역을 포함하는 안정영역 중 위험경계선 상의 제1 기준점(A)과 제2 기준점(B)을 선택하고 상기 보행로봇의 ZMP를 산출하는 단계와,Calculating a ZMP of the walking robot by selecting a first reference point A and a second reference point B on a dangerous boundary line among the stable areas including the areas between the feet in contact with the ground; 상기 제1 기준점(A)으로부터 상기 제2 기준점(B)에 이르는 제1 벡터(
Figure 112004020660136-pat00041
)와 상기 제1 기준점(A)으로부터 ZMP(Z)에 이르는 제2 벡터(
Figure 112004020660136-pat00042
)의 외적의 크기(K)를 산출하는 단계와,
A first vector from the first reference point A to the second reference point B
Figure 112004020660136-pat00041
) And a second vector from the first reference point A to ZMP (Z)
Figure 112004020660136-pat00042
Calculating the magnitude (K) of the cross product of
산출된 외적의 크기에 따라 상기 보행로봇의 움직임을 제어하는 단계를 포함하는 것을 특징으로 하는 보행로봇의 제어방법.And controlling the movement of the walking robot according to the calculated size of the cross product.
제1항에 있어서, The method of claim 1, 상기 외적의 크기(K)는 다음과 같은 수식에 의해 산출되는 것을 특징으로 하는 보행로봇의 제어방법:The control method of the walking robot, characterized in that the size (K) of the cross product is calculated by the following equation:
Figure 112004020660136-pat00043
Figure 112004020660136-pat00043
(여기서, 제1 기준점(A)의 좌표는 (xa, ya), 제2 기준점(B)의 좌표는 (xb, yb), ZMP의 좌표는 (xz, yz)이고, θ는
Figure 112004020660136-pat00044
로부터 반시계방향으로
Figure 112004020660136-pat00045
에 이르는 각도이다.)
Here, the coordinate of the first reference point A is (x a , y a ), the coordinate of the second reference point B is (x b , y b ), and the coordinate of ZMP is (x z , y z ), θ is
Figure 112004020660136-pat00044
Counterclockwise from
Figure 112004020660136-pat00045
Is the angle to.)
제1항에 있어서,The method of claim 1, 다음과 같은 수식에 의한 안정도 마진을 검출하는 단계를 더 포함하고,Detecting a stability margin according to the following formula;
Figure 112004020660136-pat00046
Figure 112004020660136-pat00046
(여기서, L은 제1 기준점과 제2 기준점의 이격거리이다. 즉, L=|
Figure 112004020660136-pat00047
|)
Where L is the separation between the first and second reference points, ie L = |
Figure 112004020660136-pat00047
|)
산출된 외적의 크기에 따라 상기 보행로봇의 움직임을 제어하는 단계는 상기 안정도 마진에 기초하는 것을 특징으로 하는 보행로봇의 제어방법.And controlling the movement of the walking robot according to the calculated size of the cross product is based on the stability margin.
제3항에 있어서,The method of claim 3, 산출된 외적의 크기에 따라 상기 보행로봇의 움직임을 제어하는 단계는, 상기 안정영역의 외곽선 각각에 대한 상기 안정도 마진의 크기가 허용범위 이내가 되도록 상기 보행로봇의 움직임을 제어하는 것을 특징으로 하는 보행로봇의 제어방법.Controlling the movement of the walking robot according to the calculated size of the cross product, characterized in that for controlling the movement of the walking robot so that the size of the stability margin for each of the contour line of the stable area is within an acceptable range. Robot control method. 제1항에 있어서,The method of claim 1, 상기 외적의 크기가 갖는 부호에 따라 상기 보행로봇이 안정한지 여부를 판 별하는 단계를 더 포함하고,Determining whether the walking robot is stable according to the sign of the size of the cross product; 산출된 외적의 크기에 따라 상기 보행로봇의 움직임을 제어하는 단계는 상기 보행로봇의 안정여부에 기초하는 것을 특징으로 하는 보행로봇의 제어방법.And controlling the movement of the walking robot according to the calculated size of the cross product based on whether the walking robot is stable. 제1항에 있어서,The method of claim 1, 상기 제1 기준점과 상기 제2 기준점은 상기 안정영역의 가장자리로부터 일정 이격거리를 갖는 내부영역에서 선택되는 것을 특징으로 하는 보행로봇의 제어방법.And the first reference point and the second reference point are selected in an inner region having a predetermined distance from an edge of the stable region. 제1항에 있어서,The method of claim 1, 상기 안정영역은 지면에 맞닿은 발이 하나인 경우 발바닥과 맞닿은 지면을 포함하는 영역인 것을 특징으로 하는 보행로봇의 제어방법.Wherein the stable area is a control method for a walking robot, characterized in that the area including the ground in contact with the sole when the foot is in contact with the ground. 보행로봇에 있어서,In walking robot, 복수의 발과;A plurality of feet; 동작을 구동하는 구동부와;A driving unit for driving an operation; 지면과 맞닿은 발 사이의 영역을 포함하는 안정영역 중 제1 기준점(A)으로부터 상기 안정영역 중 제2 기준점(B)에 이르는 제1 벡터(
Figure 112004020660136-pat00048
)와 상기 제1 기준점(A)으로부터 ZMP(Z)에 이르는 제2 벡터(
Figure 112004020660136-pat00049
)의 외적의 크기(K)를 산출하고 산출된 외적의 크기에 따라 상기 구동부를 제어하는 제어부를 포함하는 것을 특징 으로 하는 보행로봇.
The first vector (1) from the first reference point (A) of the stable region including the area between the foot in contact with the ground and the second reference point (B) of the stable region (
Figure 112004020660136-pat00048
) And a second vector from the first reference point A to ZMP (Z)
Figure 112004020660136-pat00049
And a control unit for calculating a size K of the cross product and controlling the driving unit according to the calculated size of the cross product.
제8항에 있어서,The method of claim 8, 상기 외적의 크기(K)는 다음과 같은 수식에 의해 산출되는 것을 특징으로 하는 보행로봇:The size of the cross product (K) is a walking robot, characterized in that calculated by the following formula:
Figure 112004020660136-pat00050
Figure 112004020660136-pat00050
(여기서, 제1 기준점(A)의 좌표는 (xa, ya), 제2 기준점(B)의 좌표는 (xb, yb), ZMP의 좌표는 (xz, yz)이고, θ는
Figure 112004020660136-pat00051
로부터 반시계방향으로
Figure 112004020660136-pat00052
에 이르는 각도이다.)
Here, the coordinate of the first reference point A is (x a , y a ), the coordinate of the second reference point B is (x b , y b ), and the coordinate of ZMP is (x z , y z ), θ is
Figure 112004020660136-pat00051
Counterclockwise from
Figure 112004020660136-pat00052
Is the angle to.)
제9항에 있어서,The method of claim 9, 상기 제어부는 상기 외적의 크기가 갖는 부호에 따라 상기 보행로봇이 안정한지 여부를 판별하고, 판별결과에 기초하여 상기 구동부를 제어하는 것을 특징으로 하는 보행로봇.The control unit determines whether the walking robot is stable according to a sign of the size of the cross product and controls the driving unit based on a determination result. 제8항에 있어서,The method of claim 8, 상기 제어부는 다음과 같은 수식에 의한 안정도 마진을 검출하고, 상기 안정 도 마진에 기초하여 상기 구동부를 제어하는 것을 특징으로 하는 보행로봇:The control unit detects a stability margin according to the following equation, and walk robot, characterized in that for controlling the drive unit based on the stability margin:
Figure 112004020660136-pat00053
Figure 112004020660136-pat00053
(여기서, L은 제1 기준점과 제2 기준점의 이격거리이다. 즉, L=|
Figure 112004020660136-pat00054
|)
Where L is the separation between the first and second reference points, ie L = |
Figure 112004020660136-pat00054
|)
제8항에 있어서,The method of claim 8, 상기 안정영역은 지면에 맞닿은 발이 하나인 경우 발바닥과 맞닿은 지면을 포함하는 영역인 것을 특징으로 하는 보행로봇.Wherein the stable area is a walking robot, characterized in that the area including the ground in contact with the sole of the foot when the foot is in contact with the ground.
KR1020040034805A 2004-05-17 2004-05-17 walking robot and control method thereof KR100557440B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020040034805A KR100557440B1 (en) 2004-05-17 2004-05-17 walking robot and control method thereof
JP2004239943A JP4157081B2 (en) 2004-05-17 2004-08-19 Walking robot and control method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020040034805A KR100557440B1 (en) 2004-05-17 2004-05-17 walking robot and control method thereof

Publications (2)

Publication Number Publication Date
KR20050109790A KR20050109790A (en) 2005-11-22
KR100557440B1 true KR100557440B1 (en) 2006-03-07

Family

ID=35484507

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040034805A KR100557440B1 (en) 2004-05-17 2004-05-17 walking robot and control method thereof

Country Status (2)

Country Link
JP (1) JP4157081B2 (en)
KR (1) KR100557440B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100889481B1 (en) 2006-06-29 2009-03-19 명지대학교 산학협력단 Method of Stair walking for biped robots

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100889481B1 (en) 2006-06-29 2009-03-19 명지대학교 산학협력단 Method of Stair walking for biped robots

Also Published As

Publication number Publication date
KR20050109790A (en) 2005-11-22
JP2005329530A (en) 2005-12-02
JP4157081B2 (en) 2008-09-24

Similar Documents

Publication Publication Date Title
JP4466715B2 (en) Legged robot and control method thereof
US8332068B2 (en) Intelligent stepping for humanoid fall direction change
US8855820B2 (en) Leg motion trajectory generation device for legged mobile robot
US8855821B2 (en) Robot and control method thereof
US7119510B2 (en) Method of assuming acting point of floor reaction force to biped walking mobile body and method of assuming joint moment of biped walking mobile body
KR101985790B1 (en) Walking robot and control method thereof
CA2456152C (en) Method of estimating floor reactions of bipedal walking body, and method of estimating joint moments of bipedal walking body
EP1510302B1 (en) Attitude control device of mobile robot
US7805218B2 (en) Robot device and control method of robot device
KR101687630B1 (en) Walking robot and method for controlling balancing the same
JPH0663876A (en) Control device for mobile robot
JP2011093024A (en) Control device for legged mobile robot
WO2015137169A1 (en) Terrain determination device, legged mobile robot, robot system, control method for legged mobile robot, and control method for robot system
Isvara et al. Terrain adaptation gait algorithm in a hexapod walking robot
US9964956B2 (en) Operating environment information generating device for mobile robot
US20180111261A1 (en) Foot touch position following apparatus, method of controlling movement thereof, computer-executable program, and non-transitory computer-readable information recording medium storing the same
Lee et al. Terrain edge detection for biped walking robots using active sensing with vCoP-position hybrid control
KR100557440B1 (en) walking robot and control method thereof
JP5198035B2 (en) Legged robot and control method thereof
JP5040693B2 (en) Legged robot and control method thereof
JP2008093762A (en) Walking robot
JP2006247800A (en) Control device for leg type movement robot
KR100425694B1 (en) Walking control method for robot
Li et al. Predictive control of stable standing of three-legged robot
US20230018155A1 (en) Legged robot and method of controlling legged robot

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130115

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140124

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20150116

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee