KR20070072314A - Method for controlling pose of robot with using neural network, recording medium thereof, apparatus for controlling pose of robot with using neuron-network and robot therewith - Google Patents
Method for controlling pose of robot with using neural network, recording medium thereof, apparatus for controlling pose of robot with using neuron-network and robot therewith Download PDFInfo
- Publication number
- KR20070072314A KR20070072314A KR1020060040506A KR20060040506A KR20070072314A KR 20070072314 A KR20070072314 A KR 20070072314A KR 1020060040506 A KR1020060040506 A KR 1020060040506A KR 20060040506 A KR20060040506 A KR 20060040506A KR 20070072314 A KR20070072314 A KR 20070072314A
- Authority
- KR
- South Korea
- Prior art keywords
- balance point
- robot
- neural network
- error
- walking
- Prior art date
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
- B25J13/08—Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
- B25J13/081—Touching devices, e.g. pressure-sensitive
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J19/00—Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
- B25J19/02—Sensing devices
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
- B25J9/161—Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05F—SYSTEMS FOR REGULATING ELECTRIC OR MAGNETIC VARIABLES
- G05F1/00—Automatic systems in which deviations of an electric quantity from one or more predetermined values are detected at the output of the system and fed back to a device within the system to restore the detected quantity to its predetermined value or values, i.e. retroactive systems
- G05F1/02—Regulating electric characteristics of arcs
- G05F1/08—Regulating electric characteristics of arcs by means of semiconductor devices
-
- Y—GENERAL 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
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S901/00—Robots
- Y10S901/01—Mobile robot
Landscapes
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Mechanical Engineering (AREA)
- Robotics (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Electromagnetism (AREA)
- Human Computer Interaction (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Manipulator (AREA)
Abstract
Description
도 1은 본 발명이 적용되는 다층 퍼셉트론의 구조를 도시한 것이다.1 illustrates the structure of a multilayer perceptron to which the present invention is applied.
도 2는 도 1에서 하나의 뉴런 구조를 도시한 것이다.FIG. 2 illustrates one neuron structure in FIG. 1.
도 3은 도 1의 출력층 신경망 뉴런 k에 연결된 은닉층 뉴런 j를 도시한 것이다.3 illustrates a hidden layer neuron j connected to the output layer neural network neuron k of FIG. 1.
도 4는 본 발명이 적용되는 로봇의 조인트 및 링크 구조의 일 예를 도시한 것이다.Figure 4 shows an example of the joint and link structure of the robot to which the present invention is applied.
도 5는 도 4에 따라 구성한 이족 보행로봇의 일 예이다.5 is an example of a biped walking robot constructed according to FIG. 4.
도 6은 도 5의 기구 해석을 위한 좌표계 설정 과정을 도시한 것이다.FIG. 6 illustrates a process of setting a coordinate system for analyzing an instrument of FIG. 5.
도 7은 도 5의 시간에 따른 조인트 각도를 나타내는 그래프이다.FIG. 7 is a graph illustrating a joint angle over time of FIG. 5.
도 8은 도 5의 보행 수단의 일부에 부착된 센서를 도시한 것이다.FIG. 8 shows a sensor attached to a part of the walking means of FIG. 5.
도 9는 도 5의 로봇을 이용하여 측정한 균형점 경로를 나타내는 그래프이다.9 is a graph showing a balance point path measured using the robot of FIG. 5.
도 10은 도 5의 균형점을 중심으로 로봇을 개략적으로 도시한 것이다.FIG. 10 schematically illustrates a robot around the balance point of FIG. 5.
도 11은 본 발명의 일 실시예에 따른 2입력 및 2출력의 신경망의 구조를 도 시한 것이다.11 illustrates a structure of a neural network of two inputs and two outputs according to an embodiment of the present invention.
도 12는 본 발명에 따른 신경망을 이용하는 로봇의 자세 제어 장치의 블럭도이다.12 is a block diagram of a posture control device of a robot using a neural network according to the present invention.
도 13은 도 12의 자세 제어 장치를 구비한 로봇의 블럭도이다.FIG. 13 is a block diagram of a robot including the posture control device of FIG. 12.
도 14는 도 13에서 학습에 따른 에러의 수렴 과정을 나타내는 그래프이다.FIG. 14 is a graph illustrating a convergence process of an error according to learning in FIG. 13.
도 15는 본 발명의 다른 실시예에 따른 시스템 구성도이다.15 is a system configuration diagram according to another embodiment of the present invention.
도 16은 본 발명에 따른 신경망을 이용하는 로봇의 자세 제어 방법의 흐름도이다.16 is a flowchart of a method for controlling a posture of a robot using a neural network according to the present invention.
도 17은 본 발명의 또다른 실시예에 따른 로봇의 평지 보행을 도시한 것이다.Figure 17 shows the flat walking of the robot according to another embodiment of the present invention.
도 18은 도 17의 평지 보행에서의 균형점 경로를 나타내는 그래프이다.FIG. 18 is a graph showing a balance point path in the flat walk of FIG. 17.
도 19는 도 17의 평지 보행에서의 균형점 오차를 나타내는 그래프이다. FIG. 19 is a graph illustrating a balance point error in the flat walking of FIG. 17.
도 20은 본 발명의 또다른 실시예에 따른 로봇의 +10°의 오르막 경사면 보행을 도시한 것이다.20 illustrates an uphill slope walk of + 10 ° of a robot in accordance with another embodiment of the present invention.
도 21은 도 20의 오르막 보행에서의 균형점 경로를 나타내는 그래프이다.FIG. 21 is a graph illustrating a balance point path in the uphill walk of FIG. 20.
도 22는 도 20의 오르막 보행에서의 균형점 오차를 나타내는 그래프이다.22 is a graph illustrating a balance point error in the uphill walk of FIG. 20.
도 23은 본 발명의 또다른 실시예에 따른 로봇의 -10°의 내리막 경사면 보행을 도시한 것이다.Figure 23 illustrates a downhill slope walk of -10 ° of the robot according to another embodiment of the present invention.
도 24는 도 23의 내리막 보행에서의 균형점 경로를 나타내는 그래프이다.24 is a graph illustrating a balance point path in the downhill walking of FIG. 23.
도 25는 도 23의 내리막 보행에서의 균형점 오차를 나타내는 그래프이다.FIG. 25 is a graph illustrating a balance point error in downhill walking in FIG. 23.
도 26은 본 발명의 또다른 실시예에 따른 로봇의 10°의 측방향 경사면 보행을 도시한 것이다.Figure 26 illustrates a 10 ° lateral inclined walk of the robot according to another embodiment of the present invention.
도 27은 도 26의 측방향 경사면 보행에서의 균형점 경로를 나타내는 그래프이다.FIG. 27 is a graph illustrating a balance point path in the lateral slope walking of FIG. 26.
도 28은 도 26의 측방향 경사면 보행에서의 균형점 오차를 나타내는 그래프이다.FIG. 28 is a graph illustrating a balance point error in the lateral slope walking of FIG. 26.
본 발명은 로봇 제어에 관한 것으로, 특히, 신경망을 이용하는 로봇의 자세 제어 방법 및 그 기록 매체, 신경망을 이용하는 로봇의 자세 제어 장치 및 그 장치를 구비한 로봇에 관한 것이다.BACKGROUND OF THE
이족 보행로봇은 인간 생활환경에 적용이 용이하며 계단이나 문턱과 같은 거친 지면에서도 이동이 가능한 장점이 있다. 1960년대 후반 Vukobratovic이 인간형 이족 보행로봇에 관한 모델링을 처음 제시한 이후, 이족 보행로봇에 관한 많은 이론적 혹은 실험적 연구들이 수행되어져 왔다. 1998년에는 일본의 혼다 사에서 인간형 이족 보행로봇 P3가 발표되었으며 이는 산업 및 인간 생활에서의 이족 보행로봇의 활용 가능성을 입증하였다. 이처럼 이족 보행로봇은 높은 자유도로 인해 다양한 일을 수행할 수 있으며, 엔터테인먼트 로봇, 인력 보조 로봇, 서비스 로봇 등 많은 분야에서 활용되고 있다. 그러나 이족 보행로봇은 높은 자유도와 직렬형 링크 구조 로 인해 안정도 해석과 제어가 어려운 점이 있으며 이는 로봇을 제작하는데 있어 난점이다.The biped walking robot is easy to apply to the human living environment and has the advantage of being able to move on rough ground such as stairs or thresholds. Since Vukobratovic first proposed modeling humanoid biped robots in the late 1960s, many theoretical and experimental studies on biped robots have been conducted. In 1998, the Japanese humanoid biped robot P3 was released by Honda, Japan, demonstrating the feasibility of biped robots in industrial and human life. As described above, the biped walking robot can perform various tasks due to its high degree of freedom, and is used in many fields such as entertainment robots, human assistance robots, and service robots. However, biped walking robot is difficult to analyze and control stability due to the high degree of freedom and the serial link structure, which is a difficulty in manufacturing the robot.
최근의 이족 보행로봇의 안정도를 개선하기 위한 연구는 최적 보행 패턴의 생성이나 자세 제어를 중심으로 진행되었다. 그러나 보행 패턴의 생성은 시뮬레이션에 한정되어 있기 때문에 실제 로봇에 적용하기에는 한계가 있다. 또한 동역학적인 해석에 의한 자세 제어는 로봇의 기구적인 오차를 고려하지 않기 때문에 오차가 적은 고가의 부품을 필요로 한다.Recently, researches to improve the stability of biped robots focused on the generation of optimal walking patterns or posture control. However, since the generation of the walking pattern is limited to the simulation, there is a limit to applying it to a real robot. In addition, posture control by dynamic analysis does not take into account the mechanical error of the robot, and therefore requires expensive parts with few errors.
따라서, 종래 로봇의 자세 제어 방법은 보행 자세의 안정도를 유지하기 어렵고, 기구적인 오차가 있을 경우 로봇의 안정도의 저하를 방지할 수 없으며, 이에 따른 로봇의 제작 난이도가 높고, 높은 가격의 액추에이터나 부품을 필요로 하여 로봇의 제작 기간이나 제작비용이 증가되는 문제점이 있다.Therefore, the attitude control method of the conventional robot is difficult to maintain the stability of the walking posture, and if there is a mechanical error, it is not possible to prevent the deterioration of the stability of the robot. There is a problem in that the production period or manufacturing cost of the robot is increased.
따라서, 본 발명이 이루고자 하는 첫번째 기술적 과제는 새로운 환경이나 기구적인 오차가 있어도 안정적인 보행을 구현할 수 있으며, 로봇의 제작 난이도를 줄일 수 있고, 로봇의 제작 기간이나 제작비용을 절감할 수 있는 신경망을 이용하는 로봇의 자세 제어 방법을 제공하는데 있다.Therefore, the first technical problem to be achieved by the present invention is to implement a stable walking even in a new environment or mechanical error, to reduce the manufacturing difficulty of the robot, using a neural network that can reduce the production period or production cost of the robot It is to provide a method for controlling the attitude of the robot.
본 발명이 이루고자 하는 두번째 기술적 과제는 상기의 신경망을 이용하는 로봇의 자세 제어 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하는데 있다.A second technical object of the present invention is to provide a computer-readable recording medium having recorded thereon a program for executing a method for controlling the attitude of a robot using the neural network.
본 발명이 이루고자 하는 세번째 기술적 과제는 상기의 신경망을 이용하는 로봇의 자세 제어 방법이 적용된 신경망을 이용하는 로봇의 자세 제어 장치를 제공하는데 있다.The third technical problem to be achieved by the present invention is to provide a posture control apparatus for a robot using a neural network to which the posture control method of the robot using the neural network is applied.
본 발명이 이루고자 하는 네번째 기술적 과제는 상기의 신경망을 이용하는 로봇의 자세 제어 장치를 구비한 로봇을 제공하는데 있다.A fourth technical object of the present invention is to provide a robot having a posture control device for a robot using the neural network described above.
상기의 첫번째 기술적 과제를 달성하기 위하여, 본 발명은 소정의 보행 패턴값에 따른 로봇의 동작 중 압력 센서로 인가되는 압력을 이용하여 균형점을 측정하는 단계, 상기 측정된 균형점과 미리 저장된 균형점 사이의 차인 균형점 오차를 생성하여 소정의 신경망에 출력하는 단계, 상기 신경망에 포함된 복수 뉴런들의 가중치들을 상기 균형점 오차에 부여하여 조인트각 조정값을 생성하는 단계, 상기 조인트각 조정값 및 상기 보행 패턴값을 합산한 제어 신호에 따라 액추에이터를 동작시키는 단계 및 상기 액추에이터 동작 중 생성된 균형점 오차에 따라 역전파 알고리즘을 수행하여 상기 가중치들을 변경시키는 단계를 포함하는 신경망을 이용하는 로봇의 자세 제어 방법을 제공한다.In order to achieve the first technical problem, the present invention is a step of measuring the balance point using the pressure applied to the pressure sensor during the operation of the robot according to a predetermined walking pattern value, the difference between the measured balance point and the pre-stored balance point Generating a balance point error and outputting the result to a predetermined neural network, generating a joint angle adjustment value by assigning weights of a plurality of neurons included in the neural network to the balance point error, adding the joint angle adjustment value and the walking pattern value A method of controlling a posture of a robot using a neural network includes operating an actuator according to a control signal and performing a backpropagation algorithm according to a balance point error generated during the actuator operation to change the weights.
상기의 두번째 기술적 과제를 달성하기 위하여, 본 발명은 상기의 신경망을 이용하는 로봇의 자세 제어 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.In order to achieve the second technical problem described above, the present invention provides a computer-readable recording medium having recorded thereon a program for executing the method of controlling the attitude of a robot using the neural network.
상기의 세번째 기술적 과제를 달성하기 위하여, 본 발명은 소정의 보행 패턴값을 저장하는 보행패턴 테이블, 인가되는 압력에 대응하는 전기적인 센서 신호를 생성하는 복수의 압력 센서, 상기 센서 신호를 이용하여 균형점을 연산하는 균형점 연산부, 상기 연산된 균형점과 미리 저장된 소정의 균형점 사이의 차인 균형점 오차를 생성하는 오차 생성부 및 복수 뉴런들의 가중치들을 상기 균형점 오차에 부여하여 조인트각 조정값을 생성하고 상기 조인트각 조정값 및 상기 보행 패턴값을 합산한 제어 신호에 따라 액추에이터를 동작시키고, 상기 액추에이터 동작 중 생성된 균형점 오차에 따라 역전파 알고리즘을 수행하여 상기 가중치들을 변경시키는 신경망을 포함하는 신경망을 이용하는 로봇의 자세 제어 장치를 제공한다.In order to achieve the third technical problem, the present invention provides a walking pattern table for storing a predetermined walking pattern value, a plurality of pressure sensors for generating an electrical sensor signal corresponding to an applied pressure, and a balance point using the sensor signal. A balance point calculator for calculating a balance point, an error generator for generating a balance point error that is a difference between the calculated balance point and a predetermined balance point, and assigning weights of a plurality of neurons to the balance point error to generate a joint angle adjustment value and adjusting the joint angle Posture control of a robot using a neural network including a neural network for operating the actuator according to a control signal obtained by adding a value and the walking pattern value, and performing a backpropagation algorithm to change the weights according to a balance point error generated during the actuator operation. Provide the device.
상기의 네번째 기술적 과제를 달성하기 위하여, 본 발명은 소정의 보행 패턴값을 저장하는 보행패턴 테이블, 보행 수단의 일부에 부착되어 인가되는 압력에 대응하는 전기적인 센서 신호를 생성하는 복수의 압력 센서, 상기 센서 신호를 이용하여 균형점을 연산하는 균형점 연산부, 상기 연산된 균형점과 미리 저장된 소정의 균형점 사이의 차인 균형점 오차를 생성하는 오차 생성부, 복수 뉴런들의 가중치들을 상기 균형점 오차에 부여하여 조인트각 조정값을 생성하고 상기 조인트각 조정값 및 상기 보행 패턴값을 합산한 제어 신호에 따라 액추에이터를 동작시키고, 상기 액추에이터 동작 중 생성된 균형점 오차에 따라 역전파 알고리즘을 수행하여 상기 가중치들을 변경시키는 신경망 및 상기 제어 신호에 따라 상기 보행 수단을 동작시키는 복수의 액추에이터를 포함하는 신경망을 이용하는 자세 제어 장치를 구비한 로봇을 제공한다.In order to achieve the fourth technical problem, the present invention provides a walking pattern table for storing a predetermined walking pattern value, a plurality of pressure sensors for generating an electrical sensor signal corresponding to a pressure applied to a part of the walking means, A balance point calculator for calculating a balance point using the sensor signal, an error generator for generating a balance point error that is a difference between the calculated balance point and a predetermined balance point, and a joint angle adjustment value by giving weights of a plurality of neurons to the balance point error. And operating the actuator according to a control signal obtained by adding the joint angle adjustment value and the walking pattern value, and performing a back propagation algorithm according to the balance point error generated during the actuator operation to change the weights and the control. A plurality of operating the walking means in accordance with the signal It provides a robot having a posture control device using a neural network comprising a weight initiator.
이하에서는 도면을 참조하여 본 발명의 바람직한 실시예를 설명하기로 한다. 그러나, 다음에 예시하는 본 발명의 실시예는 여러 가지 다른 형태로 변형될 수 있으며, 본 발명의 범위가 다음에 상술하는 실시예에 한정되는 것은 아니다.Hereinafter, with reference to the drawings will be described a preferred embodiment of the present invention. However, embodiments of the present invention illustrated below may be modified in many different forms, and the scope of the present invention is not limited to the embodiments described below.
본 발명에 이용되는 신경망은 다층 퍼셉트론으로서 입력층, 은닉층, 출력층으로 이루어진다.The neural network used in the present invention is a multilayer perceptron and is composed of an input layer, a hidden layer, and an output layer.
도 1은 본 발명이 적용되는 다층 퍼셉트론의 구조를 도시한 것이다. 여기서 회색의 원은 뉴런을 뜻하며 같은 열에 있는 뉴런들은 하나의 층을 이룬다. 1 illustrates the structure of a multilayer perceptron to which the present invention is applied. Here, the gray circle means neurons, and neurons in the same row form a layer.
도 2는 도 1에서 하나의 뉴런 구조를 도시한 것이다. 각 뉴런에서는 다음의 수학식 1과 같은 연산이 수행된다.FIG. 2 illustrates one neuron structure in FIG. 1. In each neuron, an operation as shown in
각 뉴런에서는 입력과 가중치를 곱한 값을 합산한 결과에 바이어스 b를 더한다. 이 값을 활성 함수인 를 거친 결과가 그 뉴런의 출력이 된다. 이러한 과정은 같은 층 내에서는 모든 뉴런에 동시에 일어나게 되며 입력층에 가까운 층에서부터 순서대로 출력층 쪽으로 진행된다. 이러한 과정을 통해 입력으로부터 출력을 구한다.Each neuron adds a bias, b, to the sum of the product multiplied by the input. This value is the active function The result is the output of the neuron. This process occurs simultaneously in all neurons within the same layer and proceeds in order from the layer closest to the input layer to the output layer. This process gets the output from the input.
신경망에 어떠한 값이 입력되었을 때 원하는 출력을 얻을 수 있도록 하는 과정을 신경망의 학습이라 한다. 이러한 학습 과정은 각 뉴런 사이의 가중치의 크기를 조정하는 과정을 통해서 이루어진다. 가중치를 조정하는 가장 대표적인 알고리즘으로는 역전파 알고리즘(Back-propagation algorithm)이 있다. 역전파 알고리즘 은 신경망의 출력과 원하는 출력과의 차이를 이용해 신경망 출력의 반대 방향으로 진행하면서 가중치를 조절한다. 도 2에서와 같이 n번째 학습 과정중 출력층 뉴런 j에서의 출력 은 수학식 2와 같다.The process of getting the desired output when a value is entered into the neural network is called neural network learning. This learning process is achieved by adjusting the magnitude of the weight between each neuron. The most representative algorithm for adjusting the weight is a back-propagation algorithm. The backpropagation algorithm uses the difference between the output of the neural network and the desired output to adjust the weight as it progresses in the opposite direction of the neural network output. Output from the output layer neuron j during the nth learning process as shown in FIG. Is the same as
여기서 는 으로 나타낼 수 있다. 여기서 출력층 뉴런 j의 오차는 다음의 수학식 3과 같이 나타낼 수 있다.here Is It can be represented as Here, the error of the output layer neuron j can be expressed as
도 3은 도 1의 출력층 신경망 뉴런 k에 연결된 은닉층 뉴런 j를 도시한 것이다. 3 illustrates a hidden layer neuron j connected to the output layer neural network neuron k of FIG. 1.
출력층의 모든 뉴런의 오차의 에너지 는 다음의 수학식 4와 같이 각 뉴런에서의 오차의 제곱의 합으로 나타낼 수 있다.Energy of error of all neurons in the output layer Can be expressed as the sum of squares of errors in each neuron as shown in
역전파 알고리즘의 목적은 오차의 에너지를 최소화 하는데 있다. 오차의 에 너지를 최소화하기 위해 조정해야 하는 가중치 값 은 부분적분 에 비례한다. 연쇄법칙에 의해서 이 값은 다음의 수학식 5와 같이 나타낼 수 있다.The purpose of the backpropagation algorithm is to minimize the energy of the error. Weight values that need to be adjusted to minimize the energy of the error Silver partial integration Proportional to By the chain law, this value can be expressed as
또한, 수학식 5의 양변을 에 대해 미분하면 다음의 수학식 6을 얻을 수 있다.In addition, both sides of the equation (5) By differentiating with respect to
또한, 수학식 4의 양변을 에 대해 미분하면 다음의 수학식 7을 얻을 수 있다.In addition, both sides of the equation (4) By differentiating with respect to Equation 7 below.
수학식 2의 양변을 에 대해 미분하면 다음의 수학식 8을 얻을 수 있다.Both sides of equation (2) By differentiating with respect to
또한, 를 에 대해 미분하면 다음의 수학식 9를 얻을 수 있다.Also, To By differentiating with respect to Equation 9,
또한, 수학식 6, 수학식 9를 수학식 5에 대입하면 다음의 수학식 10을 얻을 수 있다.Further, by substituting
결국 가중치의 수정값 은 델타 규칙에 의해 다음의 수학식 11로 주어진다.The correction value of the weight Is given by Equation 11 below by the delta rule.
여기서 는 역전파 알고리즘의 학습률이다. 이 식은 다음의 수학식 12와 같이 정리하여 쓸 수 있다.here Is the learning rate of the backpropagation algorithm. This equation can be written as
이와 같이 쓸 수 있으며 여기서 은 로컬 경도(local gradient)이다. 수학식 10에서 과 은 신경망의 출력을 통해 이미 얻어진 값이며 활성함수의 미분값인 또한, 활성함수를 로그 함수(logistic function)나 쌍곡 탄젠트 함수(hyperbolic tangent function)를 사용하면 신경망의 출력으로부터 쉽게 구할 수 있다. 일 예로서, 쌍곡 탄젠트 함수(hyperbolic tangent function)를 사용하면 이는 다음의 수학식 13과 같이 정의된다.You can write it like this, where Is the local gradient. In equation (10) and Is the value already obtained through the output of the neural network and is the derivative of the active function In addition, the activation function can be easily obtained from the output of the neural network by using a logistic function or a hyperbolic tangent function. As an example, using a hyperbolic tangent function, it is defined as in Equation 13 below.
여기서 a와 b는 상수이다. 수학식 13을 에 대해 미분하면 다음의 수학식 14를 얻을 수 있다.Where a and b are constants. Equation 13 By differentiating with respect to Equation 14,
이는 신경망의 출력 으로부터 곧바로 구할 수 있다.This is the output of neural networks Available immediately from.
만약 뉴런 j가 은닉층의 뉴런이라면 뉴런 j에 대한 원하는 출력이 존재하지 않으므로 출력층의 뉴런과 같은 방법으로 가중치를 조절할 수 없다. 즉, 은닉층에서의 로컬 경도(local gradient)는 다음의 수학식 15와 같이 다시 정의할 수 있다.If neuron j is a neuron in the hidden layer, the desired output for neuron j does not exist and thus weight cannot be adjusted in the same way as neurons in the output layer. That is, the local gradient in the hidden layer can be redefined as in
여기서 부분적분 의 값을 구하기 위해 도 3과 같이 출력층 뉴런 k에 연결된 은닉층 뉴런 j가 있다고 할 때, 다음의 수학식 16을 얻을 수 있다.Where partial integration In order to calculate the value of, as shown in FIG. 3, there is a hidden layer neuron j connected to the output layer neuron k.
앞에서와는 달리 출력층 뉴런의 인덱스를 j대신 k라고 하였으며 이는 j뉴런이 출력층이나 은닉층에 관계없이 일반화된 식을 이끌어내기 위함이다. 수학식 16의 양변을 에 대해 편미분하면 다음의 수학식 17을 얻을 수 있다.Unlike before, the index of the output layer neurons is called k instead of j, so that the j neurons derive a generalized expression regardless of the output layer or the hidden layer. Both sides of equation (16) By partial differential for, the following equation (17) can be obtained.
수학식 17의 부분에 연쇄법칙을 적용하면 다음의 식을 얻을 수 있다. 즉, 이다. 또한, 도 3에서 뉴런 k에서의 에러는 이며, 이로부터 다음의 수학식 18을 얻을 수 있다.Of equation (17) Applying the chain rule to the part gives the following equation. In other words, to be. In addition, the error in neuron k in FIG. From this, the following equation (18) can be obtained.
또한, 도 3으로부터 은 으로 구할 수 있다. 여기서 m은 바이어스를 제외한 뉴런 k로의 입력의 개수이다. 이 식을 에 대해 미분하면 다음의 수학식 19를 얻을 수 있다.Also, from FIG. 3 silver You can get it by Where m is the number of inputs to neuron k excluding bias. This expression By differentiating with respect to Equation 19,
수학식 19와 수학식 15를 이용하여 은닉층에서의 로컬 경도(local gradient)를 다음의 수학식 20과 같이 구할 수있다.Using local equations (19) and (15), a local gradient in the hidden layer can be obtained as shown in
이렇게 구해진 출력층과 은닉층에서의 로컬 경도(local gradient)를 이용하여 일반화된 델타 규칙은 다음의 수학식 21과 같이 쓸 수 있다.The delta rule generalized using the local gradient in the output layer and the hidden layer thus obtained can be written as Equation 21 below.
본 발명에서는 신경망을 이용한 제어기를 구성하고 이러한 과정을 통해 신경망을 학습하여 로봇의 자세 제어를 구현한다. 신경망은 로봇의 자세에 따른 안정도의 관계를 학습하고 이를 이용하여 로봇의 안정도를 개선하기 위해서 로봇의 자세를 어떠한 방향으로 수정해야 할지를 결정한다.In the present invention, a controller using a neural network is configured and the neural network is learned through this process to implement the attitude control of the robot. The neural network learns the relationship of stability according to the robot's posture and uses it to decide which direction the robot's posture should be modified to improve the stability of the robot.
이하에서 로봇이 이족 보행을 하는 것으로 가정한다. 즉, 보행 수단을 2개의 발로 가정한다.In the following, it is assumed that the robot is bipedal. In other words, the walking means is assumed to be two feet.
도 4는 본 발명이 적용되는 로봇의 조인트 및 링크 구조의 일 예를 도시한 것이다.Figure 4 shows an example of the joint and link structure of the robot to which the present invention is applied.
이때, 회전축은 원통형으로 표시했으며, 링크는 굵은 선으로 표시한다. 로봇은 전체 19자유도로 구성되어 있으며, 하체는 12자유도, 상체는 7자유도로 구성되어 있다. 상체는 보행 이외의 동작을 구현하기 위해 제작하였으며 하체의 조인트만을 고려한다. 로봇의 한쪽 다리는 골반에 3자유도와 무릎의 1자유도, 발목의 2자유 도로서 전형적인 이족 보행로봇의 구조를 갖는다. 로봇의 무릎은 뒤로 구부러져 있는 형태로 일반적인 인간형 보행로봇이 아닌 조족형 보행로봇의 형태를 갖는다. 이것은 단순히 형태의 차이일 뿐 보행의 특성이나 제작의 난이도에 큰 차이는 없다. At this time, the axis of rotation is represented by a cylinder, the link is represented by a thick line. The robot consists of 19 degrees of freedom, the lower body has 12 degrees of freedom, and the upper body has 7 degrees of freedom. The upper body is designed to implement motions other than walking and only the lower body joint is considered. One leg of the robot has the structure of a typical biped walking robot with three degrees of freedom in the pelvis, one degree of freedom in the knee, and two degrees of freedom in the ankle. The knees of the robot are bent backwards and take the form of a tide type walking robot rather than a general humanoid walking robot. This is simply a difference in form, there is no significant difference in the characteristics of walking or difficulty of production.
각 조인트의 회전축은 서로 수직관계에 있으며 이는 기구학적으로 간단하도록 하여 해석을 쉽게 하기 위함이다.The axis of rotation of each joint is perpendicular to each other in order to simplify the kinematics and make the analysis easier.
도 5는 도 4에 따라 구성한 이족 보행로봇의 일 예이다.5 is an example of a biped walking robot constructed according to FIG. 4.
도 5에서 로봇에 사용된 액추에이터는 RC 서보모터이다. RC 서보모터는 내부에 DC 모터와 감속기어, 제어기가 내장되어 있어서 모터를 구동하기 위한 별도의 회로나 드라이버가 필요 없다. 전원과 제어 신호만 인가하면 손쉽게 구동이 가능하기 때문에 로봇의 제작 시간과 노력을 크게 줄일 수 있는 장점이 있다. 그러나 외부에서 가해지는 부하에 의해 약간의 변형이 생길 수 있으며 각도를 제어할 수는 있지만 각속도와 각 가속도를 정확히 제어할 수 없는 단점이 있다. 이러한 액추에이터 제어에서의 불확실한 특성을 보완하기 위해 로봇의 안정도를 개선하기 위한 제어가 필요하다.The actuator used in the robot in FIG. 5 is an RC servomotor. The RC servomotor has a built-in DC motor, reduction gear and controller, so there is no need for a separate circuit or driver to drive the motor. It can be easily driven by applying power and control signals, which has the advantage of greatly reducing the manufacturing time and effort of the robot. However, a slight deformation may occur due to the external load and the angle can be controlled, but the angular velocity and the angular acceleration cannot be controlled accurately. To compensate for the uncertainty in the actuator control, a control is needed to improve the stability of the robot.
도 6은 도 5의 기구 해석을 위한 좌표계 설정 과정을 도시한 것이다.FIG. 6 illustrates a process of setting a coordinate system for analyzing an instrument of FIG. 5.
도 6은 제작된 로봇의 기구 해석을 위해 한쪽 다리에 대해 좌표계를 설정한 모습이다. 또한 제작된 로봇의 크기에 맞게 링크의 길이를 나타내었으며 단위는 mm이다. 또한, 도 6을 이용해 얻어낸 D-H 파라미터는 아래 표 1은 제작된 로봇의 각 좌표계 사이의 D-H 파라미터를 나타낸다.Figure 6 is a state in which the coordinate system is set for one leg for the instrument analysis of the manufactured robot. In addition, the length of the link was shown according to the size of the fabricated robot, and the unit is mm. In addition, the D-H parameter obtained using FIG. 6 shows the D-H parameter between each coordinate system of the produced robot.
표 1의 각 좌표계 사이의 D-H 파라미터식은 표 1의 D-H 파라미터를 이용해 얻어진 좌표계 사이의 변환 행렬을 나타낸다. 여기서 는 로, 는 로 줄여서 나타낸다. 이렇게 얻어진 변환 행렬과 수치적인 방법을 이용하여 로봇의 보행 패턴을 만들어 낸다. 로봇의 보행 패턴은 시간에 따른 로봇 각 부위의 이동 경로를 설정하고 이러한 경로에 따른 조인트들의 각도값을 구함으로써 구할 수 있다. 로봇이 보행을 하기 위해서는 발을 들어 올려서 보폭만큼 앞으로 내딛는 동작 및 앞으로 내딛은 발을 뒤로 밀어서 로봇이 앞으로 나아가는 동작이 필요하다.The DH parameter expression between each coordinate system of Table 1 shows the transformation matrix between the coordinate systems obtained using the DH parameter of Table 1. here Is in, Is Abbreviated as Using the transformation matrix and the numerical method thus obtained, a walking pattern of the robot is generated. The walking pattern of the robot can be obtained by setting a moving path of each part of the robot over time and obtaining angle values of joints along the path. In order for the robot to walk, it is necessary to move the foot forward by stride length and push the foot forward to move forward.
이 외에도 단순히 좌우 무게중심 이동을 위한 골반과 발목의 요우(yaw)에 해당하는 조인트인 와 은 단순한 연산에 의해 구할 수 있으므로 기구학을 사용하지 않는다.In addition, it is simply a joint corresponding to the yaw of the pelvis and ankle Wow Does not use kinematics because it can be obtained by a simple operation.
발을 들어 올려서 보폭만큼 앞으로 내딛는 동작에 대해, 역기구학을 이용해 발의 위치에 따른 관절의 각도를 구함으로써 로봇이 한 발을 내딛는 동안의 보행패턴을 구할 수 있다.With respect to the movement of the foot by stepping forward, the inverse kinematics calculates the angle of the joint according to the position of the foot.
로봇의 발끝이 움직이는 과정은 다음과 같다. 먼저, 가속을 하면서 발을 들어 올린다. 다음, 1/4원 모양의 궤적을 따라 등속도로 진행 방향을 정면으로 바꾼다. 다음, 등속도로 정면으로 나아간다. 다음, 1/4원 모양의 궤적을 따라 등속도로 진행 방향을 아래로 내린다. 마지막으로, 감속을 하면서 지면에 접촉한다.The process of moving the tip of the robot is as follows. First, lift your feet while accelerating. Next, change the direction of travel forward at an equal velocity along the quarter-shaped trajectory. Next, head forward at the same speed. Next, along the quarter-shaped trajectory, the direction of travel is lowered at constant velocity. Finally, decelerate and touch the ground.
만약 발을 들어올리는 순간과 지면에 접촉하는 순간에 가속 및 감속을 하지 않으면 앞으로 내딛는 발로 땅을 찰 수 있으므로 보행이 불안정해질 수 있다. 여기서, 보폭 l과 발을 들어올리는 높이 h는 변수로 두어 사용자가 임의로 변경하여 로봇의 보행 패턴을 생성할 수 있도록 한다.If you do not accelerate or decelerate at the time of lifting your feet or contacting the ground, you may hit the ground with your forward feet, which may lead to unstable walking. Here, the stride length l and the height h for lifting the foot are set as variables so that the user can arbitrarily change to generate a walking pattern of the robot.
도 6에서 설정된 골반 중심의 기준 좌표계 {0}으로 표현한 발끝의 좌표는 변환행렬을 이용하여 나타낼 수 있다. 여기서 직진 보행중 은 0으로 고정되어 있으며, 한 발을 내딛는 과정에서는 좌우 무게중심 이동을 위한 조인트 각도인 , 은 일정한 값으로 고정되어 있다. 또한 발바닥은 항상 수평을 유지한다는 가정에 의해 발바닥의 위치와 발목의 상대적인 위치는 항상 일정하다. 즉, 한 발을 내딛는 과정에서 찾아야 할 조인트 각도는 와 이며, 는 발바닥이 수평을 유지하기 위해 와 의 값에 의해 정해진다. 또한, 발바닥의 위치가 아닌 발목의 위치를 찾음으로써 보행패턴을 구할 수 있다.The coordinates of the toe represented by the reference coordinate system {0} of the pelvis center set in FIG. 6 may be represented using a transformation matrix. Walking straight here Is fixed to 0, the joint angle for the left and right center of gravity movement , Is fixed to a constant value. In addition, the position of the sole and the relative position of the ankle are always constant by the assumption that the sole is always horizontal. In other words, the joint angle to find in the step Wow Is, To keep the soles level Wow It is determined by the value of. In addition, the walking pattern can be obtained by finding the position of the ankle rather than the position of the sole.
임의의 시점에서의 와 의 값을 찾기 위해서는 이웃하는 점 사이에서는 와 가 비슷한 값을 갖는다는 가정이 필요하다. 처음에는 로봇의 발끝의 위치가 바닥과 가장 가까운 점에 있게 된다. 이 점에서의 와 는 보행을 시작할때의 값이므로 로봇의 초기 자세로부터 이미 알고 있는 값이다. 그러므로 과 는 다음의 수학식 22에 의해 구할 수 있다.At any point in time Wow To find the value of Wow We need to assume that has a similar value. Initially, the position of the toe of the robot is closest to the floor. At this point Wow Since is the value at the start of walking, it is already known from the initial position of the robot. therefore and Can be obtained by the following equation (22).
여기서 는 기준좌표계 {0}으로 표현한 발목의 위치이며 는 좌표계{4}로 표현한 좌표계{5}의 원점이다. 이 값은 무릎과 발목 사이의 링크의 길이에 의해 정해지며 의 상수값을 갖는다. 는 각 좌표계간의 변환 행렬이다. 수학식 22에서 초기의 와 에 를 더한 후 발목의 위치를 구한다. 이렇게 해서 얻어진 발목의 위치 중 다음의 위치와 가장 가까운 위치에 오는 값을 그 점에서의 조인트 각도로 선택한다. 이러한 과정을 모든 발목의 위치에 대해 수행하여 각 위치에서의 와 의 값을 구한다. 또한, 앞으로 내딪은 발을 뒤로 미는 동작 역시 같은 과정을 통해 시간에 따른 각 조인트의 각도 를 구한다. here Is the location of the ankle expressed in the reference coordinate system {0} Is the origin of coordinate system {5} expressed in coordinate system {4}. This value is determined by the length of the link between the knee and the ankle Has a constant value. Is the transformation matrix between each coordinate system. In Equation 22, Wow on Location of the ankle after adding Obtain The value that comes closest to the next position among the positions of the ankles thus obtained is selected as the joint angle at that point. Do this for all ankle positions, Wow Find the value of. In addition, the motion of pushing forward the forward foot is also the same process to find the angle of each joint over time.
도 7은 도 5의 시간에 따른 조인트 각도를 나타내는 그래프이다.FIG. 7 is a graph illustrating a joint angle over time of FIG. 5.
이와 같은 과정을 통해 구해진 한쪽 다리에 대한 조인트들의 각도값의 변화는 도 7과 같다. 도 7은 로봇이 두 걸음을 걷는 시간동안 한쪽 다리의 조인트들의 각도 변화를 나타낸 그래프이다. 위에서부터 순서대로 도 6에서의 조인트 {2}, {3}, {4}, {5}, {6}의 각도 변화를 나타내고 있으며 직진 보행중에는 조인트 {1}의 각도 은 0으로 고정되어 있으므로 표시하지 않았다. 이 값들은 제작된 로봇 내의 마이크로 프로세서의 메모리에 저장되며 각 액추에이터로 보내진다. 각 액추에이터는 이 값에 해당하는 각도를 유지함으로써 로봇이 동작하고, 로봇이 보행을 한다.The change in the angle value of the joints with respect to one leg obtained through the above process is shown in FIG. 7. Figure 7 is a graph showing the change in the angle of the joints of one leg during the time the robot walks two steps. The angles of the joints {2}, {3}, {4}, {5}, and {6} in Fig. 6 are shown in order from the top, and the angle of the joint {1} during straight walking. Is not fixed because it is fixed to zero. These values are stored in the microprocessor's memory in the robot and sent to each actuator. Each actuator maintains an angle corresponding to this value so that the robot operates and the robot walks.
도 8은 도 5의 보행 수단의 일부에 부착된 센서를 도시한 것이다.FIG. 8 shows a sensor attached to a part of the walking means of FIG. 5.
압력 센서는 압력 감지 저항(FSR : force sensing resistor)과 같은 압력에 따라 저항의 크기가 변하는 소자를 이용할 수 있다. 이를 이용하면, 간단한 회로를 이용해서 압력값과 선형적으로 비례하는 출력을 얻어낼 수 있다.The pressure sensor may use a device in which the size of the resistance changes with pressure, such as a force sensing resistor (FSR). Using this, a simple circuit can be used to obtain an output that is linearly proportional to the pressure value.
또한, 로봇의 발바닥에 압력 감지 저항을 부착하고 그 위에 충격의 완화 및 물리적인 노이즈를 제거하기 위해 쿠션을 부착할 수 있다. 쿠션은 마찰계수가 크기 때문에 쿠션 위에는 아크릴판을 붙여 수평방향의 마찰력을 제거하여 수직방향의 반력만을 측정하게 할 수 있다.In addition, a pressure-sensitive resistor can be attached to the sole of the robot and a cushion can be attached thereon to alleviate shock and remove physical noise. Since the cushion has a large coefficient of friction, an acrylic plate may be attached on the cushion to remove the friction in the horizontal direction, thereby measuring only the reaction force in the vertical direction.
센서의 출력값은 10비트의 A/D컨버터를 이용해 읽을 수 있다. A/D컨버터의 오차 범위는 최하 비트의 크기이다. The sensor output can be read using a 10-bit A / D converter. The error range of the A / D converter is the least significant bit size.
도 9는 도 5의 로봇을 이용하여 측정한 균형점 경로를 나타내는 그래프이다.9 is a graph showing a balance point path measured using the robot of FIG. 5.
도 9에서 샘플링 주기는 50ms이다. 측정에 의해 얻어진 균형점의 경로는 매우 불규칙하며 로봇이 불안정해 질 수 있음을 알 수 있다. In FIG. 9, the sampling period is 50 ms. It can be seen that the path of the balance point obtained by the measurement is very irregular and the robot may become unstable.
도 10은 도 5의 균형점을 중심으로 로봇을 개략적으로 도시한 것이다.FIG. 10 schematically illustrates a robot around the balance point of FIG. 5.
로봇의 전체적인 동작에 영향을 받지 않고 모든 동작에서 일반화된 자세 제어가 가능하도록 로봇을 측면과 정면에 대해 각각 1자유도를 갖는 도립진자로 간략화할 수 있다.The robot can be simplified to an inverted pendulum having 1 degree of freedom for each side and front to enable generalized posture control in all operations without being affected by the overall operation of the robot.
간략화한 로봇의 정면에서, 골반과 발목의 요우(yaw)에 해당하는 조인트인 로봇이 보행을 할 때에 좌우 무게중심 이동을 위한 조인트이다. 이는 도 6의 와 에 해당한다. 양쪽 다리의 , , , 에 해당하는 조인트는 직진 보행시 동일한 크기의 각도로 움직이기 때문에 네 조인트에 같은 크기의 를 더해서 로봇의 x축 방향 즉, 로봇의 좌우방향으로 무게중심을 이동하여 균형점의 위치를 변화시킬 수 있다.In front of the simplified robot, the joint corresponding to the yaw of the pelvis and ankle is a joint for moving the center of gravity of the left and right when walking. This is Wow Corresponds to On both legs , , , Is equivalent to four joints moving at the same angle when walking straight. In addition, the position of the balance point can be changed by moving the center of gravity in the x-axis direction of the robot, that is, the left and right directions of the robot.
간략화한 로봇의 측면에서, 골반의 피치(pitch)에 해당하는 , 조인트는 로봇이 보행하는 동안 항상 로봇의 상체가 수직을 유지하도록 하는 특성을 갖는다. 이를 이용해 , 에 같은 크기의 를 더해서 로봇의 y축 방향 즉, 로봇의 앞뒤방향으로 무게중심을 이동하여 균형점의 위치를 변화시킬 수 있도록 한다.In terms of a simplified robot, it corresponds to the pitch of the pelvis , The joint has the property of keeping the upper body of the robot always vertical while the robot is walking. Using this , Of the same size In addition, it is possible to change the position of the balance point by moving the center of gravity in the y-axis direction of the robot, that is, the front and rear of the robot.
이외의 조인트들은 보행을 하는 동안 상체에 대해서 위치와 방향이 변하기 때문에 일반화된 각도 변화를 적용시킬 수 없다. 그러나 위의 조인트 각도들은 로봇이 보행하는 도중에 항상 같은 크기의 각도로 움직이거나 회전축이 일직선상에 있기 때문에 값을 변화시켜도 로봇의 동작에 큰 영향을 미치지 않으면서 균형점의 위치를 변화시킬 수 있다.Other joints cannot apply generalized angular changes because their position and orientation change relative to the upper body during walking. However, the above joint angles always move at the same angle while the robot is walking, or because the axis of rotation is in a straight line, changing the value can change the position of the balance point without affecting the robot's operation.
본 발명의 일 실시예에 따른 로봇의 자세 제어 장치는 측정된 균형점의 x축 성분과 y축 성분을 입력으로 하고, 골반 조인트의 각도를 조정하기 위한 값 와 를 출력으로 하는 2입력, 2출력의 다층 퍼셉트론을 이용할 수 있다.A robot posture control device according to an embodiment of the present invention is a value for adjusting the angle of the pelvis joint by inputting the x-axis component and the y-axis component of the measured balance point. Wow Two-input, two-output multilayer perceptrons can be used.
도 11은 본 발명의 일 실시예에 따른 2입력 및 2출력의 신경망의 구조를 도시한 것이다.11 illustrates a structure of a neural network of two inputs and two outputs according to an embodiment of the present invention.
이때, 은닉층의 개수는 하나이며, 은닉층에서의 뉴런의 수는 10개이다. At this time, the number of hidden layers is one, and the number of neurons in the hidden layer is ten.
도 12는 본 발명에 따른 신경망을 이용하는 로봇의 자세 제어 장치의 블럭도이다.12 is a block diagram of a posture control device of a robot using a neural network according to the present invention.
사용자가 로봇의 보폭(step length)과 보행시 발을 들어올리는 높이(foot lift height)을 정하면 PC에서 로봇의 보행 패턴 를 생성한다. When the user determines the robot's step length and the foot lift height when walking, the robot's walking pattern on the PC Create
보행패턴 테이블(1210)은 위와 같이 생성된 보행 패턴을 저장한다. 보행패턴 테이블(1210)은 로봇에 내장된 마이크로 컨트롤러 내부의 메모리일 수 있다. 보행 패턴 테이블(1210)에 저장된 보행 패턴은 복수의 액추에이터(1260)에 전송된다. The walking pattern table 1210 stores the walking pattern generated as described above. The walking pattern table 1210 may be a memory inside a microcontroller built in a robot. The walking pattern stored in the walking pattern table 1210 is transmitted to the plurality of
복수의 액추에이터(1260)는 보행 패턴 및 조인트각 조정값에 따라 동작한다. 로봇은 액추에이터(1260)의 동작에 따라 동작 및 보행한다.The plurality of
복수의 압력센서(1220)는 액추에이터(1260)의 동작에 따라 로봇의 보행수단에 가해지는 압력의 변화를 측정한다. 복수의 압력센서(1220)는 인가되는 압력에 대응하는 전기적인 센서 신호를 생성한다.The plurality of
균형점 연산부(1230)는 센서 신호를 이용하여 균형점의 위치를 연산한다. 균형점 연산부(1230)에 의해 연산된 균형점의 위치와 미리 정해져 있는 이상적인 균형점의 위치와의 차이를 균형점 오차로 정의한다. The
오차 생성부(1240)는 균형점 연산부(1230)에 의해 연산된 균형점의 위치와 미리 정해져 있는 이상적인 균형점의 위치와의 차이를 연산한다.The
신경망(1250)은 균형점 오차를 이용하여 로봇의 자세를 어떠한 방향으로 수정해야 할지를 결정하여 현재 로봇의 자세를 수정한다. 이러한 자세의 수정은 균형점 에러를 이용해 와 를 연산하고, 이 값들을 해당되는 조인트 각도에 더해줌으로써 이루어진다.The
신경망을 학습하는 과정은 다음과 같다. 이미 만들어져 있는 보행 패턴 에 임의의 값을 가지는 , 를 빼주어 보행 패턴을 변경하고, 이렇게 변경된 보행 패턴을 로봇에 적용시킨다. 이때 측정된 균형점의 위치와 이상적인 균형점 의 차이를 신경망의 입력으로 한다. 이 입력에 대해 얻어진 신경망의 출력을 , 와 비교하여 이와 같아지도록 학습한다. , 값을 빼지 않은 즉, 이미 만들어져 있는 보행패턴을 로봇에 적용시켰을 경우 로봇의 균형점 경로가 원하는 이상적인 경로라는 가정하에 신경망을 학습한다. 이로 인해 도 10의 조인트의 각도값에 , 를 빼주었을 경우 균형점의 위치가 어떻게 변하는지를 신경망이 학습한다. 이를 통해 신경망이 균형점의 에러가 0이 되도록 하는 , 를 출력한다.The process of learning neural networks is as follows. Walking pattern already made With any value in , Change the walking pattern by subtracting and apply the changed walking pattern to the robot. At this time, the difference between the measured balance point position and the ideal balance point is used as the input of the neural network. The output of the neural network obtained for this input , Compare to and learn to be like this. , When the walking pattern is not applied to the robot, the neural network is trained on the assumption that the balance point path of the robot is the ideal path. Due to this the angle value of the joint of FIG. , If you omit, the neural network learns how the position of the balance point changes. This allows the neural network to zero the balance point error. , Outputs
신경망은 역전파 알고리즘을 이용하여 학습하며, 로봇이 보행을 하면서 매 샘플링 시간마다 학습을 한다. 바람직하게는, 학습 과정에서의 샘플링 시간은 학습이 완료된 과정에서의 샘플링 시간보다 느리게 할 수 있다. 이와 같이 하면 비슷한 입/출력 데이터에 대해 계속적인 학습을 할 경우에 생기는 오버피팅(overfitting)을 방지할 수 있다. Neural networks are trained using backpropagation algorithms, and the robot learns every sampling time while walking. Preferably, the sampling time in the learning process may be slower than the sampling time in the learning process. This prevents overfitting caused by continuing learning about similar input / output data.
도 13은 도 12의 자세 제어 장치를 구비한 로봇의 블럭도이다.FIG. 13 is a block diagram of a robot including the posture control device of FIG. 12.
보행패턴 테이블(1310)은 소정의 보행 패턴값을 저장한다.The walking pattern table 1310 stores a predetermined walking pattern value.
복수의 압력 센서(1320)는 보행 수단의 일부에 부착되어 인가되는 압력에 대응하는 전기적인 센서 신호를 생성한다. 균형점 연산부(1330)는 복수의 압력 센서(1320)에 의해 생성되는 센서 신호를 이용하여 균형점을 연산한다. 오차 생성부(1340)는 연산된 균형점과 미리 저장된 소정의 균형점 사이의 차인 균형점 오차 를 생성한다. 신경망(1350)은 복수의 뉴런들로 구성된다. 신경망(1350)은 복수 뉴런들의 가중치들을 균형점 오차에 부여하여 조인트각 조정값을 생성한다. 또한, 신경망(1350)은 복수의 액추에이터(1360) 동작 중 생성된 균형점 오차에 따라 역전파 알고리즘을 수행하여 상기 가중치들을 변경시킨다. 복수의 액추에이터(1360)는 조인트각 조정값 및 보행 패턴값을 합산한 제어 신호에 따라 동작한다. 복수의 액추에이터(1360)는 제어 신호에 따라 보행 수단을 동작시킨다.The plurality of
도 14는 도 13에서 학습 횟수에 따른 에러의 수렴 과정을 나타내는 그래프이다.FIG. 14 is a graph illustrating a convergence process of an error according to the number of learning in FIG. 13.
이러한 과정을 통해 신경망이 조인트각 조정값(, )과 로봇의 안정도 사이의 관계를 모델링할 수 있다.This process allows the neural network to adjust the joint angle ( , ) And the stability of the robot.
도 15는 본 발명의 다른 실시예에 따른 시스템 구성도이다.15 is a system configuration diagram according to another embodiment of the present invention.
하나의 마이크로 컨트롤러는 보행패턴 테이블(1510), 신경망(1550), 미리 저장된 균형점(1531), 균형점 연산부(1530), ADC(아날로그-디지털 컨버터, 1521)를 포함할 수 있다.One microcontroller may include a walking pattern table 1510, a
마이크로 컨트롤러는 각 조인트의 액추에이터(1560)로 입력되는 제어신호를 생성하고, ADC(1521)을 이용하여 보행수단의 압력 센서(1520)로부터 들어온 값을 샘플링하며, 압력 센서(1520)의 센서 신호로부터 로봇의 균형점의 위치를 연산하고, 신경망(1550)의 학습 및 에러값으로부터 조인트각 조정값을 연산하며, PC(1570)로 센서값, 균형점의 위치값을 전송한다.The microcontroller generates a control signal input to the
로봇의 마이크로 컨트롤러에서 연산된 센서 값과 균형점의 위치는 RS-232 통신을 통해 PC로 전송될 수 있다. 이에 따라, 시스템 사용자가 현재 로봇의 상태를 모니터링 할 수 있다. 다음의 표 2에는 본 발명의 일 예로 제작된 이족 보행로봇의 사양이다.The sensor value calculated from the robot's microcontroller and the position of the balance point can be transmitted to the PC via RS-232 communication. Accordingly, the system user can monitor the current robot status. Table 2 is a specification of the biped walking robot manufactured as an example of the present invention.
도 16은 본 발명에 따른 신경망을 이용하는 로봇의 자세 제어 방법의 흐름도이다.16 is a flowchart of a method for controlling a posture of a robot using a neural network according to the present invention.
먼저, 소정의 보행 패턴값에 따른 로봇의 동작 중 압력 센서로 인가되는 압력을 이용하여 균형점을 측정한다(1610 과정). 다음, 측정된 균형점과 미리 저장된 균형점 사이의 차인 균형점 오차를 생성하여 소정의 신경망에 출력한다(1620 과정). 신경망에 균형점 오차가 입력되면, 신경망에 포함된 복수 뉴런들의 가중치들을 상기 균형점 오차에 부여하여 조인트각 조정값을 생성한다(1630 과정). 다음, 조인트각 조정값 및 상기 보행 패턴값을 합산한 제어 신호에 따라 액추에이터를 동작시킨다(1640 과정). 마지막으로, 액추에이터 동작 중 생성된 균형점 오차에 따라 역전파 알고리즘을 수행하여 복수 뉴런들의 가중치들을 변경시킨다(1650 과정).First, the balance point is measured using the pressure applied to the pressure sensor during the operation of the robot according to the predetermined walking pattern value (step 1610). Next, a balance point error, which is a difference between the measured balance point and the previously stored balance point, is generated and output to the predetermined neural network (step 1620). When the balance point error is input to the neural network, the joint angle adjustment value is generated by giving weights of the plurality of neurons included in the neural network to the balance point error (step 1630). Next, the actuator is operated according to the control signal obtained by adding the joint angle adjustment value and the walking pattern value (step 1640). Finally, a backpropagation algorithm is performed according to the balance point error generated during the actuator operation to change the weights of the plurality of neurons (step 1650).
이하에서, 수치적인 제어의 경우 신경망을 이용한 제어와 동일한 방법으로 로봇을 도립진자로 단순화하고 상체를 추가적인 링크로 가정한다. 즉 상체의 질량, 상체의 위치 및 가속도와 균형점과의 관계를 모델링한다.In the following, the numerical control simplifies the robot to the inverted pendulum and assumes the upper body as an additional link in the same way as the control using the neural network. That is, the relationship between the mass of the upper body, the position of the upper body, and the acceleration and the balance point is modeled.
도 17은 본 발명의 또다른 실시예에 따른 로봇의 평지 보행을 도시한 것이고, 도 20은 본 발명의 또다른 실시예에 따른 로봇의 +10°의 오르막 경사면 보행을 도시한 것이며, 도 23은 본 발명의 또다른 실시예에 따른 로봇의 -10°의 내리막 경사면 보행을 도시한 것이고, 도 26은 본 발명의 또다른 실시예에 따른 로봇의 10°의 측방향 경사면 보행을 도시한 것이다.FIG. 17 illustrates flat walking of a robot according to another exemplary embodiment of the present invention, FIG. 20 illustrates uphill slope walking of + 10 ° of a robot according to another exemplary embodiment of the present invention, and FIG. FIG. 26 illustrates a downhill slope walk of -10 ° of a robot according to another embodiment of the present invention, and FIG. 26 illustrates a 10 ° lateral slope walk of a robot according to another embodiment of the present invention.
도 18은 도 17의 평지 보행에서의 균형점 경로를 나타내는 그래프이고, 도 22는 도 20의 오르막 보행에서의 균형점 오차를 나타내는 그래프이며, 도 25는 도 23의 내리막 보행에서의 균형점 오차를 나타내는 그래프이고, 도 28은 도 26의 측방향 경사면 보행에서의 균형점 오차를 나타내는 그래프이다.FIG. 18 is a graph showing a balance point path in the flat walk of FIG. 17, FIG. 22 is a graph showing a balance point error in the uphill walk in FIG. 20, and FIG. 25 is a graph showing a balance point error in the downhill walk in FIG. 23. FIG. 28 is a graph showing a balance point error in the lateral inclined walk of FIG. 26.
도 18, 도 19, 도 21, 도 22, 도 24, 도 25, 도 27 및 도 28은 제어를 하지 않았을 경우(Without control), 동역학 해석에 의한 수치적인 제어를 적용했을 경우(With numerical control), 본 발명에 따라 신경망을 이용한 제어를 적용했을 경우를 도시한다.18, 19, 21, 22, 24, 25, 27 and 28 are without control (without control) and with numerical control by dynamic analysis (with numerical control). The case where control using a neural network is applied according to the present invention is shown.
도 18, 도 21, 도 24, 도 27에서 원하는 균형점의 경로(Desired ZMP)는 점선으로 표현하였으며 측정된 균형점의 경로는 실선으로 표시한다. 18, 21, 24, and 27, the desired path of the balanced point (Desired ZMP) is represented by a dotted line, and the measured path of the balanced point is indicated by a solid line.
로봇에 자세 제어를 적용하지 않았을 경우(Without control) 균형점의 경로가 불규칙하며 원하는 균형점의 경로(Desired ZMP)와 크게 차이가 나는 것을 알 수 있다. 본 발명에 따라 신경망을 이용해서 제어했을 경우가 수치적인 제어(With numerical control)보다 원하는 균형점 경로에 훨씬 가까움을 알 수 있다.Without the posture control applied to the robot, it can be seen that the path of the balance point is irregular and greatly differs from the desired path of the balanced point (Desired ZMP). It can be seen that the control using neural networks in accordance with the present invention is much closer to the desired balance point path than with numerical control.
도 19는 도 17의 평지 보행에서의 균형점 오차를 나타내는 그래프이고, 21은 도 20의 오르막 보행에서의 균형점 경로를 나타내는 그래프이며, 도 24는 도 23의 내리막 보행에서의 균형점 경로를 나타내는 그래프이고, 도 27은 도 26의 측방향 경사면 보행에서의 균형점 경로를 나타내는 그래프이다.FIG. 19 is a graph showing a balance point error in the flat walk of FIG. 17, 21 is a graph showing a balance point path in the uphill walk of FIG. 20, FIG. 24 is a graph showing a balance point path in the downhill walk of FIG. 23, FIG. 27 is a graph illustrating a balance point path in the lateral slope walking of FIG. 26.
도 19, 도 22, 도25, 도28은 보행시 시간에 대한 균형점의 오차를 x축 성분과 y축 성분으로 나누어 나타낸다. 위쪽의 그래프는 x축에 대한 균형점의 오차, 아래쪽 그래프는 y축에 대한 균형점의 오차를 나타낸다. 한 그래프 내에서 제어를 하지 않았을 경우(Without control)는 실선으로, 수치 제어에 의한 결과(With numerical control)는 점선으로, 본 발명에 따라 신경망을 이용한 제어의 결과는 x표시가 마킹된 선으로 나타낸다. 이 그래프가 0에 가까울수록 로봇의 균형점 경로는 원하는 경로에 가까우며 안정적인 보행을 한다고 할 수 있다. 또한 전체적으로 x축 방향의 오차가 y축 방향의 오차보다 크기가 큰 것을 알 수 있는데, 이는 로봇이 좌우로 무게중심을 이동하면서 균형점의 위치가 이동하는 폭이 크기 때문에 오차의 폭 또한 커지기 때문이다.19, 22, 25 and 28 show the error of the balance point with respect to time during walking divided by the x-axis component and the y-axis component. The upper graph shows the error of the balance point on the x axis, and the lower graph shows the error of the balance point on the y axis. Without control in a graph (Without control) is represented by a solid line, the result by numerical control is represented by a dashed line, and the result of the control using a neural network according to the present invention is represented by a line marked with x . The closer this graph is to 0, the closer the robot's balance point path is to the desired path and the more stable the walking. In addition, it can be seen that the error in the x-axis direction is larger than the error in the y-axis direction because the width of the error is also increased because the position of the balance point is large while the robot moves the center of gravity from side to side.
도 19, 도 22, 도25, 도28에서 알 수 있듯이 두 가지의 자세 제어를 적용했을 경우 제어를 하지 않았을 때(Without control)보다 전체적으로 오차의 범위와 변화 정도가 줄어들었으며 수치 제어(With numerical control)에 비해 본 발명에 따라 신경망을 이용한 제어를 적용했을 경우가 더 큰 폭으로 줄어들었음을 알 수 있다.As can be seen from FIGS. 19, 22, 25, and 28, when the two posture controls are applied, the range of error and the degree of change are reduced as compared with without control, and numerical control (With numerical control) is performed. It can be seen that the case of applying the control using the neural network according to the present invention is significantly reduced.
표 3은 제어 성능을 수치적으로 비교하기 위해서 평지와 세 종류의 경사면에 대한 균형점의 오차를 RMSE(root mean square error)값으로 나타낸다. 아래 표 3의 값을 통해 본 발명에 따라 신경망을 이용한 제어는 동역학 해석을 이용한 제어(With numerical control)에 비해 성능이 우수함을 알 수 있다.Table 3 shows the root mean square error (RMS) of the balance point error for the flat and three types of slopes for numerical comparison of control performance. Through the values in Table 3, it can be seen that the control using the neural network according to the present invention is superior to the control using the dynamic analysis (With numerical control).
이 외에도 제작된 이족 보행로봇은 외부에서 가해지는 힘에 대해 반응하여 균형을 유지할 수 있다. 즉, 정면 및 후면, 측면에서 본 발명에 따른 로봇에 힘을 가했을 경우 밸런스를 유지하기 위해서, 본 발명에 따른 로봇은 힘의 반대 방향으로 반력을 가할 수 있다.In addition, the biped robots can be balanced in response to external forces. That is, in order to maintain balance when applying force to the robot according to the present invention from the front, rear and side, the robot according to the present invention may apply a reaction force in the opposite direction of the force.
바람직하게는, 본 발명의 신경망을 이용하는 로봇의 자세 제어 방법을 컴퓨터에서 실행시키기 위한 프로그램을 컴퓨터로 읽을 수 있는 기록매체에 기록하여 제공할 수 있다.Preferably, a program for executing the attitude control method of the robot using the neural network of the present invention may be provided by recording a program for executing in a computer on a computer-readable recording medium.
본 발명은 소프트웨어를 통해 실행될 수 있다. 소프트웨어로 실행될 때, 본 발명의 구성 수단들은 필요한 작업을 실행하는 코드 세그먼트들이다. 프로그램 또는 코드 세그먼트들은 프로세서 판독 가능 매체에 저장되거나 전송 매체 또는 통신망에서 반송파와 결합된 컴퓨터 데이터 신호에 의하여 전송될 수 있다. The invention can be implemented via software. When implemented in software, the constituent means of the present invention are code segments that perform the necessary work. The program or code segments may be stored on a processor readable medium or transmitted by a computer data signal coupled with a carrier on a transmission medium or network.
컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 테이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 장치의 예로는 ROM, RAM, CD-ROM, DVD-ROM, DVD+ROM, 자기 테이프, 플로피 디스크, 광데이터 저장장치 등이 있다. 또한, 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 장치에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.The computer-readable recording medium includes all kinds of recording devices in which data is stored which can be read by a computer system. Examples of computer-readable recording devices include ROM, RAM, CD-ROM, DVD-ROM, DVD + ROM, magnetic tape, floppy disks, optical data storage devices, and the like. The computer readable recording medium can also be distributed over network coupled computer devices so that the computer readable code is stored and executed in a distributed fashion.
본 발명은 도면에 도시된 일 실시예를 참고로 하여 설명하였으나 이는 예시적인 것에 불과하며 당해 분야에서 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 실시예의 변형이 가능하다는 점을 이해할 것이다. 그러나, 이와 같은 변형은 본 발명의 기술적 보호범위내에 있다고 보아야 한다. 따라서, 본 발명의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해서 정해져야 할 것이다.Although the present invention has been described with reference to one embodiment shown in the drawings, this is merely exemplary and will be understood by those of ordinary skill in the art that various modifications and variations can be made therefrom. However, such modifications should be considered to be within the technical protection scope of the present invention. Therefore, the true technical protection scope of the present invention will be defined by the technical spirit of the appended claims.
상술한 바와 같이, 본 발명에 의하면, 신경망을 이용하여 복잡하고 불확실한 특성을 갖는 로봇을 제어함으로써, 신경망 스스로 로봇의 특성을 학습하고 안정도를 개선할 수 있고, 기구적인 부분에 오차가 있어도 안정적인 보행을 구현할 수 있으며, 로봇에 대한 정확한 모델링을 필요로 하지 않고, 이로 인해 로봇의 제작 난이도를 줄일 수 있고, 낮은 가격의 액추에이터나 부품을 사용할 수 있게 되어 로봇의 제작 기간이나 제작비용을 절감할 수 있는 효과가 있다.As described above, according to the present invention, by controlling the robot having a complex and uncertain characteristics by using the neural network, the neural network can learn the characteristics of the robot itself and improve the stability, stable walking even if there is an error in the mechanical part It does not require accurate modeling of the robot, which reduces the manufacturing difficulty of the robot and enables the use of low-cost actuators or parts, which can reduce the production time or cost of the robot. There is.
Claims (5)
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020050136357 | 2005-12-31 | ||
KR20050136357 | 2005-12-31 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20070072314A true KR20070072314A (en) | 2007-07-04 |
Family
ID=38507349
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020060040506A KR20070072314A (en) | 2005-12-31 | 2006-05-04 | Method for controlling pose of robot with using neural network, recording medium thereof, apparatus for controlling pose of robot with using neuron-network and robot therewith |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20070072314A (en) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101018019B1 (en) * | 2008-08-20 | 2011-03-02 | 재단법인 포항지능로봇연구소 | Robot control system based analog neuron |
KR101105346B1 (en) * | 2008-12-09 | 2012-01-16 | (주)로보티즈 | Robot having a gait mechanism using learning and method for improving gait mechanism of robot using learing |
KR101288149B1 (en) * | 2011-11-02 | 2013-07-18 | 명지대학교 산학협력단 | Device and method for controlling the balance of biped walking robots |
US9221507B2 (en) | 2008-06-19 | 2015-12-29 | Samsung Electronics Co., Ltd. | Robot and method of controlling walking thereof |
CN108527371A (en) * | 2018-04-17 | 2018-09-14 | 重庆邮电大学 | A kind of Dextrous Hand planing method based on BP neural network |
KR102233739B1 (en) * | 2019-09-24 | 2021-03-31 | 한국생산기술연구원 | Walking robot posture control method using reinforcement learning and artificial neural network |
CN113143256A (en) * | 2021-01-28 | 2021-07-23 | 上海电气集团股份有限公司 | Gait feature extraction method, lower limb assessment method, lower limb control method, device and medium |
KR102390439B1 (en) * | 2020-12-14 | 2022-04-25 | (주)이디지에스 | Deep learning-based humanoid robot soccer system |
KR20220140178A (en) * | 2021-04-09 | 2022-10-18 | 한양대학교 산학협력단 | Walking motion generating method based on reinforcement learning and service apparatus |
KR102660601B1 (en) | 2024-01-09 | 2024-04-25 | 주식회사세오 | Control method for stable operation of mobile robots |
-
2006
- 2006-05-04 KR KR1020060040506A patent/KR20070072314A/en active Search and Examination
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9221507B2 (en) | 2008-06-19 | 2015-12-29 | Samsung Electronics Co., Ltd. | Robot and method of controlling walking thereof |
KR101018019B1 (en) * | 2008-08-20 | 2011-03-02 | 재단법인 포항지능로봇연구소 | Robot control system based analog neuron |
KR101105346B1 (en) * | 2008-12-09 | 2012-01-16 | (주)로보티즈 | Robot having a gait mechanism using learning and method for improving gait mechanism of robot using learing |
KR101288149B1 (en) * | 2011-11-02 | 2013-07-18 | 명지대학교 산학협력단 | Device and method for controlling the balance of biped walking robots |
CN108527371A (en) * | 2018-04-17 | 2018-09-14 | 重庆邮电大学 | A kind of Dextrous Hand planing method based on BP neural network |
KR102233739B1 (en) * | 2019-09-24 | 2021-03-31 | 한국생산기술연구원 | Walking robot posture control method using reinforcement learning and artificial neural network |
KR102390439B1 (en) * | 2020-12-14 | 2022-04-25 | (주)이디지에스 | Deep learning-based humanoid robot soccer system |
CN113143256A (en) * | 2021-01-28 | 2021-07-23 | 上海电气集团股份有限公司 | Gait feature extraction method, lower limb assessment method, lower limb control method, device and medium |
CN113143256B (en) * | 2021-01-28 | 2023-09-26 | 上海电气集团股份有限公司 | Gait feature extraction method, lower limb evaluation and control method, device and medium |
KR20220140178A (en) * | 2021-04-09 | 2022-10-18 | 한양대학교 산학협력단 | Walking motion generating method based on reinforcement learning and service apparatus |
KR102660601B1 (en) | 2024-01-09 | 2024-04-25 | 주식회사세오 | Control method for stable operation of mobile robots |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20070072314A (en) | Method for controlling pose of robot with using neural network, recording medium thereof, apparatus for controlling pose of robot with using neuron-network and robot therewith | |
KR100937268B1 (en) | Legged mobile robot and method of controlling operation of the robot | |
EP2017042B1 (en) | Motion controller and motion control method for legged walking robot, and robot apparatus | |
JP4818716B2 (en) | Robot controller | |
US7076337B2 (en) | Ambulation control apparatus and ambulation control method of robot | |
KR100959472B1 (en) | Robot device and control method of robot device | |
US9073209B2 (en) | Walking robot and control method thereof | |
KR101131776B1 (en) | Gait generator of legged mobile robot | |
JP3615702B2 (en) | Motion control device and motion control method for legged mobile robot, and legged mobile robot | |
US10246152B2 (en) | Control device for mobile robot | |
US20210162589A1 (en) | Systems and methods for learning agile locomotion for multiped robots | |
JP2001277159A (en) | Legged locomotion robot, controlling method for it, and ralative movement measuring sensor for it | |
WO2004033160A1 (en) | Robot device operation control device and operation control method | |
US20120065778A1 (en) | Robot and control method thereof | |
Ding et al. | Walking stabilization control for humanoid robots on unknown slope based on walking sequences adjustment | |
CN114384918A (en) | Diagonal gait compliance control method of four-footed robot based on drop foot point adjustment | |
Mănoiu-Olaru et al. | Stability analysis software platform dedicated for a hexapod robot | |
JP2001138272A (en) | Leg type mobile robot and control method for its motion | |
JP2002210681A (en) | Motion control device and method for leg-type moving robot, and robot device | |
JP2004181613A (en) | Robot device, device and method for controlling operation of legged locomotion robot, sensor system for legged locomotion robot, and moving body device | |
JP3568527B2 (en) | Mobile device | |
CN116551669A (en) | Dynamic jump and balance control method for humanoid robot, electronic equipment and medium | |
Dettmann et al. | Improved locomotion capabilities for quadrupeds through active multi-point-contact feet | |
JP2004148491A (en) | Apparatus and method for controlling operation of robot system, and its computer program | |
JP4481132B2 (en) | Robot apparatus and control method thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
J201 | Request for trial against refusal decision | ||
AMND | Amendment | ||
B601 | Maintenance of original decision after re-examination before a trial | ||
E801 | Decision on dismissal of amendment | ||
J301 | Trial decision |
Free format text: TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20080211 Effective date: 20091201 |