JP4066923B2 - robot - Google Patents
robot Download PDFInfo
- Publication number
- JP4066923B2 JP4066923B2 JP2003328034A JP2003328034A JP4066923B2 JP 4066923 B2 JP4066923 B2 JP 4066923B2 JP 2003328034 A JP2003328034 A JP 2003328034A JP 2003328034 A JP2003328034 A JP 2003328034A JP 4066923 B2 JP4066923 B2 JP 4066923B2
- Authority
- JP
- Japan
- Prior art keywords
- joint
- controller
- processing procedure
- abnormality
- robot
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Description
本発明は、ロボットに関するものである。詳しくは、ロボットで異常が発生した場合のフェイルセーフ技術に関するものである。 The present invention relates to a robot. More specifically, the present invention relates to fail-safe technology when an abnormality occurs in a robot.
胴体側部材と末端側部材を接続する関節の角度を変化させる関節アクチュエータと、関節アクチュエータ毎に設けられた関節コントローラと、関節コントローラ群に逐次指令する中央コントローラとを備えたロボットが開発されている。胴体側部材と末端側部材は相対的なものであり、例えば、2足歩行型ロボットの上腿と下腿では、上腿が胴体側部材で下腿が末端側部材であり、下腿と足平では下腿が胴体側部材で足平が末端側部材である。
このロボットは、中央コントローラに求められる演算処理量を関節コントローラ群に分担させることができ、高速動作することができる。その反面、多数のコントローラを接続してシステムを構成することから、コントローラ間で信号が伝達されないといった異常が起こる可能性があり、フェイルセーフ技術が必要とされる。
特許文献1に、関節コントローラ群と中央コントローラを備えたロボットのフェイルセーフ技術が開示されている。一つのフェイルセーフ技術では、中央コントローラが指令するデータを関節コントローラが時系列的に記憶する。関節コントローラは、中央コントローラから所定期間に亘って指令データを受信しないといった異常が発生した場合や、受信した指令データが異常であった場合に、記憶している指令データの時系列から、異常が発生しなかった場合に受信するであろう指令データを予測する。そして、予測した指令データに従ってロボットを制御する。 特許文献1には、上記とは別のフェイルセーフ技術が開示されており、このフェイルセーフ技術では、関節コントローラにデフォルト値を予め記憶しておく。中央コントローラから所定期間に亘って指令データを受信しないといった異常が発生した場合には、異常が発生した関節の関節コントローラは、予め記憶しているデフォルト値に向けて制御し、デフォルト値で静止させる。
A robot has been developed that includes a joint actuator that changes the angle of the joint connecting the body side member and the end side member, a joint controller provided for each joint actuator, and a central controller that sequentially commands the joint controller group. . The torso side member and the end side member are relative. For example, in the upper leg and lower leg of a biped robot, the upper leg is the trunk side member and the lower leg is the distal member, and the lower leg and foot are the lower leg. Is the body side member and the foot is the end side member.
This robot can share the calculation processing amount required for the central controller among the joint controller group, and can operate at high speed. On the other hand, since a system is configured by connecting a large number of controllers, an abnormality such as a signal not being transmitted between the controllers may occur, and a fail-safe technique is required.
ロボットで異常が発生した場合に実行するべき制御処理手順は、異常発生時にロボットがどのような動作を行っているかによって異なってくる。例えば、2足歩行型ロボットの足首関節コントローラと中央コントローラを接続する電気ケーブルが断線し、足首関節コントローラを中央コントローラが制御できない異常が発生したとする。異常が発生した足首関節が遊脚のものであった場合には、遊脚足先が接地するまで歩行動作を継続し、足先が接地してから両脚の関節をロックして両足立脚の状態でロボットを静止させるのが適当である。両足立脚の状態で足首関節に異常が発生した場合には、そのまま両脚の関節をロックして両足立脚の状態でロボットを静止させるのが適当である。ロボットが片足立脚の状態で立脚の足首関節に異常が発生すれば、異常が発生した足首関節に適度なトルクを加えて歩行動作を継続し、両足立脚の状態になってから両脚の関節をロックしてロボットを静止させるのが適当である。このように、ロボットで異常が発生した場合には、その時のロボットの動作に対応した臨機応変な制御を行う必要がある。 The control processing procedure to be executed when an abnormality occurs in the robot differs depending on what operation the robot is performing when the abnormality occurs. For example, it is assumed that an electrical cable connecting the ankle joint controller and the central controller of a biped robot is disconnected, and an abnormality that the central controller cannot control the ankle joint controller occurs. If the ankle joint where the anomaly has occurred is a swing leg, continue walking until the toe touches the ground and locks the joints of both legs after the toes touch the ground. It is appropriate to keep the robot stationary. When an abnormality occurs in the ankle joint in the state of both legs, it is appropriate to lock the joints of both legs and to make the robot stand still in the state of both legs. If an anomaly occurs in the ankle joint of the stance when the robot is in one leg standing leg, the walking operation is continued by applying an appropriate torque to the ankle joint where the anomaly has occurred, and the joints of both legs are locked after becoming a state of both leg stand. It is appropriate to make the robot stationary. As described above, when an abnormality occurs in the robot, it is necessary to perform flexible control corresponding to the operation of the robot at that time.
特許文献1に記載の技術のように、異常発生時には異常が発生しなかった場合に受信するであろう指令データを予測する技術では、異常発生時に異常が発生しなかった場合の制御を行うことになる。このため、異常発生時のロボットを適切にフェイルセーフ制御することができない。特許文献1に記載されている第2の技術のように、異常が発生した場合に、予め記憶しているデフォルト値で静止させる技術では、異常発生時のロボットの動作に対応した臨機応変なフェイルセーフ制御を行うことができない。
As in the technique described in
本発明は、かかる問題を解決するためになされたものであり、異常が発生した場合に、異常が発生した関節とタイミングに対応して、適切なフェイルセーフ制御を行うことが可能なロボットを提供することを課題とする。 The present invention has been made to solve such a problem, and provides a robot capable of performing appropriate fail-safe control in accordance with a joint and a timing at which an abnormality occurs when an abnormality occurs. The task is to do.
本発明に係るロボットは、胴体側部材と末端側部材を接続する関節を複数有しており、関節の角度を制御することによって姿勢を変化させながら歩行する。ロボットは、関節毎に設けられており、関節の角度を変化させる関節アクチュエータと、関節アクチュエータ毎に設けられた関節コントローラと、関節コントローラ毎に関節の動作指令値を逐次指令する中央コントローラとを備えている。各関節コントローラは、自己の関節の関節角度が中央コントローラが指令した動作指令値のとおりに変化しない異常が発生したときに関節アクチュエータを制御するための異常処理手順を複数種類記憶している。
中央コントローラは、前記異常が発生した関節コントローラが実行するべき異常処理手順を特定する「異常処理手順の種類」をロボットの姿勢に応じて関節コントローラ毎に選択し、選択した「異常処理手順の種類」を動作指令値とともに各関節コントローラに逐次指令する。各関節コントローラは、動作指令値と「異常処理手順の種類」を受信したときに、受信した動作指令値のとおりに自己の関節アクチュエータを制御するとともに受信した最新の「異常処理手順の種類」を記憶し、前記異常が発生した場合に、複数種類の異常処理手順のうち記憶している「異常処理手順の種類」によって特定される異常処理手順に基づいて関節アクチュエータを制御する。
上記のロボットは、中央コントローラが関節コントローラに、異常が発生した場合に実行するべき異常処理手順を予め指示しておく。中央コントローラは、その時のロボットの状態に応じた異常処理手順を関節コントローラに逐次指示することができる。関節コントローラは、中央コントローラが指示した異常処理手順を記憶しており、異常発生時には記憶している異常処理手順を実行する。関節コントローラは、中央コントローラが異常処理手順を指示すると、すでに記憶している異常処理手順を中央コントローラが指示した異常処理手順に更新する。異常処理手順は時系列的に切換えられ、異常発生時のロボットの動作状態に応じた適切なフェイルセーフ制御を行うことが可能になる。
The robot according to the present invention has a plurality of joints connecting the body side member and the end side member, and walks while changing the posture by controlling the angle of the joint. The robot is provided for each joint , and includes a joint actuator that changes the angle of the joint , a joint controller provided for each joint actuator, and a central controller that sequentially commands joint operation command values for each joint controller. ing. Each joint controller stores a plurality of types of abnormality processing procedures for controlling the joint actuator when an abnormality occurs in which the joint angle of its own joint does not change according to the operation command value commanded by the central controller.
Central controller, the "type of abnormality processing procedure" in which the abnormality regarding the section controller generated to identify an abnormal procedure to be performed to select for each joint controller in accordance with the attitude of the robot, the selected "abnormal procedure Are sequentially commanded to each joint controller together with the motion command value. When each joint controller receives the motion command value and the “type of abnormality processing procedure”, it controls its joint actuator according to the received motion command value and also receives the latest “type of abnormality processing procedure” received. When the abnormality occurs, the joint actuator is controlled based on the abnormality processing procedure specified by the “type of abnormality processing procedure” stored among the plurality of types of abnormality processing procedures.
In the robot described above, the central controller instructs the joint controller in advance an abnormality processing procedure to be executed when an abnormality occurs. The central controller can sequentially instruct the joint controller of the abnormality processing procedure according to the state of the robot at that time. The joint controller stores the abnormality processing procedure instructed by the central controller, and executes the stored abnormality processing procedure when an abnormality occurs. When the central controller instructs the abnormality processing procedure, the joint controller updates the already stored abnormality processing procedure to the abnormality processing procedure instructed by the central controller. The abnormality processing procedure is switched in time series, and it becomes possible to perform appropriate fail-safe control according to the operation state of the robot when the abnormality occurs.
上記ロボットにおいて、各関節コントローラは、他の関節コントローラに前記異常が発生したときに自己の関節アクチュエータを制御するための特定処理手順を複数種類記憶しており、中央コントローラは、いずれかの関節コントローラで前記異常が発生した場合に、正常な関節コントローラが実行するべき特定処理手順を特定する「特定処理手順の種類」をロボットの姿勢に応じて正常な関節コントローラ毎に選択し、選択した「特定処理手順の種類」を正常な各関節コントローラに指令し、各関節コントローラは、中央コントローラから「特定処理手順の種類」を受信した場合に、複数の特定処理手順のうち受信した「特定処理手順の種類」によって特定される特定処理手順に基づいて関節アクチュエータを制御することが好ましい。
このように構成されていると、いずれかの関節に異常が発生した場合に、中央コントローラによって、正常な関節の関節コントローラが特定処理手順を実行する。即ち、異常が発生した関節は異常処理手順を実行し、正常な関節は特定処理手順を実行する。異常発生時のロボットの動作状態に応じた適切なフェイルセーフ制御を行うことが可能になる。
In the robot, each joint controller stores a plurality of types of specific processing procedures for controlling its joint actuator when the abnormality occurs in another joint controller, and the central controller is one of the joint controllers. in the case where the abnormality occurs, selected for each normal joint controllers in response to "the kind of identification process procedure" identifying a particular procedure to normal Takashi Seki controller performs the posture of the robot, the selected " When the “special processing procedure type” is commanded to each normal joint controller, and each joint controller receives the “specific processing procedure type” from the central controller, the received “specific processing procedure” among the plurality of specific processing procedures. It is preferable to control the joint actuator based on a specific processing procedure specified by “type” .
With this configuration, when an abnormality occurs in any of the joints, the joint controller of a normal joint executes a specific processing procedure by the central controller. That is, a joint in which an abnormality has occurred executes an abnormality processing procedure, and a normal joint executes a specific processing procedure . It is possible to perform appropriate fail-safe control according to the operating state of the anomaly occurrence of the robot.
上記ロボットにおいて、異常処理手順および/または特定処理手順が、遊脚の接地のタイミングで切替えられることが好ましい。
このロボットによれば、遊脚の接地のタイミングで異常処理手順および/または特定処理手順を切替えることができ、ロボットの姿勢変化に合わせたフェイルセーフ制御を実施することができる。
In the robot described above, it is preferable that the abnormality processing procedure and / or the specific processing procedure is switched at the timing of contact of the free leg .
According to this robot , the abnormality processing procedure and / or the specific processing procedure can be switched at the timing of contact of the free leg, and fail-safe control in accordance with the change in the posture of the robot can be performed.
後述する実施例の主要な特徴を記載する。
(形態1) ロボットは2足歩行型である。脚、腕の各関節には、それぞれの関節角を変化させる関節アクチュエータが装着されている。関節アクチュエータはモータを主体に構成されている。関節アクチュエータは、関節の回転自由度の数に等しいモータを備えている。例えば、1軸の膝関節の関節アクチュエータは1個のモータで構成され、2軸の足首関節の関節アクチュエータは2個のモータで構成されている。
各関節アクチュエータは、それに対応する関節コントローラで制御される。多軸関節の関節コントローラは、少なくとも1個のCPUを備えている。例えば、2軸の足首関節を制御する足首コントローラは、2個のモータを制御する少なくとも1個のCPUを備えている。代わって、個々にモータを制御する複数のCPUを備えていてもよい。関節コントローラは、胴体に装着されている中央コントローラから送信されてくる動作コマンドに従って関節アクチュエータを制御する。
(形態2) 動作コマンドには、アドレス、動作指令値、異常処理手順の種類が含まれている。
関節コントローラは、送信されてくる異常処理手順の種類を記憶する。関節コントローラが記憶している異常処理手順の種類は、それが送信されてくる毎に更新されて記憶される。中央コントローラは、ロボットの姿勢(片足立脚であるか、両足立脚であるか)と、動作コマンドを送信する先の関節コントローラの別を考慮して異常処理手順の種類を選択する。
(形態3) 関節コントローラは、中央コントローラとの送受信が異常であるか、または自身が異常であると判別した場合に、記憶している異常処理手順の種類に従って動作する。中央コントローラは、関節コントローラとの送受信が異常であるか、関節コントローラが異常であると判別した場合に、異常であると判別した以外の関節コントローラに、特定処理手順の種類を送信する。この特定処理手順の種類は、ロボットの姿勢と、異常が発生した関節コントローラとを考慮して選択される。
異常が発生すると、異常な関節の関節コントローラは、予め記憶していた異常処理手順の種類に従って動作する。異常が発生すると、中央コントローラは、正常な関節の関節コントローラに対して、異常発生に対応した特定処理手順を行わせる。
(形態4) 上述したような制御が行われると、ロボットは、最終的に両足立脚の状態のまま静止したり、片足立脚から両足立脚の状態に移行してから静止したり、ひざまずいた状態で静止したりする。
The main features of the embodiments described later will be described.
(Mode 1) The robot is a biped walking type. A joint actuator for changing the joint angle is attached to each joint of the leg and the arm. The joint actuator is mainly composed of a motor. The joint actuator includes a motor equal to the number of degrees of freedom of rotation of the joint. For example, a joint actuator for a uniaxial knee joint is composed of one motor, and a joint actuator for a two-axis ankle joint is composed of two motors.
Each joint actuator is controlled by a corresponding joint controller. A multi-axis joint controller includes at least one CPU. For example, an ankle controller that controls a biaxial ankle joint includes at least one CPU that controls two motors. Instead, a plurality of CPUs that individually control the motors may be provided. The joint controller controls the joint actuator according to the operation command transmitted from the central controller attached to the trunk.
(Mode 2) The operation command includes an address, an operation command value, and an abnormality processing procedure type.
The joint controller stores the type of abnormality processing procedure that is transmitted. The type of abnormality processing procedure stored in the joint controller is updated and stored each time it is transmitted. The central controller selects the type of abnormality processing procedure in consideration of the posture of the robot (whether it is one leg or both legs) and the joint controller to which the motion command is transmitted.
(Mode 3) The joint controller operates according to the type of stored abnormality processing procedure when it is determined that transmission / reception with the central controller is abnormal or that it is abnormal. When the central controller determines that transmission / reception with the joint controller is abnormal or determines that the joint controller is abnormal, the central controller transmits the type of the specific processing procedure to joint controllers other than those determined to be abnormal. The type of the specific processing procedure is selected in consideration of the posture of the robot and the joint controller in which an abnormality has occurred.
When an abnormality occurs, the joint controller of the abnormal joint operates according to the type of abnormality processing procedure stored in advance. When an abnormality occurs, the central controller causes the joint controller of a normal joint to perform a specific processing procedure corresponding to the occurrence of the abnormality.
(Embodiment 4) When the control as described above is performed, the robot finally stops in a state where both legs are in a standing state, transitions from a one-legged leg to a state in which both legs are standing, or remains in a kneeling state. It can be stationary.
本発明の実施例に係るロボット10について、図面を参照しながら説明する。
図1に示されているように、ロボット10は2足歩行型であり、右脚32、左脚20、胴体19、右腕70、左腕60、頭部80を備えている。
図2は、ロボット10の各関節の機械的接続状態を図示している。図2では、説明の便宜上、x、y、zの3軸からなる座標系を設定している。x軸(ロール軸)は、ロボット10の前後方向に延びている。y軸(ピッチ軸)は、ロボット10の左右方向に延びている。z軸(ヨー軸)は、ロボット10の上下方向に延びている。
また、以下においては、図示および説明の明瞭化を目的として、関節と、その関節の関節角を変化させる関節アクチュエータに同一の参照番号を付している。例えば、左膝関節24と記載することもあるし、その関節の関節角を変化させる関節アクチュエータに参照番号24を付すこともある。詳しくは後述するが、各関節アクチュエータは、関節を駆動するモータと、モータ関節の角度を検出するエンコーダを内蔵している。
A
As shown in FIG. 1, the
FIG. 2 illustrates a mechanical connection state of each joint of the
In the following, for the sake of clarity of illustration and description, the same reference numerals are given to joints and joint actuators that change the joint angles of the joints. For example, the left knee joint 24 may be described, or a joint actuator that changes the joint angle of the joint may be denoted by
左脚20は、左上腿22、左膝関節24、左下腿26、左足首関節28、左6軸力センサ29、左足先30を備えている。左膝関節24は、y軸回りの関節角が可変であり、1つのモータを備えている。左足首関節28は、y軸回りの関節角と、x軸回りの関節角が可変であり、それぞれの軸毎にモータを備えている。
左6軸力センサ29は、左足首関節28と左足先30との間に介装されており、それらとの間に作用する6軸力を検出する。具体的には、x軸方向の力と、y軸方向の力と、z軸方向の力と、x軸回りのモーメントと、y軸回りのモーメントと、z軸回りのモーメントを検出する。
右脚32は、右上腿33、右膝関節34、右下腿35、右足首関節36、右6軸力センサ38、右足先39を備えている。右膝関節34は、y軸回りの関節角が可変であり、1つのモータを備えている。右足首関節36は、y軸回りの関節角と、x軸回りの関節角が可変であり、それぞれの軸毎にモータを備えている。右6軸力センサ38は、右足首関節36と右足先39との間に作用する6軸力を検出する。
The
The left six-
The
左脚20は、左股関節42によって腰40と接続されている。左股関節42は、z軸回りの関節角を変化させるモータ43と、y軸回りの関節角を変化させるモータ44と、x軸回りの関節角を変化させるモータ46を備えている。
右脚32は、右股関節50によって腰40と接続されている。右股関節50は、z軸回りの関節角を変化させるモータ52と、y軸回りの関節角を変化させるモータ53と、x軸回りの関節角を変化させるモータ54を備えている。
The
The
左腕60は、左上腕61、左肘関節62、左前腕63、左掌64を備えている。左肘関節62は、y軸回りの関節角が可変である。右腕70は、右上腕71、右肘関節72、右前腕73、右掌74を備えている。右肘関節72は、y軸回りの関節角が可変である。
左腕60は、左肩関節66によって肩59と接続されている。左肩関節66は、x軸回りとy軸回りの関節角が可変である。右腕70は、右肩関節76によって肩59と接続されている。右肩関節76は、x軸回りとy軸回りの関節角が可変である
頭部80は、首関節82を介して肩59と接続されている。首関節82は、y軸回りの関節角を変化させるモータ84と、z軸回りの関節角を変化させるモータ83を備えている。
The
The
図3は、ロボット10の制御系を模式的に示すブロック図である。中央コントローラ102には、通信線104によってN個の関節コントローラ〔1〕〜〔N〕が直列に接続されている。中央コントローラ102は、胴体19内に装着されている。関節コントローラ〔1〕〜〔N〕のそれぞれには、モータ〔1〕〜〔N〕と、エンコーダ〔1〕〜〔N〕が1つずつ接続されている。関節コントローラと、モータと、エンコーダは各関節に内蔵されている。モータは、各関節を駆動する。エンコーダは、各関節の関節アクチュエータの回転角度(関節角度)を検出する。モータとエンコーダは、各関節の軸毎に設けられている。例えば、左足首関節28は、y軸回りとx軸回りの関節角が可変なので、y軸用のモータとエンコーダ、x軸用のモータとエンコーダを備えている。
関節コントローラを1つの関節のモータとエンコーダに接続することもできる。例えば、左足首関節28用の関節コントローラを、y軸用のモータとエンコーダに接続し、x軸用のモータとエンコーダに接続する。
FIG. 3 is a block diagram schematically showing a control system of the
It is also possible to connect the joint controller to the motor and encoder of one joint. For example, the joint controller for the left ankle joint 28 is connected to the y-axis motor and encoder, and is connected to the x-axis motor and encoder.
中央コントローラ102には、通信線106によってM個のセンサコントローラ〔1〕〜〔M〕と、L個のスイッチコントローラ〔1〕〜〔L〕と、音響コントローラ110が直列に接続されている。センサコントローラ〔1〕〜〔M〕のそれぞれには、センサ〔1〕〜〔M〕が1つずつ接続されている。センサ〔1〕〜〔M〕は、例えば、ロボット10の姿勢変化を検出するジャイロや、外部の状態を撮影するCCDカメラである。
スイッチコントローラ〔1〕〜〔L〕のそれぞれには、スイッチ〔1〕〜〔L〕が1つずつ接続されている。スイッチ〔1〕〜〔L〕は、各種機器(例えば、ランプ、ブザー)のオン/オフを行う。
音響コントローラ110には、スピーカ112が接続されている。音響コントローラ110は、スピーカ112を制御することにより、ロボット10を喋らせる。
M sensor controllers [1] to [M], L switch controllers [1] to [L], and an
One switch [1] to [L] is connected to each of the switch controllers [1] to [L]. The switches [1] to [L] turn on / off various devices (for example, lamps and buzzers).
A
通信線104、106は、シリアル通信線である。中央コントローラ102は、関節コントローラ〔1〕〜〔N〕、センサコントローラ〔1〕〜〔M〕、スイッチコントローラ〔1〕〜〔L〕、音響コントローラ110との間で、各種情報をパケット通信する。シリアルの通信線104、106を介してパケット通信を行うことにより、中央コントローラ102と、関節コントローラ〔1〕〜〔N〕等との間の電気的インターフェイスが簡略化されている。
なお、以下においては、本発明と直接関係しない、センサコントローラ〔1〕〜〔M〕、スイッチコントローラ〔1〕〜〔L〕、音響コントローラ110に係る説明は省略する。
The communication lines 104 and 106 are serial communication lines. The
In the following, descriptions of the sensor controllers [1] to [M], the switch controllers [1] to [L], and the
図4に示されているように、中央コントローラ102は、動作指令値演算ユニット120、画像処理ユニット122、ロボット外通信ユニット124、ロボット内通信ユニット126を備えている。
画像処理ユニット122には、画像センサを内蔵したCCDカメラ123が接続されている。画像処理ユニット122は、CCDカメラ123から受信する画像信号を用いてパターン認識を行い、動作指令値演算ユニット120に送信する。既に図3を用いて説明したように、中央コントローラ102には、センサ〔1〕〜〔M〕が接続されているが、図4においては、それらをCCDカメラ123で代表し、その他のものは図示を省略している。
ロボット外通信ユニット124には、アンテナ125が接続されている。ロボット外通信ユニット124は、アンテナ125が受信したロボット10に対する動作要求を中央コントローラ102で処理可能なデータ形式に変換し、動作指令値演算ユニット120に送信する。また、ロボット外通信ユニット124は、動作指令値演算ユニット120からのロボット10の状態に係る情報(例えば、どのような動作を行っているか、異常発生の有無等)をアンテナ125から外部に送信する。
As shown in FIG. 4, the
The
An
動作指令値演算ユニット120と接続されているロボット内通信ユニット126は、通信異常看視部126a、通信ポート126bを備えている。通信ポート126bは、上述した関節コントローラ〔1〕〜〔N〕と、センサコントローラ〔1〕〜〔M〕と、スイッチコントローラ〔1〕〜〔L〕と、音響コントローラ110との間で通信を行う。通信異常看視部126aは、関節コントローラ〔1〕〜〔N〕から入力される信号を看視しており、異常を検出した場合には、異常検出信号を動作指令値演算ユニット120に送信する。詳しくは後述するが、通信異常看視部126aが異常を検出するのは、関節コントローラ〔1〕〜〔N〕から受信確認信号が返信されてこなかった場合、モータ異常信号が送信されてきた場合である。
The
動作指令値演算ユニット120には、データ記憶部120aと異常処理ロジック記憶部120bが設けられている。動作指令値演算ユニット120は、画像処理ユニット122と、ロボット外通信ユニット124と、ロボット内通信ユニット126から入力される信号をデータ記憶部に記憶されている動作制御プログラムに従って処理し、動作指令値を演算する。動作指令値は、各関節のモータに対して回転すべき角度を指令する。
さらに、動作指令値演算ユニット120は、異常処理ロジック記憶部120bに記憶されている異常処理ロジックに基づいて、関節コントローラ〔1〕〜〔N〕に送信する異常処理手順の種類を選択する。異常処理手順は、関節コントローラに異常が発生した場合に、その関節コントローラが行うべき動作を指定する(詳しくは後述する)。
The operation command
Furthermore, the operation command
動作指令値演算ユニット120は、ロボット内通信ユニット126を介して動作コマンドを関節コントローラ〔1〕〜〔N〕に送信する。動作コマンドには、アドレス、上述した動作指令値、異常処理手順の種類が含まれている。アドレスは、送信される動作コマンドがどの関節コントローラに対するものであるかを指定する。
The motion command
関節コントローラ〔1〕〜〔N〕について説明する。なお、関節コントローラ〔1〕〜〔N〕の構成は共通しているので、図5に示されている関節コントローラ150で代表して説明する。
図5に示されているように、関節コントローラ150は、通信制御部152、受信確認信号返信部154、モータ制御部156、モータ駆動回路176を備えている。関節コントローラ150には、電力線168を介して電力が供給されている。
通信制御部152には、通信線104と、モータ制御部156が接続されている。通信制御部152は、通信線104を介して中央コントローラ102から受信する動作コマンドに含まれているアドレスから、その動作コマンドが自身に対するものであるか否かを判別する。動作コマンドが自身に対するものであった場合には、通信制御部152は、その動作コマンドをモータ制御部156に送信する。また、通信制御部152は、モータ制御部156からの信号を中央コントローラ102に送信する。
受信確認信号返信部154は、予め記憶している動作コマンド(アドレス、動作指令値、異常処理手順の種類)と、受信した動作コマンドを照合する。そして、照合結果が一致する場合には動作コマンドは正常であると判別し、不一致の場合には動作コマンドは正常でない(異常である)と判別する。受信確認信号返信部154は、動作コマンドが正常な場合に、受信確認信号を中央コントローラ102に返信する。
The joint controllers [1] to [N] will be described. Since the joint controllers [1] to [N] have the same configuration, the
As shown in FIG. 5, the
The
The reception confirmation
モータ制御部156は、モータ駆動指令生成部158、通信異常看視部160、モータ異常看視部162、異常処理部163を備えている。
モータ駆動指令生成部158は、動作コマンドに含まれている動作指令値に応じた指令信号をモータ駆動回路176に送信する。モータ駆動回路176には、電力線169を介してモータ駆動用の電力が直接入力されている。モータ駆動回路176は、モータ駆動指令生成部158からの指令信号に基づいて、モータ180を回転させる。モータ180の回転は、その駆動軸に連結されている減速機構(例えば、ハーモニックドライブ)によって減速されて関節を回転させる。関節角の変化は、エンコーダ182によって検出される。エンコーダ182が検出した各関節の回転角度は、モータ制御部156に送信される。
The
The motor drive
通信異常看視部160は、モータ制御部156と、モータ駆動回路176とモータ180とエンコーダ182との間の通信の状態を看視している。そして通信異常看視部160は、モータ制御部156と、モータ駆動回路176等との間の通信状態が異常であった場合(例えば、断線による通信不能、信号が電気的ノイズの影響を受けた場合等)に、モータ異常信号を中央コントローラ102に送信する。なお、通信異常看視部160で中央コントローラ102から送信されてくる動作コマンドを看視し、動作コマンドが異常であった場合(例えば、パケットの破損)に、異常信号を中央コントローラ102に送信するように構成することもできる。
The communication
モータ異常看視部162は、モータ180の異常を看視している。具体的には、モータ駆動指令生成部158が送信した指令信号に応じてモータ180が回転しているか否かを看視している。指令信号に応じてモータ180が回転しているか否かは、エンコーダ182が検出した関節回転角度から判別する。モータ異常看視部162は、指令信号に応じてモータ180が回転しなかった場合に、モータ異常信号を中央コントローラ102に送信する。
モータ制御部156には、6軸力センサ29、38が接続されている。6軸力センサ29、38の検出信号は、後述する関節コントローラ処理S200に従ってモータ180を制御するときに、脚20、32が接地したか否かを判別するために用いられる。なお、6軸力センサ29、38が接続される関節コントローラ150は、脚20、32の関節アクチュエータに装着されているもののみであり、腕60、70の関節アクチュエータに装着されている関節コントローラ150には接続されない。また、6軸力センサ29、38は、中央コントローラ102にも接続されている。
The motor
Six-
異常処理部163には、異常処理手順種類記憶部164と、異常処理手順内容記憶部166、特定処理手順種類記憶部171、特定処理手順内容記憶部172が設けられている。異常処理手順種類記憶部164は、中央コントローラ102から送信されてくる動作コマンドに含まれている異常処理手順の種類を記憶する。異常処理手順内容記憶部166は、異常処理手順の種類に対応した異常処理手順の内容を記憶している。特定処理手順種類記憶部171は、中央コントローラ102から送信されてくる動作コマンドに含まれている特定処理手順の種類を記憶する。特定処理手順内容記憶部172は、特定処理手順の種類に対応した特定処理手順の内容を記憶している。詳しくは後述するが、異常処理部163は、関節コントローラ150に異常が発生した場合に、異常処理手順内容記憶部164が記憶している異常処理手順の種類、異常処理手順内容記憶部166が記憶している異常処理手順内容、特定処理手順種類記憶部171が記憶している特定処理の種類、特定処理手順内容記憶部172が記憶している特定処理手順内容を用いて、モータ180を制御する。
The
ロボット10において、その動作を制御したり、異常発生に対処するために実行される種々の処理について、フローチャート等を参照しながら説明する。
図6に示されている中央コントローラ処理S10は、中央コントローラ102で処理される。中央コントローラ処理S10の最初の処理S12では、「k」の値の初期値として「1」が設定される。「k」は、後述するステップにおいて、関節コントローラ〔1〕〜〔N〕のそれぞれに係る処理を順次行うために用いられる。
Various processes executed to control the operation of the
The central controller processing S10 shown in FIG. 6 is processed by the
S12に続いて、図7に示されている異常処理手順種類選択処理S20が行われる。異常処理手順種類選択処理S20は、関節コントローラ〔1〕〜〔N〕で異常が発生する前に、異常が発生した場合に、異常な関節コントローラが実行すべき異常処理手順の種類を選択する。選択された異常処理手順の種類は、個々の関節コントローラに記憶しておく。このように構成しておくことにより、中央コントローラ102が特定の関節コントローラを制御できないような異常が発生した場合に、その特定の関節コントローラは、それ自身で異常に対処することができる。中央コントローラ102が特定の関節コントローラを制御できないような異常とは、例えば、特定の関節コントローラの通信制御部152の故障、特定の関節コントローラ近傍の通信線104の断線等である。
なお、首関節82の制御には、異常処理手順種類選択処理S20、および後述する特定処理手順種類選択処理S100は適用されない。
Subsequent to S12, an abnormal process procedure type selection process S20 shown in FIG. 7 is performed. The abnormality processing procedure type selection process S20 selects the type of abnormality processing procedure to be executed by the abnormal joint controller when an abnormality occurs before the abnormality occurs in the joint controllers [1] to [N]. The type of the selected abnormality processing procedure is stored in each joint controller. By configuring in this way, when an abnormality occurs in which the
Note that the abnormal process procedure type selection process S20 and the specific process procedure type selection process S100 described later are not applied to the control of the neck joint 82.
異常処理手順種類選択処理S20を実行すると、異常処理手順の種類が選択される。特定処理手順種類選択処理S100を実行すると、特定処理手順の種類が選択される。異常処理手順の種類と、特定処理手順の種類は共通であり、種類〔1〕〜〔7〕である。種類〔1〕〜〔7〕それぞれの具体的な内容(異常処理手順内容、特定処理手順内容)は、図8に示されている。
図7に示されているように、異常処理手順種類選択処理S20のS22では、関節コントローラ〔k〕が遊脚の足首関節28、36のものか否かを判別する。中央コントローラ処理S10のS12において「k」の初期値が「1」に設定されているので、異常処理手順種類選択処理S20が開始されると、関節コントローラ〔1〕についての処理がまず実行される。S22で関節コントローラ〔k〕が遊脚の足首関節28、36のものであると判別した場合(YESの場合)には、S22に移行する。
When the abnormal process procedure type selection process S20 is executed, the type of the abnormal process procedure is selected. When the specific process procedure type selection process S100 is executed, the type of the specific process procedure is selected. The types of abnormality processing procedures and the types of specific processing procedures are common and are types [1] to [7]. The specific contents (abnormal processing procedure contents, specific processing procedure contents) of types [1] to [7] are shown in FIG.
As shown in FIG. 7, in S22 of the abnormal process procedure type selection process S20, it is determined whether or not the joint controller [k] belongs to the ankle joints 28 and 36 of the free legs. Since the initial value of “k” is set to “1” in S12 of the central controller process S10, when the abnormal process procedure type selection process S20 is started, the process for the joint controller [1] is first executed. . If it is determined in S22 that the joint controller [k] belongs to the free leg ankle joints 28 and 36 (YES), the process proceeds to S22.
S22では、脚が接地する前の異常処理手順として種類〔4〕を選択する。図8に示されているように、種類〔4〕の異常処理手順内容は、モータのトルクをゼロにし、フリーに回転できる状態にすることである。S22に続くS24では、脚接地後の異常処理手順として種類〔1〕を選択する。種類〔1〕の異常処理手順内容は、モータのトルクを除々に大きくし、所定時間後にロックすることである。S24を実行してから、異常処理手順種類選択処理S20を終了する。
S22で関節コントローラ〔k〕が遊脚の足首関節28、36のものでないと判別した場合(NOの場合)には、S26に移行する。
In S22, the type [4] is selected as the abnormality processing procedure before the leg contacts the ground. As shown in FIG. 8, the type [4] abnormality processing procedure content is to make the motor torque zero and to be able to rotate freely. In S24 following S22, the type [1] is selected as the abnormality processing procedure after the contact with the leg. The type [1] abnormal processing procedure is to gradually increase the torque of the motor and lock it after a predetermined time. After executing S24, the abnormal process procedure type selection process S20 is terminated.
If it is determined in S22 that the joint controller [k] does not belong to the free leg ankle joints 28 and 36 (NO), the process proceeds to S26.
S26では、関節コントローラ〔k〕は立脚の足首関節28、36のものか否かを判別する。S26で関節コントローラ〔k〕は立脚の足首関節28、36のものであると判別した場合(YESの場合)には、S28を行う。S28では、脚接地前の異常処理手順として種類〔5〕を選択する。種類〔5〕の異常処理手順内容は、モータのトルクを中間的な大きさとし、それ以上のトルクが作用した場合には回転させることである。S28の次に行われるS30では、脚接地後の異常処理手順として種類〔1〕を選択する。そして、異常処理手順種類選択処理S20を終了する。なお、S26の判別が行われた時にロボット10が両足立脚の状態である場合には、S28をスキップしてS30のみを行う。
S26で関節コントローラ〔k〕は立脚の足首関節28、36のものでないと判別した場合(NOの場合)には、S32を実行する。
In S26, the joint controller [k] determines whether or not the leg ankle joints 28 and 36 are present. When it is determined in S26 that the joint controller [k] belongs to the ankle joints 28 and 36 of the stance (in the case of YES), S28 is performed. In S28, the type [5] is selected as the abnormality processing procedure before the leg contact. The type [5] abnormality processing procedure is to set the torque of the motor to an intermediate magnitude and to rotate it when more torque is applied. In S30 performed next to S28, the type [1] is selected as the abnormality processing procedure after the leg contact. Then, the abnormal process procedure type selection process S20 is terminated. If the
If it is determined in S26 that the joint controller [k] does not belong to the pedestal ankle joints 28 and 36 (NO), S32 is executed.
S32では、関節コントローラ〔k〕は遊脚の膝関節24、34のものか否かを判別する。S32で関節コントローラ〔k〕は遊脚の膝関節24、34のものであると判別した場合(YESの場合)には、S34を行う。S34では、脚接地前の異常処理手順として種類〔4〕を選択する。そして、S34に続くS36では、脚接地後の異常処理手順として種類〔2〕を選択する。種類〔2〕の異常処理手順内容は、モータのトルクを除々に小さくし、所定時間後にフリーに回転できる状態にすることである。S36を行ってから、異常処理手順種類選択処理S20を終了する。
S32で関節コントローラ〔k〕は遊脚の膝関節24、34のものでないと判別した場合(NOの場合)には、S38に移行する。
In S32, the joint controller [k] determines whether or not the knee joint 24 or 34 of the free leg is present. If it is determined in S32 that the joint controller [k] belongs to the knee joints 24 and 34 of the free legs (in the case of YES), S34 is performed. In S34, the type [4] is selected as the abnormality processing procedure before the leg contact. Then, in S36 following S34, the type [2] is selected as the abnormality processing procedure after the leg contact. The type [2] abnormality processing procedure is to gradually reduce the motor torque so that it can rotate freely after a predetermined time. After performing S36, the abnormal process procedure type selection process S20 is terminated.
If it is determined in S32 that the joint controller [k] does not belong to the knee joints 24 and 34 of the free legs (in the case of NO), the process proceeds to S38.
S38では、関節コントローラ〔k〕は立脚の膝関節24、34のものか否かを判別する。S38で関節コントローラ〔k〕は立脚の膝関節24、34のものであると判別した場合(YESの場合)には、S40を実行する。S40を実行すると、異常処理手順の種類〔2〕が選択される。S40を実行してから、異常処理手順種類選択処理S20を終了する。
S38で関節コントローラ〔k〕は立脚の膝関節24、34のものでないと判別した場合(NOの場合)には、S42に移行する。
S42では、関節コントローラ〔k〕は遊脚の股関節42、50のものか否かを判別する。S42で関節コントローラ〔k〕は遊脚の股関節42、50のものであると判別した場合(YESの場合)には、S44に移行する。
S44では、脚接地前の異常処理手順として種類〔5〕を選択する。S44の次に行われるS46では、脚接地後の異常処理手順として種類〔2〕を選択する。S46実行後、異常処理手順種類選択処理S20を終了する。
S42で関節コントローラ〔k〕は遊脚の股関節42、50のものでないと判別した場合(NOの場合)には、S48に移行する。
In S38, the joint controller [k] determines whether or not the knee joints 24 and 34 are standing legs. If it is determined in S38 that the joint controller [k] belongs to the knee joints 24 and 34 of the standing leg (in the case of YES), S40 is executed. When S40 is executed, the type [2] of the abnormality processing procedure is selected. After executing S40, the abnormal process procedure type selection process S20 is terminated.
When it is determined in S38 that the joint controller [k] does not belong to the knee joints 24 and 34 of the standing legs (in the case of NO), the process proceeds to S42.
In S42, the joint controller [k] determines whether or not the
In S44, the type [5] is selected as the abnormality processing procedure before the leg contact. In S46 performed after S44, the type [2] is selected as the abnormality processing procedure after the contact with the legs. After the execution of S46, the abnormal process procedure type selection process S20 is terminated.
If it is determined in S42 that the joint controller [k] does not belong to the
S48では、関節コントローラ〔k〕は立脚の股関節42、50のものか否かを判別する。S48で関節コントローラ〔k〕は立脚の股関節42、50のものであると判別した場合(YESの場合)には、S50を実行する。S50を実行すると、異常処理手順の種類〔2〕が選択される。そして、異常処理手順種類選択処理S20を終了する。S48で関節コントローラ〔k〕は立脚の股関節42、50のものでないと判別した場合(NOの場合)には、S52を行う。
S52では、関節コントローラ〔k〕は肩関節66、76のものであるか否かを判別する。S52で関節コントローラ〔k〕は肩関節66、76のものであると判別した場合(YESの場合)には、S54に移行する。
S54では、異常処理手順の種類〔6〕が選択される。種類〔6〕の異常処理手順内容は、モータの回転角を予め定められている角度にロックすることである。S54を実行してから、異常処理手順種類選択処理S20を終了する。
In S48, the joint controller [k] determines whether or not the
In S52, it is determined whether or not the joint controller [k] belongs to the
In S54, the type [6] of the abnormality processing procedure is selected. The type [6] abnormality processing procedure is to lock the rotation angle of the motor to a predetermined angle. After executing S54, the abnormal process procedure type selection process S20 is terminated.
S52で関節コントローラ〔k〕は肩関節66、76のものでないと判別した場合(NOの場合)には、S56を行う。
S56では、関節コントローラ〔k〕は肘関節62、72のものか否かを判別する。S56で関節コントローラ〔k〕は肘関節62、72のものであると判別した場合(YESの場合)には、S58を行う。
S58を行うと、異常処理手順の種類〔3〕が選択される。種類〔3〕の異常処理手順内容は、モータの回転速度を除々に遅くし、所定時間後にロックすることである。そして、異常処理手順種類選択処理S20を終了する。
S56で関節コントローラ〔k〕は肘関節62、72のものでないと判別した場合(NOの場合)には、そのまま異常処理手順種類選択処理S20を終了する。
If it is determined in S52 that the joint controller [k] is not the
In S56, it is determined whether or not the joint controller [k] is at the elbow joints 62 and 72. If it is determined in S56 that the joint controller [k] is that of the elbow joints 62 and 72 (YES), S58 is performed.
When S58 is performed, the type [3] of the abnormality processing procedure is selected. The content of the abnormality processing procedure of type [3] is that the rotational speed of the motor is gradually decreased and locked after a predetermined time. Then, the abnormal process procedure type selection process S20 is terminated.
If it is determined in S56 that the joint controller [k] is not the one of the elbow joints 62 and 72 (in the case of NO), the abnormal process procedure type selection process S20 is terminated as it is.
図6に示されているように、異常処理手順種類選択処理S20の次には、S70を実行する。S70では、動作コマンドを関節コントローラ〔1〕〜〔N〕送信する。この場合に、動作コマンドに含まれているアドレスは関節コントローラ〔k〕に対応したものに設定される。例えば、「k」が「5」であるときには、アドレスは関節コントローラ〔5〕のものに設定される。この場合、動作コマンドを受信した関節コントローラ〔5〕は、アドレスからその動作コマンドが自身に対するものであると判別し、動作コマンドを取り込む。
S70に続いて、S72が行われる。S72では、関節コントローラ〔k〕から受信確認信号が返信されてきたか否かを判別する。既に説明したように、受信確認信号は、動作コマンドを受信した関節コントローラ〔k〕から返信されてくる。S72で受信確認信号が返信されてきたと判別した場合(YESの場合)には、S74に移行する。
S74では、関節コントローラ〔k〕からモータ異常信号が送信されてきたか否かを判別する。S74でモータ異常信号が送信されてこないと判別した場合(NOの場合)には、S76を行う。
As shown in FIG. 6, S70 is executed after the abnormal process procedure type selection process S20. In S70, motion commands [1] to [N] are transmitted. In this case, the address included in the motion command is set to correspond to the joint controller [k]. For example, when “k” is “5”, the address is set to that of the joint controller [5]. In this case, the joint controller [5] that has received the motion command determines that the motion command is for itself from the address, and takes in the motion command.
Subsequent to S70, S72 is performed. In S72, it is determined whether or not a reception confirmation signal is returned from the joint controller [k]. As already described, the reception confirmation signal is returned from the joint controller [k] that has received the operation command. If it is determined in S72 that the reception confirmation signal has been returned (in the case of YES), the process proceeds to S74.
In S74, it is determined whether or not a motor abnormality signal has been transmitted from the joint controller [k]. If it is determined in S74 that a motor abnormality signal has not been transmitted (NO), S76 is performed.
S76では、「k」の値に「1」を加算する。そして、S78を実行する。
S78では、「k」の値が「N+1」に等しいか否かを判別する。S78で「k」の値が「N+1」に等しくないと判別した場合(NOの場合)には、異常処理手順種類選択処理S20以降の処理が再び行われる。「N」は関節コントローラの総個数であるので、「k」の値が「N+1」に等しいと判別されるのは、全ての関節コントローラに対してS20〜S76が実行された場合である。S78で「k」の値が「N+1」に等しいと判別された場合(YESの場合)には、S12以降の処理が再び実行される。
一方、S72で受信確認信号が返信されてこないと判別した場合(NOの場合)、あるいはS74でモータ異常信号が送信されてきたと判別した場合(YESの場合)、すなわち異常が発生したときには、特定処理手順種類選択処理S100に移行する。
In S76, “1” is added to the value of “k”. Then, S78 is executed.
In S78, it is determined whether or not the value of “k” is equal to “N + 1”. If it is determined in S78 that the value of “k” is not equal to “N + 1” (in the case of NO), the process after the abnormal process procedure type selection process S20 is performed again. Since “N” is the total number of joint controllers, it is determined that the value of “k” is equal to “N + 1” when S20 to S76 are executed for all joint controllers. If it is determined in S78 that the value of “k” is equal to “N + 1” (in the case of YES), the processes after S12 are executed again.
On the other hand, if it is determined in S72 that a reception confirmation signal has not been returned (in the case of NO), or if it is determined in S74 that a motor abnormality signal has been transmitted (in the case of YES), that is, an abnormality has occurred, The process proceeds to process procedure type selection process S100.
図9に示されているように、特定処理手順種類選択処理S100の最初の処理S102では、異常なのは遊脚の足首関節28、36か否かを判別する。S102で異常なのは遊脚の足首関節28、36であると判別した場合(YESの場合)には、S104を実行する。S104を実行すると、脚接地前の特定処理手順として種類〔7〕が選択される。図8に示されているように、特定処理手順の種類〔7〕の特定処理手順内容は、モータの回転速度が指令値に従うことである。
S104に続くS106では、脚接地後の特定処理手順として種類〔1〕を選択する。そして、特定処理手順種類選択処理S100を終了する。
S102で異常なのは遊脚の足首関節28、36でないと判別した場合(NOの場合)には、S108に移行する。
As shown in FIG. 9, in the first process S102 of the specific process procedure type selection process S100, it is determined whether or not the ankle joints 28 and 36 of the free leg are abnormal. If it is determined in S102 that the abnormal leg ankle joints 28 and 36 are YES (in the case of YES), S104 is executed. When S104 is executed, the type [7] is selected as the specific processing procedure before the leg contact. As shown in FIG. 8, the specific processing procedure content of the type [7] of the specific processing procedure is that the rotation speed of the motor follows the command value.
In S106 following S104, the type [1] is selected as the specific processing procedure after the contact with the leg. Then, the specific process procedure type selection process S100 ends.
If it is determined in S102 that the abnormal leg is not the ankle joint 28 or 36 of the free leg (in the case of NO), the process proceeds to S108.
S108では、異常なのは立脚の足首関節28、36か否かを判別する。S108で異常なのは立脚の足首関節28、36であると判別した場合(YESの場合)には、S110に移行する。
S110では、脚接地前の特定処理手順として種類〔7〕が選択される。S110に続くS112では、接地後の特定処理手順として種類〔1〕を選択する。S112を実行してから、特定処理手順種類選択処理S100を終了する。なお、S108の判別が行われた時にロボット10が両足立脚の状態である場合には、S110をスキップしてS112のみが行われる。
In S108, it is determined whether or not the ankle joints 28 and 36 of the stance are abnormal. If it is determined in S108 that the ankle joints 28 and 36 of the stance are abnormal (in the case of YES), the process proceeds to S110.
In S110, the type [7] is selected as the specific processing procedure before the leg contact. In S112 following S110, the type [1] is selected as the specific processing procedure after the grounding. After executing S112, the specific process procedure type selection process S100 is terminated. If the
S108で異常なのは立脚の足首関節28、36でないと判別した場合(NOの場合)には、S114を行う。
S114を行うと、異常なのは遊脚の膝関節24、34であるか否かが判別される。S114で異常なのは遊脚の膝関節24、34であると判別された場合(YESの場合)には、脚接地前の特定処理手順として種類〔7〕を選択する。そして、S118に移行し、脚接地後の特定処理手順として種類〔2〕を選択する。S118を実行してから、特定処理手順種類選択処理S100を終了する。
S114で異常なのは遊脚の膝関節24、34でないと判別された場合(NOの場合)には、S120に移行する。
If it is determined in S108 that the abnormality is not the ankle joint 28 or 36 of the stance (in the case of NO), S114 is performed.
When S114 is performed, it is determined whether or not the knee joints 24 and 34 of the free leg are abnormal. When it is determined in S114 that the abnormalities are the knee joints 24 and 34 of the free legs (in the case of YES), the type [7] is selected as the specific processing procedure before the leg contact. Then, the process proceeds to S118, and the type [2] is selected as the specific processing procedure after the leg contact. After executing S118, the specific process procedure type selection process S100 is terminated.
If it is determined in S114 that the abnormal leg is not the knee joint 24, 34 of the free leg (in the case of NO), the process proceeds to S120.
S120では、異常なのは立脚の膝関節24、34か否かを判別する。S120で異常なのは立脚の膝関節24、34であると判別した場合(YESの場合)には、S122を実行する。S122を実行すると、特定処理手順の種類〔2〕が選択される。そして、特定処理手順種類選択処理S100を終了する。
S120で異常なのは立脚の膝関節24、34でないと判別した場合(NOの場合)には、S124に移行する。S124では、異常なのは遊脚の股関節42、50か否かを判別する。S124で異常なのは遊脚の股関節42、50であると判別した場合(YESの場合)には、S126を実行する。
S126を実行すると、脚接地前の特定処理手順として種類〔7〕が選択される。S126に続くS128では、脚接地後の特定処理手順として種類〔2〕が選択される。S128実行後、特定処理手順種類選択処理S100を終了する。
S124で異常なのは遊脚の股関節42、50でないと判別した場合(NOの場合)には、S130に移行する。
In S120, it is determined whether or not the knee joints 24 and 34 of the standing leg are abnormal. When it is determined in S120 that the abnormalities are the knee joints 24 and 34 of the stance (in the case of YES), S122 is executed. When S122 is executed, the type [2] of the specific processing procedure is selected. Then, the specific process procedure type selection process S100 ends.
If it is determined that the abnormal knee joints 24 and 34 are not abnormal in S120 (NO), the process proceeds to S124. In S124, it is determined whether or not the
When S126 is executed, the type [7] is selected as the specific processing procedure before the leg contact. In S128 following S126, the type [2] is selected as the specific processing procedure after the contact with the leg. After executing S128, the specific process procedure type selection process S100 is terminated.
If it is determined in S124 that the abnormal leg is not the
S130では、異常なのは立脚の股関節42、50か否かを判別する。S130で異常なのは立脚の股関節42、50であると判別した場合(YESの場合)には、S132を実行する。S132を実行すると、特定処理手順として種類〔2〕が選択される。そして、特定処理手順種類選択処理S100を終了する。
S130で異常なのは立脚の股関節42、50でないと判別した場合(NOの場合)には、S134を行う。
In S130, it is determined whether or not it is the standing
If it is determined in S130 that it is not the standing
S134を行うと、異常なのは肩関節66、76か否かが判別される。S134において異常なのは肩関節66、76であると判別された場合(YESの場合)には、S136に移行する。S136では、肘関節62、72に対して特定処理手順の種類〔6〕を選択するとともに、脚の関節(股関節42、50、膝関節24、34、足首関節28、36)に対して特定処理手順の種類〔7〕を選択する。S136を行ってから、特定処理手順種類選択処理S100を終了する。
S134において異常なのは肩関節66、76でないと判別された場合(NOの場合)には、S138を行う。
S138を行うと、異常なのは肘関節62、72であるか否かが判別される。S138で異常なのは肘関節62、72であると判別された場合(YESの場合)には、S140に移行する。S140では、肩関節66、76に対して特定処理手順の種類〔6〕を選択するとともに、脚の関節に対して特定処理手順の種類〔7〕を選択する。そして、特定処理手順種類選択処理S100を終了する。
S138で異常なのは肘関節62、72でないと判別された場合(NOの場合)には、そのまま特定処理手順種類選択処理S100を終了する。
When S134 is performed, it is determined whether or not the
If it is determined in S134 that it is not the
When S138 is performed, it is determined whether or not the elbow joints 62 and 72 are abnormal. When it is determined that the elbow joints 62 and 72 are abnormal in S138 (in the case of YES), the process proceeds to S140. In S140, the type [6] of the specific processing procedure is selected for the
If it is determined that the elbow joints 62 and 72 are not abnormal in S138 (in the case of NO), the specific process procedure type selection process S100 is terminated as it is.
図6に示されているように、特定処理手順種類選択処理S100に
続いて、S150を実行する。S150を実行すると、選択された特定処理手順の種類が正常な関節コントローラに送信される。例えば、異常なのが関節コントローラ〔6〕であった場合には、関節コントローラ〔1〕〜〔5〕、関節コントローラ〔7〕〜〔N〕に選択された特定処理手順の種類が送信される。この処理S150が実行されることにより、正常な関節コントローラは、選択された特定処理手順の種類に従って動作する。
S150に続くS152では、ロボット10が安定して静止したか否かを判別する。S152においてロボット10が安定して静止していないと判別した場合(NOの場合)には、そのまま待機する。S152においてロボット10が安定して静止したと判別した場合(YESの場合)には、中央コントローラ処理S10を終了する。
As shown in FIG. 6, S150 is executed subsequent to the specific process procedure type selection process S100. When S150 is executed, the type of the selected specific processing procedure is transmitted to a normal joint controller. For example, when the joint controller [6] is abnormal, the type of the specific processing procedure selected is transmitted to the joint controllers [1] to [5] and the joint controllers [7] to [N]. By executing this processing S150, the normal joint controller operates according to the type of the selected specific processing procedure.
In S152 following S150, it is determined whether or not the
関節コントローラ〔1〕〜〔N〕で実行される関節コントローラ処理S200について説明する。
図10に示されているように、関節コントローラ処理S200のS202では、中央コントローラ102から動作コマンドを受信したか否かを判別する。S202で動作コマンドを受信したと判別した場合(YESの場合)には、S204に移行する。S204では、受信した動作コマンドは正常であるか否かを判別する。S204で受信した動作コマンドは正常であると判別した場合(YESの場合)には、S206を実行する。
The joint controller process S200 executed by the joint controllers [1] to [N] will be described.
As shown in FIG. 10, in S202 of the joint controller process S200, it is determined whether or not an operation command has been received from the
S206を実行すると、受信確認信号が中央コントローラ102に返信される。受信確認信号には、受信を確認した関節コントローラのアドレスが含まれている。このアドレスにより、中央コントローラ102は、受信確認信号がどの関節コントローラから返信されてきたのかを識別することができる。
S206に続くS208では、モータ180が正常であるか否かを判別する。既に説明したように、モータ180が正常であるか否かは、通信異常看視部160、モータ異常看視部162が看視している。S208でモータ180は正常であると判別した場合(YESの場合)には、S210を実行する。
S210を実行すると、動作指令値に従ってモータ180が制御される。よってロボット10は、動作指令値どおりの動作を行う。
S210に続くS212では、異常処理手順種類記憶部164に記憶されている異常処理手順の種類を更新する。このようにして、中央コントローラ102から異常処理手順の種類が送信されてくる毎に、異常処理手順の種類が更新される。S212を実行してから、S202以降の処理が再び行われる。
When S206 is executed, a reception confirmation signal is returned to the
In S208 following S206, it is determined whether or not the
When S210 is executed, the
In S212 following S210, the type of abnormality processing procedure stored in the abnormality processing procedure
一方、S202で中央コントローラ102から動作コマンド受信していないと判別した場合(NOの場合)には、S213に移行する。S213では、中央コントローラ102から特定処理手順の種類を受信したか否かを判別する。特定処理手順の種類を受信した場合には、その種類は特定処理手順種類記憶部171に一時的に記憶される。S213で中央コントローラ102から特定処理手順の種類を受信したと判別した場合(YESの場合)には、S214を実行する。S214を実行すると、特定処理手順種類記憶部171に記憶されている特定処理手順の種類に従ってモータ180が制御される。具体的には、特定処理手順種類記憶部171に記憶されている特定処理手順の種類に対応した特定処理手順内容が特定処理手順内容記憶部172から読み出され、その内容に従ってモータ180が制御される。S214を実行してから、関節コントローラ処理S200を終了する。
S213で中央コントローラ102から特定処理手順の種類を受信していないと判別した場合(NOの場合)には、S215を実行する。S215では、動作コマンドを所定時間以内に受信したか否かを判別する。所定時間は、動作コマンドの送信が正常である場合の送信インターバルよりも十分に長く設定されている。S215で動作コマンドを所定時間以内に受信したと判別した場合(YESの場合)には、S202を再び行う。S214で動作コマンドを所定時間以内に受信していないと判別した場合(NOの場合)には、S216を実行する。
On the other hand, if it is determined in S202 that no operation command has been received from the central controller 102 (NO), the process proceeds to S213. In S213, it is determined whether or not the type of the specific processing procedure has been received from the
If it is determined in S213 that the type of the specific processing procedure has not been received from the central controller 102 (NO), S215 is executed. In S215, it is determined whether or not the operation command is received within a predetermined time. The predetermined time is set to be sufficiently longer than the transmission interval when the operation command transmission is normal. If it is determined in S215 that the operation command has been received within the predetermined time (in the case of YES), S202 is performed again. When it is determined in S214 that the operation command has not been received within the predetermined time (in the case of NO), S216 is executed.
また、S204で受信した動作コマンドは正常でないと判別した場合(NOの場合)、S208でモータは正常でないと判別した場合(NOの場合)にもS216を実行する。
S216を実行すると、異常処理手順種類記憶部164に記憶されている異常処理手順の種類に従ってモータ180が制御される。具体的には、異常処理手順種類記憶部164に記憶されている異常処理手順の種類に対応した異常処理手順内容が異常処理手順内容記憶部166から読み出され、その内容に従ってモータ180が制御される。S216実行後、関節コントローラ処理S200を終了する。
このようにして、関節コントローラ〔1〕〜〔N〕は、中央コントローラ102から動作コマンドを所定時間以内に受信しなかった場合、受信した動作コマンドが異常であった場合、モータ180が異常であった場合に、自身で記憶している異常処理手順の種類に従ってモータ180を制御する。よって、関節コントローラ〔1〕〜〔N〕は、異常が発生した場合に、中央コントローラ102に頼らずに、予め記憶している異常処理手順の種類に応じた動作を行うことができる。
S216 is also executed when it is determined that the operation command received in S204 is not normal (in the case of NO), or in the case where it is determined in S208 that the motor is not normal (in the case of NO).
When S216 is executed, the
In this way, when the joint controllers [1] to [N] do not receive an operation command from the
モータ異常看視部162によってモータ180が異常であると判別されたときに、例えばモータ180自体に致命的な不具合が発生していた場合には、その制御を行うことができない。そこで、モータ180の不具合が致命的でない場合や、不具合が一時的である場合にはモータ180の制御を行い、その不具合が致命的である場合にはモータ180を停止させることが好ましい。この場合、モータ180への電力供給を停止してもよい。モータ180への電力供給を停止すると、モータ180が暴走してしまうのを防止することができる。
When the motor
異常が発生した場合のロボット10の動作について、具体的に説明する。
(1)異常なのが遊脚の足首関節である場合;
この場合には、異常である遊脚の足首関節28、36のモータ180は、脚接地前には、異常処理手順種類選択処理S20(図7)のS22、S24の処理に従ってトルクをゼロにし、フリーに回転できるようにする。脚接地後にはモータ180のトルクを除々に大きくし、所定時間後にロックする。
遊脚の足首関節28、36以外の関節(正常である関節)のモータ180は、特定処理手順種類選択処理S100(図9)のS104、S106の処理に従って、脚接地前には回転速度を動作指令値どおりとし、脚接地後にはトルクを除々に大きくし、所定時間後にロックする。
このような制御が行われると、異常である足首関節28、36に接続されている足先30、39は、脚が接地するまではモータ180がフリーに回転することによってブラブラになる。正常である関節のモータが、脚接地まで動作指令値どおりの速度で回転することにより、遊脚の足先30、39は床に接触する。足先30、39がブラブラになっていると、6軸力センサ29、38は、足先30、39が床に接触して足首関節28、36周りに回転しても、回転モーメントや軸方向の力を検出しない。このため、足先30、39が足首関節28、36周りに回転して床面に倣ってから、6軸力センサ29、38に力(ロボット10の重さ)が作用し、脚の接地が検出される。床面に倣った足先30、39は、その裏面全体で床と接触する。
脚の接地が検出されると、異常である足首関節28、36と、その他の正常な関節のモータ180はトルクを除々に大きくし、所定時間後にロックする。異常である足首関節28、36に接続されている足先30、39は、モータのトルクが除々に大きくなる時点では裏面全体で床と接触している。このため、ロボット10は転倒しにくくなる。このようにして、ロボット10は、遊脚の足首関節28、36が異常になっても転倒せず、最終的に両足立脚の状態で静止する。なお、脚の接地が検出されたときに、モータ180のトルクを除々に大きくしてからロックするのは、直にロックすると、慣性でロボット10が更に移動しようとし、転倒し易くなってしまうからである。脚接地後のモータ180のトルク変化率は、ロボット10の転倒防止の観点から、一定でないことが好ましい。なぜならば、脚が接地してから足首関節28、38のトルクを大きくするのが遅れると、足首関節28、38が回転してロボット10が転倒し易くなってしまうからである。このため、モータ180のトルクは、脚が接地するとある程度急に大きくし、その後除々に大きくするのが望ましい。すなわち、慣性の影響によるロボット10の転倒防止と、足首関節28、38が回転してしまうことによるロボット10の転倒防止の両者を満足する変化率でモータ180のトルクを大きくするのが好ましい。
なお、脚接地前の足首関節28、38のモータ180のトルクを、足先30、39が床に倣い、かつロボット10の姿勢が大きく崩れない程度の中間的な大きさとしておくこともできる。
The operation of the
(1) If the ankle joint of the swing leg is abnormal;
In this case, the
The
When such control is performed, the
When the ground contact of the leg is detected, the abnormal ankle joints 28 and 36 and the
It should be noted that the torque of the
(2)異常なのが立脚の足首関節である場合;
異常である立脚の足首関節28、36は、異常処理手順種類選択処理S20のS28、S30の処理に従って、脚接地前にはモータ180のトルクを中間的な大きさとし、それ以上のトルクが作用した場合には回転させる。脚接地後にはモータ180のトルクを除々に大きくし、所定時間後にロックする。
立脚の足首関節28、36以外の関節(正常である関節)は、特定処理手順種類選択処理S100のS110、S112の処理に従って、脚接地前にはモータ180の回転速度を動作指令値どおりとし、脚接地後にはモータ180のトルクを除々に大きくし、所定時間後にロックする。
上記のように制御されると、脚接地前までは、異常である立脚の足首関節28、36は、モータ180のトルクが中間的な大きさとされていることにより、急に回転することがない。よって、ロボット10の転倒が防止される。
また、モータ180の中間的なトルクは、正常な関節のモータ180が回転してロボット10が歩行した場合には、その強さに負ける程度の値に設定されている。このため、脚接地前までは、異常である立脚の足首関節28、36は、正常な関節のモータ180が動作指令値どおりの速度で回転しているのに追従して回転する。
脚が接地すると、異常である足首関節28、36と、その他の正常な関節とのモータ180はトルクを除々に大きくし、所定時間後にロックする。このようにして、ロボット10は、立脚の足首関節28、36が異常になっても転倒せず、最終的に両足立脚の状態で静止する。
(2) If the ankle joint of the stance is abnormal;
The ankle joints 28 and 36 of the standing leg, which are abnormal, have an intermediate magnitude of the torque of the
The joints (normal joints) other than the ankle joints 28 and 36 of the standing leg are set to the rotation speed of the
When controlled as described above, the ankle joints 28 and 36 of the standing leg that are abnormal before the ground contact with the leg do not rotate suddenly because the torque of the
In addition, the intermediate torque of the
When the leg contacts the ground, the
(3)異常なのが遊脚の膝関節である場合;
この場合には、異常である遊脚の膝関節24、34は、脚接地前には、異常処理手順種類選択処理S20のS34、36の処理に従って、モータ180のトルクをゼロにし、フリーに回転できるようにする。脚接地後にはモータ180のトルクを除々に小さくし、所定時間後にフリーに回転できる状態にする。なお、脚接地前にフリーに回転できるようになっていたモータ180は、脚接地時にトルクを発生させ、その後にトルクを除々に小さくする。
遊脚の膝関節24、34以外の関節(正常である関節)は、特定処理手順種類選択処理S100のS116、S118の処理に従って、脚接地前にはモータ180の回転速度を動作指令値どおりとし、脚接地後にはモータ180のトルクを除々に小さくし、所定時間後にフリーに回転できる状態にする。
従って、脚が接地するまでは、異常である遊脚の膝関節24、34はフリーに回転することができる。異常である遊脚の膝関節24、34がフリーに回転すると、重力の作用で足先30、39は床に近づく。このため、足先30、39は早めに接地する。足先30、39が早めに接地すると、ロボット10が安定して静止するまでの時間を短くすることができる。遊脚が接地すると、それが6軸力センサ29、38で検出される。
遊脚の接地が検出されると、異常である膝関節24、34と、その他の正常な関節のモータ180はトルクを除々に小さくし、所定時間後にフリーに回転できるようにする。モータ180のトルクを除々に小さくし、所定時間後にフリーに回転できるようにすると、ロボット10は次第にしゃがみ込み、最終的にひざまずいた状態で静止する。ロボット10がしゃがみ込む過程で、腕60、70が床に接触することもあるが、肩関節66、76と、肘関節62、70のモータ180のトルクも除々に小さくされている。このため、ロボット10がしゃがみ込むときに腕60、70が突っ張り、ロボット10が転倒してしまうことが防止されている。
なお、ロボット10をひざまずかせず、両足立脚の状態で静止させることもできる。
(3) If the knee joint of the swing leg is abnormal;
In this case, the knee joints 24 and 34 of the abnormal free leg are rotated freely by setting the torque of the
The joints other than the knee joints 24 and 34 (normal joints) of the free leg are set to the rotation speed of the
Therefore, the abnormal knee joints 24 and 34 of the free leg can rotate freely until the leg contacts the ground. When the abnormal knee joints 24 and 34 of the free leg rotate freely, the
When the ground contact of the free leg is detected, the abnormal knee joints 24 and 34 and the
Note that the
(4)異常なのが立脚の膝関節である場合;
異常である立脚の膝関節24、34のモータ180と、それ以外の正常な関節のモータ180は、異常処理手順種類選択処理S20のS40の処理、および特定処理手順種類選択処理S100のS122の処理に従って、トルクを除々に小さくし、所定時間後にフリーに回転できる状態にする。
異常である立脚の膝関節24、34のモータ180と、それ以外の正常な関節のモータ180のトルクを除々に小さくし、所定時間後にフリーに回転できる状態にすると、ロボット10は次第にしゃがみ込み、最終的にひざまずいた状態で静止する。
なお、ロボット10をひざまずかせず、両足立脚の状態で静止させることもできる。
(4) When the abnormal knee joint is a stance;
The
When the torques of the
Note that the
(5)異常なのが遊脚の股関節である場合;
この場合には、異常である遊脚の股関節42、50のモータ180は、脚接地前には、異常処理手順種類選択処理S20のS44、S46の処理に従って、トルクを中間的な大きさにし、それ以上のトルクが作用した場合には回転させるとともに、脚接地後にはトルクを除々に小さくし、所定時間後にフリーに回転できる状態にする。
遊脚の股関節42、50以外の関節(正常である関節)は、特定処理手順種類選択処理S100のS126、S128の処理に従って、脚接地前にはモータ180の回転速度を動作指令値どおりとし、脚接地後にはモータ180のトルクを除々に小さくし、所定時間後にフリーに回転できる状態にする。
このように制御すると、ロボット10は、遊脚が接地するまで歩行し、その後にひざまずく。よってロボット10の転倒が防止される。なお、ロボット10をひざまずかせず、両足立脚の状態で静止させることもできる。
(5) If the abnormal leg is the hip joint of the swing leg;
In this case, the
The joints other than the
When controlled in this way, the
(6)異常なのが立脚の股関節である場合;
異常である立脚の股関節42、50のモータ180と、それ以外の正常な関節のモータ180は、異常処理手順種類選択処理S20のS50の処理、および特定処理手順種類選択処理S100のS132の処理に従って、トルクを除々に小さくし、所定時間後にフリーに回転できる状態にする。
異常である立脚の股関節42、50のモータ180と、それ以外の正常な関節のモータ180のトルクを除々に小さくし、所定時間後にフリーに回転できる状態にすると、ロボット10は次第にしゃがみ込み、最終的にひざまずいた状態で静止する。このため、ロボット10の転倒が防止される。なお、ロボット10をひざまずかせず、両足立脚の状態で静止させることもできる。
(6) The abnormal case is a hip joint of a standing leg;
The
When the torques of the
(7)異常なのが肩関節である場合;
異常である肩関節66、76のモータ180は、異常処理手順種類選択処理S20のS54の処理に従って、モータ180の回転角を予め定められている角度でロックする。また、肘関節62、72と、脚の関節は、特定処理手順種類選択処理S100のS136の処理に従う。すなわち、肘関節62、72のモータ180は、予め定められた回転角度でロックされる。脚の関節のモータ180は、動作指令値に従う。
この場合には、ロボット10は、肩関節66、76と、肘関節62、72が予め定められた角度にロックされた状態で歩行を継続する。肩関節66、76と、肘関節62、72が予め定められた角度にロックされると、不自然に見えない状態で腕60、70を固定することができる。不自然に見えない腕60、70の状態とは、例えば、上腕61、71を下方に伸ばすとともに、肘関節62、72を軽く曲げた状態である。
なお、肩関節66、76と、肘関節62、72のモータ180をロックするショックによってロボット10の姿勢が不安定になるのを防止するために、モータ180の回転速度を除々に遅くし、最終的にロックするようにしてもよい。
(7) Should the shoulder joint be abnormal;
The
In this case, the
In order to prevent the posture of the
(8)異常なのが肘関節である場合;
異常である肘関節62、72のモータ180は、異常処理手順種類選択処理S20のS58の処理に従って、回転速度を除々に遅くし、所定時間後にロックする。また、肩関節66、76と、脚の関節は、特定処理手順種類選択処理S100のS140の処理に従う。このような処理が行われると、肩関節66、76のモータ180は、予め定められた回転角度でロックされる。脚の関節のモータ180は、動作指令値に従う。よって、ロボット10は、肩関節66、76と、肘関節62、72がロックされた状態で歩行を継続する。
(8) When the elbow joint is abnormal;
The
以上、本発明の具体例を詳細に説明したが、これらは例示にすぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には、以上に例示した具体例を様々に変形、変更したものが含まれる。
また、本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時の請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
Specific examples of the present invention have been described in detail above, but these are merely examples and do not limit the scope of the claims. The technology described in the claims includes various modifications and changes of the specific examples illustrated above.
In addition, the technical elements described in the present specification or drawings exhibit technical usefulness alone or in various combinations, and are not limited to the combinations described in the claims at the time of filing. In addition, the technology illustrated in the present specification or the drawings achieves a plurality of objects at the same time, and has technical utility by achieving one of the objects.
10:ロボット
19:胴体
20:左脚
22:左上腿
24:左膝関節
26:左下腿
28:左足首関節
29:左6軸力センサ
30:左足先
32:右脚
33:右上腿
34:右膝関節
35:右下腿
36:右足首関節
38:右6軸力センサ
39:右足先
40:腰
43、44、46:モータ
42:左股関節
50:右股関節
52、53、54:モータ
59:肩
60:左腕
61:左上腕
62:左肘関節
63:左前腕
64:左掌
66:左肩関節
70:右腕
71:右上腕
72:右肘関節
73:右前腕
74:右掌
76:右肩関節
80:頭部
82:首関節
83、84:モータ
102:中央コントローラ
104、106:通信線
110:音響コントローラ
112:スピーカ
120:動作指令値演算ユニット、120a:データ記憶部、120b:異常処理ロジック記憶部
122:画像処理ユニット
123:CCDカメラ
124:ロボット外通信ユニット
125:アンテナ
126:ロボット内通信ユニット、126a:通信異常看視部、126b:通信ポート
150:関節コントローラ
152:通信制御部
154:受信確認信号返信部
156:モータ制御部
158:モータ駆動指令生成部
160:通信異常看視部
162:モータ異常看視部
163:異常処理部
164:異常処理手順種類記憶部
166:異常処理手順内容記憶部
168、169:電力線
171:特定処理手順種類記憶部
172:特定処理手順内容記憶部
176:モータ駆動回路
10: Robot 19: Body 20: Left leg 22: Left upper thigh 24: Left knee joint 26: Left lower thigh 28: Left ankle joint 29: Left six-axis force sensor 30: Left foot tip 32: Right leg 33: Upper right thigh 34: Right Knee joint 35: right lower leg 36: right ankle joint 38: right 6-axis force sensor 39: right foot tip 40: waist 43, 44, 46: motor 42: left hip joint 50: right hip joint 52, 53, 54: motor 59: shoulder 60: Left arm 61: Left upper arm 62: Left elbow joint 63: Left forearm 64: Left palm 66: Left shoulder joint 70: Right arm 71: Upper right arm 72: Right elbow joint 73: Right forearm 74: Right palm 76: Right shoulder joint 80 : Head 82: neck joint 83, 84: motor 102: central controller 104, 106: communication line 110: acoustic controller 112: speaker 120: operation command value calculation unit, 120a: data storage unit, 120b: abnormality processing logic storage unit 22: Image processing unit 123: CCD camera 124: External communication unit 125: Antenna 126: In-robot communication unit 126a: Communication abnormality monitoring unit 126b: Communication port 150: Joint controller 152: Communication control unit 154: Reception confirmation Signal reply unit 156: motor control unit 158: motor drive command generation unit 160: communication abnormality viewing unit 162: motor abnormality viewing unit 163: abnormality processing unit 164: abnormality processing procedure type storage unit 166: abnormality processing procedure content storage unit 168, 169: Power line 171: Specific processing procedure type storage unit 172: Specific processing procedure content storage unit 176: Motor drive circuit
Claims (4)
関節毎に設けられており、関節の角度を変化させる関節アクチュエータと、
関節アクチュエータ毎に設けられた関節コントローラと、
関節コントローラ毎に関節の動作指令値を逐次指令する中央コントローラとを備えており、
各関節コントローラは、自己の関節の関節角度が中央コントローラが指令した動作指令値のとおりに変化しない異常が発生したときに関節アクチュエータを制御するための異常処理手順を複数種類記憶しており、
中央コントローラは、前記異常が発生した関節コントローラが実行するべき異常処理手順を特定する「異常処理手順の種類」をロボットの姿勢に応じて関節コントローラ毎に選択し、選択した「異常処理手順の種類」を動作指令値とともに各関節コントローラに逐次指令し、
各関節コントローラは、動作指令値と「異常処理手順の種類」を受信したときに、受信した動作指令値のとおりに自己の関節アクチュエータを制御するとともに受信した最新の「異常処理手順の種類」を記憶し、前記異常が発生した場合に、複数種類の異常処理手順のうち記憶している「異常処理手順の種類」によって特定される異常処理手順に基づいて関節アクチュエータを制御する
ことを特徴とするロボット。 The robot has a plurality of joints connecting the body side member and the end side member , and is a robot that walks while changing its posture by controlling the angle of the joint,
A joint actuator that is provided for each joint and changes the angle of the joint;
A joint controller provided for each joint actuator;
A central controller that sequentially commands joint operation command values for each joint controller ,
Each joint controller stores a plurality of types of abnormality processing procedures for controlling the joint actuator when an abnormality occurs in which the joint angle of its own joint does not change according to the operation command value commanded by the central controller.
Central controller, the "type of abnormality processing procedure" in which the abnormality regarding the section controller generated to identify an abnormal procedure to be performed to select for each joint controller in accordance with the attitude of the robot, the selected "abnormal procedure ”Type” along with the operation command value to each joint controller sequentially,
When each joint controller receives the motion command value and the “type of abnormality processing procedure”, it controls its joint actuator according to the received motion command value and also receives the latest “type of abnormality processing procedure” received. When the abnormality occurs, the joint actuator is controlled based on the abnormality processing procedure specified by the stored “type of abnormality processing procedure” among the plurality of types of abnormality processing procedures. robot.
中央コントローラは、いずれかの関節コントローラで前記異常が発生した場合に、正常な関節コントローラが実行するべき特定処理手順を特定する「特定処理手順の種類」をロボットの姿勢に応じて正常な関節コントローラ毎に選択し、選択した「特定処理手順の種類」を正常な各関節コントローラに指令し、
各関節コントローラは、中央コントローラから「特定処理手順の種類」を受信した場合に、複数の特定処理手順のうち受信した「特定処理手順の種類」によって特定される特定処理手順に基づいて関節アクチュエータを制御することを特徴とする請求項1に記載のロボット。 Each joint controller stores a plurality of types of specific processing procedures for controlling its joint actuator when the abnormality occurs in another joint controller,
Central controller, either when the abnormality in the joint controller occurs, normal joint in accordance with the "type of identification process procedure" identifying a particular procedure to normal Takashi Seki controller performs the posture of the robot Select for each controller, command the selected “specific processing procedure type” to each normal joint controller,
When each joint controller receives a “specific processing procedure type” from the central controller, each joint controller selects a joint actuator based on the specific processing procedure specified by the received “specific processing procedure type” among the plurality of specific processing procedures. robot according to claim 1, characterized in that control.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003328034A JP4066923B2 (en) | 2003-09-19 | 2003-09-19 | robot |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003328034A JP4066923B2 (en) | 2003-09-19 | 2003-09-19 | robot |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005088166A JP2005088166A (en) | 2005-04-07 |
JP4066923B2 true JP4066923B2 (en) | 2008-03-26 |
Family
ID=34457738
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003328034A Expired - Fee Related JP4066923B2 (en) | 2003-09-19 | 2003-09-19 | robot |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4066923B2 (en) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006011577A1 (en) * | 2004-07-30 | 2006-02-02 | Tmsuk Co., Ltd. | Multi-point ground contact type foot part support mechanism, bipedal walking robot having the support mechanism, and control structure for the robot |
JP2007007799A (en) * | 2005-07-01 | 2007-01-18 | Toyota Motor Corp | Walking robot |
JP2011051069A (en) * | 2009-09-03 | 2011-03-17 | Toyota Motor Corp | Emergency stop device of robot, and method |
US8442684B2 (en) * | 2009-09-22 | 2013-05-14 | GM Global Technology Operations LLC | Integrated high-speed torque control system for a robotic joint |
CN103037827B (en) | 2010-03-17 | 2015-02-11 | 丰田自动车株式会社 | Leg assistance device |
JP5528916B2 (en) * | 2010-06-22 | 2014-06-25 | 本田技研工業株式会社 | Robot and external force detection mechanism of robot |
CN110539331A (en) * | 2018-05-28 | 2019-12-06 | 睿胜自动化工程有限公司 | Method and device for detecting abnormality of mechanical arm and pump in advance |
-
2003
- 2003-09-19 JP JP2003328034A patent/JP4066923B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2005088166A (en) | 2005-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7053579B2 (en) | Device and method of controlling operation of robot apparatus | |
US7383717B2 (en) | Force sensor abnormality detection system for legged mobile robot | |
JP3435666B2 (en) | robot | |
US8688273B2 (en) | Walking control apparatus of robot and method of controlling the same | |
US20090321150A1 (en) | Walking robot and method of controlling the same | |
JP5586163B2 (en) | Robot and control method thereof | |
US20100057253A1 (en) | Robot and method of controlling safety thereof | |
US8271137B2 (en) | Robot and method of controlling the same | |
EP0406018A1 (en) | Legged walking robot and system for controlling the same | |
US20130158712A1 (en) | Walking robot and control method thereof | |
US10099378B2 (en) | Mobile robot | |
JP2008302496A (en) | Device and method for controlling robot arm, robot, and control program of the robot arm | |
JP2006142470A (en) | Robot overcurrent prevention system | |
JP4066923B2 (en) | robot | |
WO1999033617A1 (en) | Arm structure for man type working robots | |
JP3130008B2 (en) | Joint apparatus, robot apparatus, and joint control method | |
CN107199562A (en) | Robot Controller And Robot Control Method | |
JP5040693B2 (en) | Legged robot and control method thereof | |
JPH0436834B2 (en) | ||
JP4385159B2 (en) | Stop device for legged robot | |
JP2007007799A (en) | Walking robot | |
JP3615539B2 (en) | Robot apparatus operation control apparatus and operation control method, and robot apparatus remote operation apparatus and remote operation method | |
JP2008093762A (en) | Walking robot | |
JP2007007797A (en) | Walking robot | |
JP4504769B2 (en) | Anomaly detection device for legged mobile robot |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060124 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070807 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071004 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20071218 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20071231 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110118 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110118 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110118 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120118 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130118 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130118 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |