JP2012240144A - Robot control device and robot system - Google Patents

Robot control device and robot system Download PDF

Info

Publication number
JP2012240144A
JP2012240144A JP2011111071A JP2011111071A JP2012240144A JP 2012240144 A JP2012240144 A JP 2012240144A JP 2011111071 A JP2011111071 A JP 2011111071A JP 2011111071 A JP2011111071 A JP 2011111071A JP 2012240144 A JP2012240144 A JP 2012240144A
Authority
JP
Japan
Prior art keywords
manipulator
prohibited area
unit
angle
robot control
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.)
Pending
Application number
JP2011111071A
Other languages
Japanese (ja)
Inventor
Yukio Hashiguchi
幸男 橋口
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yaskawa Electric Corp
Original Assignee
Yaskawa Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yaskawa Electric Corp filed Critical Yaskawa Electric Corp
Priority to JP2011111071A priority Critical patent/JP2012240144A/en
Publication of JP2012240144A publication Critical patent/JP2012240144A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Manipulator (AREA)

Abstract

PROBLEM TO BE SOLVED: To suitably control a manipulator having a redundant degree of freedom.SOLUTION: An angle calculating part 21a calculates angles of actuators 11a-17a based on a target position, a position correcting part 21b corrects a position of a portion included in a forbidden region to the position outside of the forbidden region when any of the positions of the portions of the manipulator 1 specified from the angles of the actuators 11a-17a calculated by the angle calculating part 21a is included in the forbidden region, and a re-calculating part 21c re-calculates the angles of the actuators 11a-17a based on the position of the portion corrected by the position correcting part 21b.

Description

本発明は、ロボット制御装置およびロボットシステムに関する。   The present invention relates to a robot control device and a robot system.

近年、産業用ロボットの一つとして、要求される位置姿勢の自由度よりも多くの自由度(冗長自由度)を有する多関節ロボットが開発されている。   In recent years, articulated robots having more degrees of freedom (redundancy degrees of freedom) than the required degrees of freedom of position and orientation have been developed as one of industrial robots.

この種の多関節ロボットは、冗長自由度を有することで、対象物に対して求められた位置姿勢を取った場合であっても、マニピュレータの姿勢を種々変更することができる。これにより、たとえば、比較的狭隘な場所であっても障害物を回避しながら作業を行うことが可能となる。なお、特許文献1には、冗長自由度を有するマニピュレータを制御するための一手法が開示されている。   This type of multi-joint robot has redundant degrees of freedom, so that the posture of the manipulator can be variously changed even when the position and posture obtained with respect to the object are taken. Thereby, for example, it is possible to perform work while avoiding an obstacle even in a relatively narrow place. Patent Document 1 discloses a technique for controlling a manipulator having redundant degrees of freedom.

特開2007−203380号公報JP 2007-203380 A

ところで、多くのマニピュレータは、予め教示された動作経路に沿って動作するが、適用用途によっては、作業対象物が動いている等、位置が不確かな作業対象物に対して作業を行う場合もある。このような場合には、作業対象物の位置を検知するセンサ等の情報に基づいてマニピュレータの目標位置姿勢を修正することとなる。   By the way, many manipulators operate along a motion path taught in advance. However, depending on the application, there are cases in which work is performed on a work object whose position is uncertain, such as the work object moving. . In such a case, the target position / posture of the manipulator is corrected based on information such as a sensor for detecting the position of the work object.

しかしながら、マニピュレータが冗長自由度を有する場合、特許文献1のように予め冗長軸を含む各駆動軸全ての動作量を教示により決定しておく手法では、たとえば作業対象物の位置が移動した場合に冗長軸の位置が必ずしも適切な位置とならず、マニピュレータが作業対象物や周囲の障害物と接触する可能性がある。   However, when the manipulator has redundant degrees of freedom, as in Patent Document 1, in the method in which the operation amounts of all the drive shafts including the redundant shaft are determined by teaching in advance, for example, when the position of the work object moves. The position of the redundant axis is not necessarily an appropriate position, and the manipulator may come into contact with the work object and surrounding obstacles.

開示の技術は、上記に鑑みてなされたものであって、冗長自由度を有するマニピュレータを適切に制御することができるロボット制御装置およびロボットシステムを提供することを目的とする。   The disclosed technique has been made in view of the above, and an object thereof is to provide a robot control device and a robot system that can appropriately control a manipulator having redundant degrees of freedom.

本願の開示するロボット制御装置は、複数の関節軸を有するマニピュレータを制御するロボット制御装置であって、目標位置に基づいて前記関節軸の角度を計算する角度計算部と、前記角度計算部によって計算された前記関節軸の角度から特定される前記マニピュレータの各部位の位置のうち何れかが所定の禁止領域に含まれる場合に、前記禁止領域に含まれる前記部位の位置を前記禁止領域外の位置へ修正する位置修正部と、前記位置修正部によって修正された前記部位の位置に基づいて前記関節軸の角度を再計算する再計算部とを備える。   A robot control device disclosed in the present application is a robot control device that controls a manipulator having a plurality of joint axes, and calculates an angle of the joint axis based on a target position, and is calculated by the angle calculation unit. When any one of the positions of each part of the manipulator specified from the angle of the joint axis is included in a predetermined prohibited area, the position of the part included in the prohibited area is a position outside the prohibited area. And a recalculator that recalculates the angle of the joint axis based on the position of the part corrected by the position corrector.

また、本願の開示するロボットシステムは、複数の関節軸を有するマニピュレータおよび当該マニピュレータを制御するロボット制御装置を備えるロボットシステムであって、前記ロボット制御装置は、目標位置に基づいて前記関節軸の角度を計算する角度計算部と、前記角度計算部によって計算された前記関節軸の角度から特定される前記マニピュレータの各部位の位置のうち何れかが所定の禁止領域に含まれる場合に、前記禁止領域に含まれる前記部位の位置を前記禁止領域外の位置へ修正する位置修正部と、前記位置修正部によって修正された前記部位の位置に基づいて前記関節軸の角度を再計算する再計算部とを備える。   In addition, a robot system disclosed in the present application is a robot system including a manipulator having a plurality of joint axes and a robot control device that controls the manipulator, and the robot control device determines the angle of the joint axis based on a target position. The forbidden region when any one of the positions of each part of the manipulator specified from the angle of the joint axis calculated by the angle calculating unit is included in a predetermined forbidden region A position correcting unit that corrects the position of the part included in the position to a position outside the prohibited region; and a recalculating part that recalculates the angle of the joint axis based on the position of the part corrected by the position correcting unit; Is provided.

本願の開示するロボット制御装置およびロボットシステムの一つの態様によれば、冗長自由度を有するマニピュレータを適切に制御することができる。   According to one aspect of the robot control device and the robot system disclosed in the present application, it is possible to appropriately control a manipulator having redundant degrees of freedom.

図1は、本実施例に係るロボットシステムの構成を示す図である。FIG. 1 is a diagram illustrating a configuration of a robot system according to the present embodiment. 図2は、ロボット制御装置の構成を示すブロック図である。FIG. 2 is a block diagram illustrating a configuration of the robot control device. 図3は、マニピュレータの構成を示す図である。FIG. 3 is a diagram illustrating a configuration of the manipulator. 図4は、禁止領域の一例を示す図である。FIG. 4 is a diagram illustrating an example of the prohibited area. 図5−1は、目標位置へ移動する前のマニピュレータを示す図である。FIG. 5A is a diagram illustrating the manipulator before moving to the target position. 図5−2は、移動後のマニピュレータの位置が位置修正処理により修正される様子を示す図である。FIG. 5B is a diagram illustrating a state in which the position of the manipulator after movement is corrected by the position correction process. 図6は、位置修正処理の動作例を示す図である。FIG. 6 is a diagram illustrating an operation example of the position correction process. 図7は、ロボット制御装置が実行する処理手順を示すフローチャートである。FIG. 7 is a flowchart showing a processing procedure executed by the robot control apparatus. 図8は、バネ・ダンパモデルの設定位置の他の例を示す図である。FIG. 8 is a diagram showing another example of the setting position of the spring / damper model.

以下に添付図面を参照して、本願の開示するロボット制御装置およびロボットシステムのいくつかの実施例を詳細に説明する。ただし、これらの実施例における例示で本発明が限定されるものではない。   Exemplary embodiments of a robot control device and a robot system disclosed in the present application will be described below in detail with reference to the accompanying drawings. However, the present invention is not limited to the examples in these examples.

まず、本実施例に係るロボットシステムについて図1を用いて説明する。図1は、本実施例に係るロボットシステムの構成を示す図である。   First, the robot system according to the present embodiment will be described with reference to FIG. FIG. 1 is a diagram illustrating a configuration of a robot system according to the present embodiment.

なお、以下では、本願の開示するロボットシステムを、乳牛に対して搾乳作業を行う自動搾乳システムへ適用した場合の例について説明するが、本願の開示するロボットシステムは、これに限ったものではなく、たとえば家畜に対して検査や消毒等を自動的に行う場合にも適用することができる。また、本願の開示するロボットシステムは、家畜以外の対象物について所定の作業を行う場合にも適用することができる。   In the following, an example in which the robot system disclosed in the present application is applied to an automatic milking system that performs milking operations on dairy cows will be described. However, the robot system disclosed in the present application is not limited to this. For example, the present invention can also be applied to a case where a livestock is automatically inspected or disinfected. The robot system disclosed in the present application can also be applied to a case where a predetermined work is performed on an object other than livestock.

図1に示すように、本実施例に係るロボットシステムは、マニピュレータ1と、ロボット制御装置2と、入力装置3とを含んで構成される。   As shown in FIG. 1, the robot system according to this embodiment includes a manipulator 1, a robot control device 2, and an input device 3.

マニピュレータ1は、複数の関節(後述するアクチュエータ)を備える多関節ロボットである。マニピュレータ1は、エンドエフェクタとして搾乳部100を備える。そして、マニピュレータ1は、ロボット制御装置2からの指示に従って各関節を個別に任意の角度だけ回転させることによって、搾乳部100をターゲット部T(乳牛Cの乳頭)へ向けて移動させて搾乳を行う。   The manipulator 1 is an articulated robot including a plurality of joints (actuators described later). The manipulator 1 includes a milking unit 100 as an end effector. Then, the manipulator 1 performs milking by moving the milking unit 100 toward the target unit T (the nipple of the cow C) by individually rotating each joint by an arbitrary angle in accordance with an instruction from the robot control device 2. .

なお、マニピュレータ1の先端部(たとえば、搾乳部100の近傍)には、ターゲット部Tを検知するための物体検知センサ101が設けられている。   Note that an object detection sensor 101 for detecting the target portion T is provided at the tip of the manipulator 1 (for example, in the vicinity of the milking unit 100).

ロボット制御装置2は、マニピュレータ1の動作制御を行うコントローラである。具体的には、ロボット制御装置2は、マニピュレータ1と通信ネットワークを介して相互に接続されており、かかる通信ネットワークを介し、マニピュレータ1に対して各関節の駆動を指示することによってマニピュレータ1を目標位置へ移動させる。   The robot control device 2 is a controller that controls the operation of the manipulator 1. Specifically, the robot control device 2 is connected to the manipulator 1 via a communication network, and the manipulator 1 is targeted by instructing the manipulator 1 to drive each joint via the communication network. Move to position.

ここで、マニピュレータ1による搾乳作業は、図示しないゲージに乳牛Cを収容させた状態で行われる。このように乳牛Cをゲージに収容することで乳牛Cの動きが規制されるため、ターゲット部Tの位置を大まかに固定することができる。ただし、乳牛Cがゲージで動くことがあるため、ターゲット部Tの位置は細かく変化することとなる。   Here, the milking operation by the manipulator 1 is performed in a state where the cow C is accommodated in a gauge (not shown). Since the movement of the cow C is regulated by accommodating the cow C in the gauge in this way, the position of the target portion T can be roughly fixed. However, since the cow C may move with a gauge, the position of the target part T will change finely.

そこで、ロボット制御装置2は、物体検知センサ101の検知結果に基づいてターゲット部Tの位置を認識し、認識したターゲット部Tの位置を目標位置として搾乳部100を移動させることとしている。これにより、図示しないゲージ内において不規則に動くターゲット部Tに追従してマニピュレータ1を移動させることが可能となる。   Therefore, the robot control device 2 recognizes the position of the target unit T based on the detection result of the object detection sensor 101, and moves the milking unit 100 using the recognized position of the target unit T as a target position. Thereby, the manipulator 1 can be moved following the target portion T that moves irregularly in a gauge (not shown).

なお、ロボット制御装置2としては、たとえば、記憶装置や電子演算器あるいは表示装置等を備えるコンピュータを用いることができる。   As the robot control device 2, for example, a computer including a storage device, an electronic calculator, a display device, or the like can be used.

入力装置3は、作業者等からの操作を受け付ける装置である。かかる入力装置3は、たとえば有線LAN(Local Area Network)や無線LANといった通信ネットワークで相互に接続されている。入力装置3は、作業者等からの操作に応じて、マニピュレータ1による搾乳作業の開始や終了あるいは各種の設定変更等をロボット制御装置2に対して指示する。   The input device 3 is a device that receives an operation from an operator or the like. The input devices 3 are connected to each other via a communication network such as a wired LAN (Local Area Network) or a wireless LAN. The input device 3 instructs the robot control device 2 to start or end the milking work by the manipulator 1 or change various settings in accordance with an operation from an operator or the like.

次に、ロボット制御装置2の構成について図2を用いて説明する。図2は、ロボット制御装置2の構成を示すブロック図である。なお、図2では、ロボット制御装置2の特徴を説明するために必要な構成要素のみを示しており、一般的な構成要素についての記載を省略している。   Next, the configuration of the robot control device 2 will be described with reference to FIG. FIG. 2 is a block diagram illustrating a configuration of the robot control device 2. In FIG. 2, only components necessary for explaining the features of the robot control device 2 are shown, and descriptions of general components are omitted.

図2に示すように、ロボット制御装置2は、制御部21と、記憶部22とを備える。また、制御部21は、角度計算部21aと、位置修正部21bと、再計算部21cと、動作指示部21dと、設定処理部21eとを備える。また、記憶部22は、禁止領域データ22aと、バネ・ダンパモデルデータ22bとを記憶する。   As shown in FIG. 2, the robot control device 2 includes a control unit 21 and a storage unit 22. The control unit 21 includes an angle calculation unit 21a, a position correction unit 21b, a recalculation unit 21c, an operation instruction unit 21d, and a setting processing unit 21e. The storage unit 22 stores prohibited area data 22a and spring / damper model data 22b.

角度計算部21aは、物体検知センサ101の検知結果に基づいてマニピュレータ1の各関節の角度を計算する処理部である。具体的には、角度計算部21aは、物体検知センサ101の検知結果を用いて搾乳部100の移動先となる目標位置を決定し、搾乳部100の位置を目標位置と一致させるように、マニピュレータ1の各関節部に設けられたアクチュエータの回転角度を計算する。   The angle calculation unit 21 a is a processing unit that calculates the angle of each joint of the manipulator 1 based on the detection result of the object detection sensor 101. Specifically, the angle calculation unit 21a determines a target position that is the movement destination of the milking unit 100 using the detection result of the object detection sensor 101, and matches the position of the milking unit 100 with the target position. The rotation angle of the actuator provided in each joint part of 1 is calculated.

ここで、マニピュレータ1の構成について図3を用いて説明する。図3は、マニピュレータ1の構成を示す図である。図3に示すように、マニピュレータ1は、基台10と、第1リンク11〜第6リンク16と、フランジ17と、搾乳部100と、物体検知センサ101とを備える。   Here, the configuration of the manipulator 1 will be described with reference to FIG. FIG. 3 is a diagram illustrating a configuration of the manipulator 1. As shown in FIG. 3, the manipulator 1 includes a base 10, a first link 11 to a sixth link 16, a flange 17, a milking unit 100, and an object detection sensor 101.

基台10は、壁面や床面等の設置面Wに基端部が固定され、先端部において第1アクチュエータ11a(第1関節軸)を介して第1リンク11を回転可能に支持する構造材である。   The base 10 has a base end portion fixed to an installation surface W such as a wall surface or a floor surface, and a structural member that rotatably supports the first link 11 via a first actuator 11a (first joint axis) at the front end portion. It is.

第1リンク11は、第1アクチュエータ11aが駆動することによって基台10の先端部を中心として回転する構造材である。かかる第1リンク11は、先端部において第2アクチュエータ12a(第2関節軸)を介して第2リンク12を回転可能に支持する。第2リンク12は、第2アクチュエータ12aが駆動することによって第1リンク11の先端部を中心として回転する構造材である。かかる第2リンク12は、先端部において第3アクチュエータ13a(第3関節軸)を介して第3リンク13を回転可能に支持する。   The first link 11 is a structural material that rotates around the tip of the base 10 when the first actuator 11a is driven. The first link 11 rotatably supports the second link 12 via a second actuator 12a (second joint axis) at the tip. The second link 12 is a structural material that rotates around the tip of the first link 11 when the second actuator 12a is driven. The second link 12 rotatably supports the third link 13 via a third actuator 13a (third joint axis) at the tip.

第3リンク13は、第3アクチュエータ13aが駆動することによって第2リンク12の先端部を中心として回転する構造材である。かかる第3リンク13は、先端部において第4アクチュエータ14a(第4関節軸)を介して第4リンク14を回転可能に支持する。第4リンク14は、第4アクチュエータ14aが駆動することによって第3リンク13の先端部を中心として回転する構造材である。かかる第4リンク14は、先端部において第5アクチュエータ15a(第5関節軸)を介して第5リンク15を回転可能に支持する。   The third link 13 is a structural material that rotates around the tip of the second link 12 when the third actuator 13a is driven. The third link 13 rotatably supports the fourth link 14 via a fourth actuator 14a (fourth joint axis) at the tip. The fourth link 14 is a structural material that rotates around the tip of the third link 13 when the fourth actuator 14a is driven. The fourth link 14 rotatably supports the fifth link 15 via a fifth actuator 15a (fifth joint shaft) at the tip.

第5リンク15は、第5アクチュエータ15aが駆動することによって第4リンク14の先端部を中心として回転する構造材である。かかる第5リンク15は、先端部において第6アクチュエータ16a(第6関節軸)を介して第6リンク16を回転可能に支持する。第6リンク16は、第6アクチュエータ16aが駆動することによって第5リンク15の先端部を中心として回転する構造材である。かかる第6リンク16は、先端部において第7アクチュエータ17a(第7関節軸)を介してフランジ17と、フランジ17に取り付けられた搾乳部100および物体検知センサ101とを回転可能に支持する。   The fifth link 15 is a structural material that rotates around the tip of the fourth link 14 when the fifth actuator 15a is driven. The fifth link 15 rotatably supports the sixth link 16 via a sixth actuator 16a (sixth joint axis) at the tip. The sixth link 16 is a structural material that rotates around the tip of the fifth link 15 when the sixth actuator 16a is driven. The sixth link 16 rotatably supports the flange 17, the milking unit 100 and the object detection sensor 101 attached to the flange 17 via a seventh actuator 17 a (seventh joint shaft) at the tip.

なお、本実施例では、第3アクチュエータ13aが冗長軸としてあらかじめ設定されているものとするが、冗長軸として設定されるアクチュエータは、第3アクチュエータ13a以外であってもよい。このように、マニピュレータ1が冗長軸を備えることで、ターゲット部Tに対して求められた位置姿勢を取った場合であってもマニピュレータ1の姿勢を種々変更することができる。   In the present embodiment, the third actuator 13a is set in advance as a redundant axis, but the actuator set as the redundant axis may be other than the third actuator 13a. As described above, since the manipulator 1 includes the redundant axis, the posture of the manipulator 1 can be variously changed even when the position and posture obtained with respect to the target portion T are taken.

また、第1アクチュエータ11a〜第7アクチュエータ17aは、たとえば、減速機一体型のサーボモータによって構成される。また、第1アクチュエータ11a〜第7アクチュエータ17aには、各アクチュエータ11a〜17aの回転位置を検出するエンコーダがそれぞれ内蔵される。かかるエンコーダによって検出された回転位置は、通信ネットワークを介してロボット制御装置2へ入力されることとなる。   Further, the first actuator 11a to the seventh actuator 17a are constituted by, for example, a reduction gear integrated servo motor. The first actuator 11a to the seventh actuator 17a each incorporate an encoder for detecting the rotational position of each actuator 11a to 17a. The rotational position detected by the encoder is input to the robot control device 2 via the communication network.

物体検知センサ101は、ターゲット部Tを検知するためのセンサであり、ターゲット部Tの動作範囲を十分にカバーする検知領域を備える。ここでは、物体検知センサ101がカメラであるものとするが、これに限ったものではなく、3次元計測が可能なレーザセンサ等を物体検知センサ101として用いてもよい。   The object detection sensor 101 is a sensor for detecting the target portion T, and includes a detection region that sufficiently covers the operation range of the target portion T. Here, the object detection sensor 101 is assumed to be a camera. However, the present invention is not limited to this, and a laser sensor or the like capable of three-dimensional measurement may be used as the object detection sensor 101.

物体検知センサ101によって撮像された画像の画像情報は、通信ネットワークを介してロボット制御装置2の角度計算部21aへリアルタイムに入力される。   Image information of an image captured by the object detection sensor 101 is input to the angle calculation unit 21a of the robot control device 2 in real time via a communication network.

図2へ戻り、角度計算部21aについての説明を続ける。角度計算部21aは、物体検知センサ101から入力される画像情報に基づいてターゲット部Tの位置を検出する。これにより、ロボット制御装置2は、ターゲット部Tの位置をリアルタイムに認識することができる。なお、画像情報からターゲット部Tの位置を検出する手法としては、いずれの公知技術を用いてもかまわない。   Returning to FIG. 2, the description of the angle calculator 21a will be continued. The angle calculation unit 21 a detects the position of the target unit T based on the image information input from the object detection sensor 101. Thereby, the robot control apparatus 2 can recognize the position of the target part T in real time. Any known technique may be used as a method for detecting the position of the target portion T from the image information.

つづいて、角度計算部21aは、検出したターゲット部Tの位置を目標位置として決定し、かかる目標位置と搾乳部100の位置とを一致させるように第1アクチュエータ11a〜第7アクチュエータ17aの角度をそれぞれ計算する。これにより、マニピュレータ1の次の位置姿勢が仮決定される。   Subsequently, the angle calculation unit 21a determines the detected position of the target unit T as a target position, and sets the angles of the first actuator 11a to the seventh actuator 17a so that the target position matches the position of the milking unit 100. Calculate each. Thereby, the next position and orientation of the manipulator 1 are provisionally determined.

なお、本実施例では、第4アクチュエータ14a〜第7アクチュエータ17aの駆動により直線移動させることが可能な点を制御点としている。制御点とは、マニピュレータ1の動作位置を制御する位置である。具体的には、第6アクチュエータ16aの軸心付近に制御点が位置する。角度計算部21aは、目標位置に基づいて制御点の位置を決定した後、決定した制御点の位置に基づいて第1アクチュエータ11a〜第7アクチュエータ17aの角度を計算する。なお、第1アクチュエータ11a〜第7アクチュエータ17aの角度の計算には、逆キネマティクス演算等の一般的な手法を用いることができる。   In this embodiment, the control point is a point that can be linearly moved by driving the fourth actuator 14a to the seventh actuator 17a. The control point is a position for controlling the operating position of the manipulator 1. Specifically, the control point is located near the axis of the sixth actuator 16a. After determining the position of the control point based on the target position, the angle calculation unit 21a calculates the angles of the first actuator 11a to the seventh actuator 17a based on the determined position of the control point. In addition, general methods, such as a reverse kinematics calculation, can be used for calculation of the angle of the 1st actuator 11a-the 7th actuator 17a.

角度計算部21aは、算出した各アクチュエータ11a〜17aの角度データを位置修正部21bへ渡す。   The angle calculation unit 21a passes the calculated angle data of each actuator 11a to 17a to the position correction unit 21b.

位置修正部21bは、角度計算部21aによって計算された各アクチュエータ11a〜17aの角度から特定されるマニピュレータ1の各部位の位置のうち何れかが所定の禁止領域に含まれる場合に、禁止領域に含まれる部位の位置を禁止領域外の位置へ修正する処理部である。   The position correcting unit 21b is included in the prohibited region when any of the positions of the respective parts of the manipulator 1 specified from the angles of the actuators 11a to 17a calculated by the angle calculating unit 21a is included in the predetermined prohibited region. It is a processing unit for correcting the position of the included part to a position outside the prohibited area.

具体的には、位置修正部21bは、角度計算部21aから各アクチュエータ11a〜17aの角度データを受け取ると、まず、受け取った角度データから各部位の移動後の位置座標を特定する。ここでは、第1リンク11〜第6リンク16、フランジ17および第1アクチュエータ11a〜第7アクチュエータ17a等の位置座標を特定することとなる。   Specifically, when the position correction unit 21b receives the angle data of the actuators 11a to 17a from the angle calculation unit 21a, the position correction unit 21b first specifies the position coordinates after movement of each part from the received angle data. Here, the position coordinates of the first link 11 to the sixth link 16, the flange 17, the first actuator 11a to the seventh actuator 17a, and the like are specified.

つづいて、位置修正部21bは、特定した各部位の位置座標および記憶部22に記憶された禁止領域データ22aを用い、移動によりマニピュレータ1が禁止領域に侵入することとなるか否かを判定する。禁止領域とは、障害物等との接触を避けるためにマニピュレータ1の侵入を禁止した領域である。禁止領域データ22aは、かかる禁止領域の位置座標を含んだデータである。   Subsequently, the position correcting unit 21b determines whether or not the manipulator 1 enters the prohibited area by the movement using the specified position coordinates of each part and the prohibited area data 22a stored in the storage unit 22. . The prohibited area is an area where entry of the manipulator 1 is prohibited in order to avoid contact with an obstacle or the like. The prohibited area data 22a is data including the position coordinates of the prohibited area.

ここで、本実施例において設定される禁止領域について図4を用いて説明する。図4は、禁止領域の一例を示す図である。   Here, the prohibited areas set in the present embodiment will be described with reference to FIG. FIG. 4 is a diagram illustrating an example of the prohibited area.

図4に示すように、本実施例では、図示しないゲージに収容された乳牛Cの左後脚CLおよび右後脚CRが位置する領域として統計的に割り出された領域を覆うように、禁止領域A1および禁止領域A2がそれぞれ設定される。   As shown in FIG. 4, in this embodiment, it is prohibited to cover the area statistically determined as the area where the left hind leg CL and the right hind leg CR of the cow C housed in a gauge (not shown) are located. Area A1 and prohibited area A2 are set.

なお、本実施例では、マニピュレータ1が、乳牛Cの背後から乳牛Cの両後脚CL,CRの間を通ってターゲット部Tへ向かうこととしている。このため、上記のように左後脚CLおよび右後脚CRの周囲を覆うような禁止領域A1,A2を設定することとしたが、禁止領域は、マニピュレータがどの位置からターゲット部へ向かうかによって適宜変更可能である。たとえば、マニピュレータが乳牛の左側面からターゲット部へ向かう仕様である場合には、左後脚の周囲を覆う領域のみを禁止領域として設定してもよい。   In the present embodiment, the manipulator 1 goes from the back of the cow C to the target portion T through between the rear legs CL and CR of the cow C. For this reason, the forbidden areas A1 and A2 are set so as to cover the left hind leg CL and the right hind leg CR as described above. The forbidden area depends on the position from which the manipulator is directed to the target unit. It can be changed as appropriate. For example, when the manipulator is designed to go from the left side surface of the dairy cow to the target unit, only the area covering the periphery of the left hind leg may be set as the prohibited area.

また、ここでは、禁止領域A1,A2を搾乳対象となる乳牛Cに依らず一様に適用する場合の例について説明するが、搾乳対象となる乳牛Cの体格に応じて禁止領域A1,A2を動的に変化させてもよい。   Moreover, although the example in the case of applying uniformly the prohibition area | region A1, A2 irrespective of the dairy cow C used as milking object is demonstrated here, according to the physique of the cow C used as milking object, prohibited area A1, A2 is described. It may be changed dynamically.

たとえば、乳牛Cに設けられたIDタグから乳牛Cの体格に関する情報(サイズや重量など)を取得し、取得した情報に基づいて禁止領域の大きさを変化させてもよい。このようにすれば、搾乳対象となる乳牛Cの大きさに合わせて禁止領域A1,A2を適切に設定することができる。   For example, information (size, weight, etc.) regarding the physique of the dairy cow C may be acquired from an ID tag provided on the dairy cow C, and the size of the prohibited area may be changed based on the acquired information. In this way, the prohibited areas A1 and A2 can be appropriately set according to the size of the cow C to be milked.

また、禁止領域A1,A2は、作業者が入力装置3を用いて手動で変更することもできる。禁止領域A1,A2の設定変更処理は、後述する設定処理部21eによって行われる。   The prohibited areas A1 and A2 can be manually changed by the operator using the input device 3. The setting change processing for the prohibited areas A1 and A2 is performed by a setting processing unit 21e described later.

図2へ戻り、位置修正部21bの説明を続ける。位置修正部21bは、移動後におけるマニピュレータ1の何れかの位置座標が、禁止領域A1(または禁止領域A2)に含まれる場合に、移動後のマニピュレータ1が禁止領域A1(または禁止領域A2)に侵入すると判定する。   Returning to FIG. 2, the description of the position correcting unit 21b will be continued. When any position coordinate of the manipulator 1 after movement is included in the prohibited area A1 (or prohibited area A2), the position correcting unit 21b moves the manipulator 1 after moving to the prohibited area A1 (or prohibited area A2). It is determined to invade.

移動後のマニピュレータ1が禁止領域A1(または禁止領域A2)に侵入すると判定すると、位置修正部21bは、位置修正処理を行う。位置修正処理とは、移動によって禁止領域A1(または禁止領域A2)へ侵入することとなるマニピュレータ1の部位の位置を禁止領域A1および禁止領域A2外の位置へ修正する処理である。   If it is determined that the moved manipulator 1 enters the prohibited area A1 (or the prohibited area A2), the position correction unit 21b performs position correction processing. The position correction process is a process of correcting the position of the part of the manipulator 1 that will enter the prohibited area A1 (or the prohibited area A2) by movement to a position outside the prohibited area A1 and the prohibited area A2.

ここで、位置修正部21bにより実行される位置修正処理について図5−1および図5−2を用いて説明する。図5−1は、目標位置へ移動する前のマニピュレータ1を示す図であり、図5−2は、移動後のマニピュレータ1の位置が位置修正処理により修正される様子を示す図である。なお、図5−2では、目標位置への移動によってマニピュレータ1の第4リンク14が禁止領域A1へ侵入することとなる場合の例について示している。   Here, the position correction process executed by the position correction unit 21b will be described with reference to FIGS. FIG. 5A is a diagram illustrating the manipulator 1 before moving to the target position, and FIG. 5B is a diagram illustrating a state in which the position of the manipulator 1 after movement is corrected by the position correction process. FIG. 5B illustrates an example in which the fourth link 14 of the manipulator 1 enters the prohibited area A1 due to the movement to the target position.

図5−1に示すように、ロボット制御装置2では、角度計算部21aが、物体検知センサ101から入力される画像情報に基づいて目標位置Sを決定するとともに、決定した目標位置Sに基づいて制御点の位置を決定する。   As illustrated in FIG. 5A, in the robot control device 2, the angle calculation unit 21a determines the target position S based on the image information input from the object detection sensor 101, and based on the determined target position S. Determine the position of the control point.

そして、角度計算部21aは、現在の制御点の位置が決定した制御点の位置と一致するように各アクチュエータ11a〜17aの角度を計算する。これにより、目標位置Sへ移動後のマニピュレータ1の位置姿勢(各部位の位置座標)が特定される。目標位置Sへ移動後のマニピュレータ1を図5−2において破線で示す。   Then, the angle calculation unit 21a calculates the angles of the actuators 11a to 17a so that the current control point position matches the determined control point position. Thereby, the position and orientation (position coordinates of each part) of the manipulator 1 after moving to the target position S are specified. The manipulator 1 after moving to the target position S is indicated by a broken line in FIG.

ここで、図5−2に示すように、目標位置Sへの移動によってマニピュレータ1の第4リンク14が禁止領域A1に侵入するとする。かかる場合、位置修正部21bは、第4リンク14の位置を禁止領域A1外の位置へ修正する。   Here, as shown in FIG. 5B, it is assumed that the fourth link 14 of the manipulator 1 enters the prohibited area A1 by moving to the target position S. In such a case, the position correcting unit 21b corrects the position of the fourth link 14 to a position outside the prohibited area A1.

具体的には、位置修正部21bは、禁止領域A1の境界面と第4リンク14との間に仮想的なバネ・ダンパモデルを設定する。そして、位置修正部21bは、第4リンク14の移動によってバネ・ダンパモデルへ加わる力と、仮想バネの弾性力および仮想ダンパの粘性力とがつりあう位置(平衡点)を算出し、この平衡点の位置を第4リンク14の移動後の位置として修正する。   Specifically, the position correcting unit 21b sets a virtual spring / damper model between the boundary surface of the prohibited area A1 and the fourth link 14. Then, the position correcting unit 21b calculates a position (equilibrium point) where the force applied to the spring / damper model by the movement of the fourth link 14, and the elastic force of the virtual spring and the viscous force of the virtual damper are balanced. Is corrected as the position after the movement of the fourth link 14.

以下、位置修正処理の内容について図6を用いてさらに詳細に説明する。図6は、位置修正処理の動作例を示す図である。図6では、移動前のマニピュレータ1を実線で、移動後のマニピュレータ1を破線でそれぞれ示している。なお、位置修正部21bは、各アクチュエータ11a〜17aから出力されるエンコーダ値(各アクチュエータ11a〜17aの回転位置)からマニピュレータ1の移動前の位置姿勢を特定することが可能である。   Hereinafter, the contents of the position correction process will be described in more detail with reference to FIG. FIG. 6 is a diagram illustrating an operation example of the position correction process. In FIG. 6, the manipulator 1 before movement is indicated by a solid line, and the manipulator 1 after movement is indicated by a broken line. The position correction unit 21b can specify the position and orientation of the manipulator 1 before the movement from the encoder values (rotational positions of the actuators 11a to 17a) output from the actuators 11a to 17a.

図6に示すように、位置修正部21bは、まず、移動後の第4リンク14と禁止領域A1との交点P1の座標を算出する。つづいて、位置修正部21bは、交点P1と、交点P1に位置することとなる第4リンク14の移動前の位置P1’との間に、バネ・ダンパモデルMを仮想的に設定する。かかるバネ・ダンパモデルMは、記憶部22に記憶されたバネ・ダンパモデルデータ22bを用いて設定される。   As shown in FIG. 6, the position correcting unit 21b first calculates the coordinates of the intersection point P1 between the moved fourth link 14 and the prohibited area A1. Subsequently, the position correcting unit 21b virtually sets the spring / damper model M between the intersection point P1 and the position P1 'before the movement of the fourth link 14 located at the intersection point P1. The spring / damper model M is set using the spring / damper model data 22 b stored in the storage unit 22.

バネ・ダンパモデルデータ22bは、仮想バネのバネ定数および自然長、仮想ダンパのダンパ定数等の数値を含んだデータである。なお、かかるバネ・ダンパモデルデータ22bは、作業者等が入力装置3を操作することによって任意に設定変更することができる。   The spring / damper model data 22b is data including numerical values such as the spring constant and natural length of the virtual spring and the damper constant of the virtual damper. The spring / damper model data 22b can be arbitrarily changed by an operator or the like operating the input device 3.

つづいて、位置修正部21bは、第4リンク14の移動によってバネ・ダンパモデルMに加わる力を算出する。そして、位置修正部21bは、算出した力とバネ・ダンパモデルデータ22bとして記憶されたバネ定数等の数値を用いて平衡点の位置座標を算出する。   Subsequently, the position correction unit 21 b calculates the force applied to the spring / damper model M by the movement of the fourth link 14. Then, the position correcting unit 21b calculates the position coordinates of the equilibrium point using the calculated force and the numerical values such as the spring constant stored as the spring / damper model data 22b.

具体的には、第4リンク14の移動によってバネ・ダンパモデルMに加わる力をF、仮想ダンパのダンパ定数をD、バネ定数をk、仮想バネの自然長をxとすると、位置修正部21bは、

Figure 2012240144
式(1)を用いて、未知数xを求める。未知数xは、第4リンク14がバネ・ダンパモデルMへ作用させる力とバネ・ダンパモデルMが第4リンク14へ作用させる力とがつりあった状態における仮想バネの長さである。 Specifically, the force applied to the spring-damper model M by the movement of the fourth link 14 F, the damper constant of the virtual damper D, and the spring constant k, if the natural length of the virtual spring and x 0, the position correcting unit 21b
Figure 2012240144
Using equation (1), an unknown number x is obtained. The unknown x is the length of the virtual spring in a state where the force that the fourth link 14 acts on the spring / damper model M and the force that the spring / damper model M acts on the fourth link 14 are balanced.

位置修正部21bは、かかる未知数xを算出することで、平衡点の位置座標を得ることができる。そして、位置修正部21bは、かかる平衡点の位置座標を位置P1’の移動後の位置座標として再計算部21cへ渡す。   The position correction unit 21b can obtain the position coordinates of the equilibrium point by calculating the unknown number x. Then, the position correction unit 21b passes the position coordinates of the equilibrium point to the recalculation unit 21c as the position coordinates after the movement of the position P1 '.

図2へ戻り、再計算部21cについて説明する。再計算部21cは、位置修正部21bから受け取った第4リンク14の修正後の位置座標に基づいて、各アクチュエータ11a〜17aの角度を再計算する処理部である。   Returning to FIG. 2, the recalculation unit 21c will be described. The recalculation unit 21c is a processing unit that recalculates the angles of the actuators 11a to 17a based on the corrected position coordinates of the fourth link 14 received from the position correction unit 21b.

具体的には、再計算部21cは、搾乳部100が目標位置Sに位置した状態を維持しつつ、第4リンク14の位置P1’が平衡点に位置するように、各アクチュエータ11a〜17aの角度を再計算する。   Specifically, the recalculation unit 21c maintains the state where the milking unit 100 is located at the target position S, while the position P1 ′ of the fourth link 14 is located at the equilibrium point of each of the actuators 11a to 17a. Recalculate the angle.

なお、マニピュレータ1は、冗長軸を備えるため、搾乳部100が目標位置Sに位置した状態を維持しつつ、その他の部位の位置姿勢を変更することができる。再計算部21cは、再計算後の各アクチュエータ11a〜17aの角度を動作指示部21dへ渡す。   In addition, since the manipulator 1 is provided with a redundant shaft, the position and orientation of other parts can be changed while maintaining the state where the milking unit 100 is located at the target position S. The recalculation unit 21c passes the angles of the actuators 11a to 17a after the recalculation to the operation instruction unit 21d.

動作指示部21dは、再計算部21cから受け取った各アクチュエータ11a〜17aの角度に基づいて各アクチュエータ11a〜17aを回転駆動させる処理部である。これにより、マニピュレータ1は、図5−2において実線で示したように禁止領域A1へ侵入することなく目標位置Sへ移動することとなる。   The operation instruction unit 21d is a processing unit that rotationally drives the actuators 11a to 17a based on the angles of the actuators 11a to 17a received from the recalculation unit 21c. As a result, the manipulator 1 moves to the target position S without entering the prohibited area A1 as shown by the solid line in FIG.

設定処理部21eは、入力装置3からの指示に従って禁止領域データ22aまたはバネ・ダンパモデルデータ22bの内容を変更する処理部である。具体的には、設定処理部21eは、入力装置3からの指示に従って、禁止領域A1,A2の大きさや位置を変更したり、仮想バネのバネ定数や自然長、仮想ダンパのダンパ定数等を変更したりする。   The setting processing unit 21e is a processing unit that changes the contents of the prohibited area data 22a or the spring / damper model data 22b in accordance with an instruction from the input device 3. Specifically, the setting processing unit 21e changes the size and position of the prohibited areas A1 and A2, or changes the spring constant or natural length of the virtual spring, the damper constant of the virtual damper, or the like according to an instruction from the input device 3. To do.

なお、設定処理部21eは、上述したように、外部から乳牛Cの体格に関する情報を取得し、取得した情報に基づいて禁止領域データ22aの内容を変更するようにしてもよい。   As described above, the setting processing unit 21e may acquire information related to the physique of the cow C from the outside, and may change the content of the prohibited area data 22a based on the acquired information.

記憶部22は、不揮発性メモリやハードディスクドライブといった記憶デバイスで構成され、禁止領域データ22aと、バネ・ダンパモデルデータ22bとを記憶する。   The storage unit 22 is configured by a storage device such as a nonvolatile memory or a hard disk drive, and stores prohibited area data 22a and spring / damper model data 22b.

なお、本実施例では、ロボット制御装置2と入力装置3とを別体として説明したが、これに限ったものではなく、ロボット制御装置2と入力装置3とを1つの装置として構成してもよい。また、本実施例では、物体検知センサ101からの画像情報に基づいて目標位置を決定する処理をロボット制御装置2で行うこととしたが、かかる処理を他の装置で行うようにしてもよい。   In the present embodiment, the robot control device 2 and the input device 3 are described as separate bodies. However, the present invention is not limited to this, and the robot control device 2 and the input device 3 may be configured as one device. Good. In the present embodiment, the process of determining the target position based on the image information from the object detection sensor 101 is performed by the robot control apparatus 2, but such a process may be performed by another apparatus.

次に、ロボット制御装置2の具体的動作について図7を用いて説明する。図7は、ロボット制御装置2が実行する処理手順を示すフローチャートである。   Next, a specific operation of the robot control apparatus 2 will be described with reference to FIG. FIG. 7 is a flowchart showing a processing procedure executed by the robot control apparatus 2.

図7に示すように、ロボット制御装置2では、角度計算部21aが、物体検知センサ101からの画像情報を取得し(ステップS101)、取得した画像情報に基づいて目標位置を決定する(ステップS102)。また、角度計算部21aは、決定した目標位置に基づいて各アクチュエータ11a〜17aの角度を計算する(ステップS103)。   As shown in FIG. 7, in the robot control apparatus 2, the angle calculation unit 21a acquires image information from the object detection sensor 101 (step S101), and determines a target position based on the acquired image information (step S102). ). Further, the angle calculator 21a calculates the angles of the actuators 11a to 17a based on the determined target position (step S103).

つづいて、ロボット制御装置2では、位置修正部21bが、マニピュレータ1の各部位の移動後の位置を特定し(ステップS104)、特定した各部位の位置が禁止領域A1(または禁止領域A2)に含まれるか否かを判定する(ステップS105)。   Subsequently, in the robot control device 2, the position correction unit 21b specifies the position of each part of the manipulator 1 after the movement (step S104), and the position of each specified part becomes the prohibited area A1 (or prohibited area A2). It is determined whether it is included (step S105).

かかる処理において、マニピュレータ1の各部位の移動後の位置が禁止領域A1(または禁止領域A2)に含まれない場合(ステップS105,No)、動作指示部21dは、ステップS103において算出された各アクチュエータ11a〜17aの角度に基づいてマニピュレータ1に対して動作指示を行って(ステップS108)、処理を終了する。   In such a process, when the moved position of each part of the manipulator 1 is not included in the prohibited area A1 (or the prohibited area A2) (No in step S105), the operation instruction unit 21d displays the actuators calculated in step S103. An operation instruction is issued to the manipulator 1 based on the angles 11a to 17a (step S108), and the process is terminated.

一方、マニピュレータ1の各部位の移動後の位置が禁止領域A1(または禁止領域A2)に含まれると判定した場合(ステップS105,Yes)、位置修正部21bは、バネ・ダンパモデルデータ22bを用いて位置修正処理を行う(ステップS106)。   On the other hand, when it is determined that the moved position of each part of the manipulator 1 is included in the prohibited area A1 (or the prohibited area A2) (Yes in step S105), the position correcting unit 21b uses the spring / damper model data 22b. Then, position correction processing is performed (step S106).

そして、ロボット制御装置2では、再計算部21cが、修正後の位置に基づいて各アクチュエータ11a〜17aの角度を再計算し(ステップS107)、動作指示部21dが、各アクチュエータ11a〜17aの再計算後の角度に基づいてマニピュレータ1に対して動作指示を行って(ステップS108)、処理を終了する。   In the robot control apparatus 2, the recalculation unit 21c recalculates the angles of the actuators 11a to 17a based on the corrected positions (step S107), and the operation instruction unit 21d re-calculates the actuators 11a to 17a. An operation instruction is given to the manipulator 1 based on the calculated angle (step S108), and the process is terminated.

なお、ここでは、ステップS103において第1アクチュエータ11a〜第7アクチュエータ17aの角度を全て計算することとしたが、これに限ったものではない。たとえば、ステップS103では基本軸(たとえば、第1アクチュエータ11a〜第4アクチュエータ14a)の角度のみを計算し、ステップS107において基本軸の角度の再計算を行った後、残りの軸(たとえば、第5アクチュエータ15a〜第7アクチュエータ17a)の角度を計算することとしてもよい。   Here, all the angles of the first actuator 11a to the seventh actuator 17a are calculated in step S103, but the present invention is not limited to this. For example, in step S103, only the angle of the basic axis (for example, the first actuator 11a to the fourth actuator 14a) is calculated, and after recalculating the angle of the basic axis in step S107, the remaining axes (for example, fifth The angles of the actuator 15a to the seventh actuator 17a) may be calculated.

上述してきたように、本実施例では、角度計算部が、目標位置に基づいて各アクチュエータの角度を計算し、位置修正部が、角度計算部によって計算された各アクチュエータの角度から特定されるマニピュレータの各部位の位置のうち何れかが所定の禁止領域に含まれる場合に、禁止領域に含まれる部位の位置を禁止領域外の位置へ修正し、再計算部が、位置修正部によって修正された部位の位置に基づいて各アクチュエータの角度を再計算することとした。したがって、冗長自由度を有するマニピュレータを適切に制御することができる。   As described above, in this embodiment, the angle calculation unit calculates the angle of each actuator based on the target position, and the position correction unit is identified from the angle of each actuator calculated by the angle calculation unit. When any of the positions of each of the parts is included in the predetermined prohibited area, the position of the part included in the prohibited area is corrected to a position outside the prohibited area, and the recalculation unit is corrected by the position correcting unit The angle of each actuator was recalculated based on the position of the part. Accordingly, it is possible to appropriately control a manipulator having a redundancy degree of freedom.

また、本実施例では、位置修正部が、禁止領域に含まれることとなる部位と禁止領域の境界面との間に仮想的なバネ・ダンパモデルを設定し、当該部位がバネ・ダンパモデルへ作用させる力とバネ・ダンパモデルが当該部位へ作用させる力とがつりあう位置を当該部位の修正後の位置とすることとした。   Further, in this embodiment, the position correction unit sets a virtual spring / damper model between the part that is included in the prohibited area and the boundary surface of the prohibited area, and the part is changed to the spring / damper model. The position where the force to be applied and the force applied by the spring / damper model to the part is determined as the corrected position of the part.

これにより、マニピュレータの修正後の位置姿勢が一意に決定されるため、たとえば、マニピュレータの修正後の位置姿勢をシミュレーション等により探索的に決定する場合と比較して演算量を削減することができる。   As a result, the corrected position and orientation of the manipulator are uniquely determined. Therefore, for example, it is possible to reduce the amount of calculation compared to a case where the corrected position and orientation of the manipulator is determined exploratoryly by simulation or the like.

したがって、本実施例のように作業対象物の位置が変化する場合であっても、障害物等との接触を適切に回避しつつ、マニピュレータを作業対象物に対してリアルタイムに追従させることが可能となる。   Therefore, even when the position of the work object changes as in the present embodiment, it is possible to cause the manipulator to follow the work object in real time while appropriately avoiding contact with an obstacle or the like. It becomes.

また、本実施例では、位置修正部が、禁止領域に含まれることとなる部位と禁止領域との交点を算出し、算出した交点に基づいてバネ・ダンパモデルの設定位置を決定することとした。したがって、バネ・ダンパモデルの設定位置を少ない演算量で決定することができる。   Further, in the present embodiment, the position correcting unit calculates the intersection between the part that is included in the prohibited region and the prohibited region, and determines the setting position of the spring / damper model based on the calculated intersection. . Therefore, the setting position of the spring / damper model can be determined with a small amount of calculation.

ところで、上述してきた実施例では、移動により禁止領域へ侵入することとなるリンクと禁止領域との交点をバネ・ダンパモデルの設定位置として決定することとしたが、バネ・ダンパモデルの設定位置は、これに限ったものではない。   By the way, in the embodiment described above, the intersection of the link and the prohibited area that will enter the prohibited area by movement is determined as the setting position of the spring / damper model, but the setting position of the spring / damper model is This is not the only one.

以下では、バネ・ダンパモデルの設定位置の他の例について図8を用いて説明する。図8は、バネ・ダンパモデルの設定位置の他の例を示す図である。なお、図8では、移動の途中で禁止領域A1に接した状態となったマニピュレータ1を一点鎖線で、移動後のマニピュレータ1を破線でそれぞれ示している。   Hereinafter, another example of the setting position of the spring / damper model will be described with reference to FIG. FIG. 8 is a diagram showing another example of the setting position of the spring / damper model. In FIG. 8, the manipulator 1 that has been in contact with the prohibited area A <b> 1 during the movement is indicated by a one-dot chain line, and the manipulator 1 after the movement is indicated by a broken line.

図8に示すように、禁止領域A1に侵入することとなる第4リンク14と禁止領域A1との交点をそれぞれP1,P2とすると、バネ・ダンパモデルMの第4リンク14側への設定位置は、交点P1,P2に限らず、第4リンク14の線分P1,P2上の何れの位置であってもよい。   As shown in FIG. 8, when the intersections of the fourth link 14 and the prohibited area A1 that will enter the prohibited area A1 are P1 and P2, respectively, the set position of the spring / damper model M on the fourth link 14 side. Is not limited to the intersection points P1 and P2, but may be any position on the line segments P1 and P2 of the fourth link 14.

たとえば、交点P1および交点P2の中点P3を、バネ・ダンパモデルMの第4リンク14側への設定位置としてもよいし、第4リンク14が禁止領域A1と最初に接する点P4をバネ・ダンパモデルMの第4リンク14側への設定位置としてもよい。   For example, the midpoint P3 of the intersection point P1 and the intersection point P2 may be set as the setting position on the fourth link 14 side of the spring / damper model M, or the point P4 where the fourth link 14 first contacts the prohibited area A1 is It is good also as a setting position to the 4th link 14 side of damper model M.

また、バネ・ダンパモデルMの禁止領域A1側への設定位置についても、禁止領域A1の線分P1,P2上の何れの位置であってもよい。   Further, the set position of the spring / damper model M toward the prohibited area A1 may be any position on the line segments P1 and P2 of the prohibited area A1.

また、上述してきた実施例では、搾乳対象となる乳牛に依らず禁止領域を固定とする(もしくは、乳牛の体格に応じて動的に変更する)こととしたが、これに限ったものではない。   In the embodiment described above, the prohibited area is fixed (or dynamically changed according to the physique of the dairy cow) regardless of the dairy cow to be milked, but is not limited thereto. .

たとえば、作業対象物である乳牛の乳頭と障害物である両後脚とは連繋しているため、乳頭の位置がずれれば両後脚の位置もずれる可能性がある。そこで、物体検知センサからの画像情報に基づいて決定されるターゲット部の位置に応じて、禁止領域の位置または大きさを動的に変更するようにしてもよい。   For example, since the nipple of the dairy cow that is the work object and the two hind legs that are the obstacles are connected, the position of both hind legs may be shifted if the position of the nipple is shifted. Therefore, the position or size of the prohibited area may be dynamically changed according to the position of the target portion determined based on the image information from the object detection sensor.

このようにすれば、マニピュレータ1と乳牛の後脚との接触をより確実に回避することができる。   In this way, contact between the manipulator 1 and the rear leg of the cow can be avoided more reliably.

また、上述してきた実施例では、マニピュレータの一例として、7個のアクチュエータを有する7自由度のマニピュレータを用いて説明したが、マニピュレータの自由度は、これに限ったものではなく、8自由度以上の自由度を有するマニピュレータであってもよい。   In the above-described embodiments, a 7-degree-of-freedom manipulator having seven actuators has been described as an example of a manipulator. However, the degree of freedom of the manipulator is not limited to this, and the degree of freedom is 8 degrees or more. It may be a manipulator having a degree of freedom.

また、6自由度以下のマニピュレータであっても、作業対象物へのアプローチに1以上の自由度が許容される場合には、相対的にマニピュレータが冗長自由度を有することになるが、そのような場合であっても本発明を適用することができる。   Further, even if the manipulator has 6 degrees of freedom or less, if one or more degrees of freedom are allowed in the approach to the work object, the manipulator has a relative degree of freedom. Even in such a case, the present invention can be applied.

さらなる効果や変形例は、当業者によって容易に導き出すことができる。このため、本発明のより広範な態様は、以上のように表しかつ記述した特定の詳細および代表的な実施の形態に限定されるものではない。したがって、添付の特許請求の範囲およびその均等物によって定義される総括的な発明の概念の精神または範囲から逸脱することなく、様々な変更が可能である。   Further effects and modifications can be easily derived by those skilled in the art. Thus, the broader aspects of the present invention are not limited to the specific details and representative embodiments shown and described above. Accordingly, various modifications can be made without departing from the spirit or scope of the general inventive concept as defined by the appended claims and their equivalents.

C 乳牛
T ターゲット部
W 設置面
CL 左後脚
CR 右後脚
A1 禁止領域(左後脚側)
A2 禁止領域(右後脚側)
M バネ・ダンパモデル
1 マニピュレータ
11 第1リンク
12 第2リンク
13 第3リンク
14 第4リンク
15 第5リンク
16 第6リンク
17 フランジ
11a 第1アクチュエータ
12a 第2アクチュエータ
13a 第3アクチュエータ
14a 第4アクチュエータ
15a 第5アクチュエータ
16a 第6アクチュエータ
17a 第7アクチュエータ
100 搾乳部
101 物体検知センサ
2 ロボット制御装置
21 制御部
21a 角度計算部
21b 位置修正部
21c 再計算部
21d 動作指示部
21e 設定処理部
22 記憶部
22a 禁止領域データ
22b バネ・ダンパモデルデータ
3 入力装置
C Dairy cow T Target part W Installation surface CL Left hind leg CR Right hind leg A1 Prohibited area (left hind leg side)
A2 prohibited area (right rear leg side)
M spring / damper model 1 manipulator 11 first link 12 second link 13 third link 14 fourth link 15 fifth link 16 sixth link 17 flange 11a first actuator 12a second actuator 13a third actuator 14a fourth actuator 15a 5th actuator 16a 6th actuator 17a 7th actuator 100 Milking part 101 Object detection sensor 2 Robot controller 21 Control part 21a Angle calculation part 21b Position correction part 21c Recalculation part 21d Operation instruction part 21e Setting process part 22 Storage part 22a Prohibition Area data 22b Spring / damper model data 3 Input device

Claims (7)

複数の関節軸を有するマニピュレータを制御するロボット制御装置であって、
目標位置に基づいて前記関節軸の角度を計算する角度計算部と、
前記角度計算部によって計算された前記関節軸の角度から特定される前記マニピュレータの各部位の位置のうち何れかが所定の禁止領域に含まれる場合に、前記禁止領域に含まれる前記部位の位置を前記禁止領域外の位置へ修正する位置修正部と、
前記位置修正部によって修正された前記部位の位置に基づいて前記関節軸の角度を再計算する再計算部と
を備えることを特徴とするロボット制御装置。
A robot control device for controlling a manipulator having a plurality of joint axes,
An angle calculator that calculates an angle of the joint axis based on a target position;
When any of the positions of each part of the manipulator specified from the angle of the joint axis calculated by the angle calculation unit is included in a predetermined prohibited area, the position of the part included in the prohibited area is determined. A position correction unit for correcting to a position outside the prohibited area;
A robot control device comprising: a recalculation unit that recalculates an angle of the joint axis based on the position of the part corrected by the position correction unit.
前記位置修正部は、
前記禁止領域に含まれることとなる前記部位と前記禁止領域の境界面との間に仮想的なバネ・ダンパモデルを設定し、前記部位が前記バネ・ダンパモデルへ作用させる力と前記バネ・ダンパモデルが前記部位へ作用させる力とがつりあう位置を前記部位の修正後の位置とすることを特徴とする請求項1に記載のロボット制御装置。
The position correcting unit is
A virtual spring / damper model is set between the part to be included in the forbidden area and a boundary surface of the forbidden area, and the force that the part acts on the spring / damper model and the spring / damper The robot control apparatus according to claim 1, wherein a position where the force applied to the part by the model balances is a corrected position of the part.
前記位置修正部は、
前記禁止領域に含まれることとなる前記部位と前記禁止領域との交点を算出し、算出した交点に基づいて前記バネ・ダンパモデルの設定位置を決定することを特徴とする請求項2に記載のロボット制御装置。
The position correcting unit is
The intersection of the said part and the prohibition area | region which will be contained in the said prohibition area is calculated, The setting position of the said spring damper model is determined based on the calculated intersection. Robot control device.
所定の入力装置からの指示に従って前記禁止領域を設定する設定処理部をさらに備えることを特徴とする請求項1、2または3に記載のロボット制御装置。   4. The robot control device according to claim 1, further comprising a setting processing unit configured to set the prohibited area in accordance with an instruction from a predetermined input device. 前記設定処理部は、
作業対象物に関する情報を取得するとともに、取得した前記作業対象物に関する情報に基づいて前記禁止領域を変更することを特徴とする請求項4に記載のロボット制御装置。
The setting processing unit
The robot control apparatus according to claim 4, wherein the robot control apparatus acquires information related to a work target and changes the prohibited area based on the acquired information related to the work target.
複数の関節軸を有するマニピュレータおよび当該マニピュレータを制御するロボット制御装置を備えるロボットシステムであって、
前記ロボット制御装置は、
目標位置に基づいて前記関節軸の角度を計算する角度計算部と、
前記角度計算部によって計算された前記関節軸の角度から特定される前記マニピュレータの各部位の位置のうち何れかが所定の禁止領域に含まれる場合に、前記禁止領域に含まれる前記部位の位置を前記禁止領域外の位置へ修正する位置修正部と、
前記位置修正部によって修正された前記部位の位置に基づいて前記関節軸の角度を再計算する再計算部と
を備えることを特徴とするロボットシステム。
A robot system comprising a manipulator having a plurality of joint axes and a robot controller for controlling the manipulator,
The robot controller is
An angle calculator that calculates an angle of the joint axis based on a target position;
When any of the positions of each part of the manipulator specified from the angle of the joint axis calculated by the angle calculation unit is included in a predetermined prohibited area, the position of the part included in the prohibited area is determined. A position correction unit for correcting to a position outside the prohibited area;
A robot system comprising: a recalculation unit that recalculates an angle of the joint axis based on the position of the part corrected by the position correction unit.
入力操作を受け付ける入力装置
をさらに備え、
前記ロボット制御装置は、
前記入力装置からの指示に従って前記禁止領域または前記バネ・ダンパモデルの設定変更を行うことを特徴とする請求項6に記載のロボットシステム。
An input device that accepts input operations;
The robot controller is
The robot system according to claim 6, wherein the setting of the prohibited area or the spring / damper model is changed in accordance with an instruction from the input device.
JP2011111071A 2011-05-18 2011-05-18 Robot control device and robot system Pending JP2012240144A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011111071A JP2012240144A (en) 2011-05-18 2011-05-18 Robot control device and robot system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011111071A JP2012240144A (en) 2011-05-18 2011-05-18 Robot control device and robot system

Publications (1)

Publication Number Publication Date
JP2012240144A true JP2012240144A (en) 2012-12-10

Family

ID=47462375

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011111071A Pending JP2012240144A (en) 2011-05-18 2011-05-18 Robot control device and robot system

Country Status (1)

Country Link
JP (1) JP2012240144A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014018912A (en) * 2012-07-18 2014-02-03 Seiko Epson Corp Robot control device, robot control method, robot control program and robot system
JP2016107384A (en) * 2014-12-09 2016-06-20 トヨタ自動車株式会社 Interference avoidance method, control device and program

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05345291A (en) * 1992-06-15 1993-12-27 Fanuc Ltd Working area limitation for robot
JP2007203380A (en) * 2006-01-30 2007-08-16 Kawasaki Heavy Ind Ltd Instruction support device for robot
JP2010052093A (en) * 2008-08-28 2010-03-11 Kobe Steel Ltd Method for avoiding interference of robot and robot system
JP2010152684A (en) * 2008-12-25 2010-07-08 Toshiba Corp Method and apparatus for generating trajectory of mobile body
JP2011011263A (en) * 2009-06-30 2011-01-20 Fanuc Ltd Off-line program creation device of robot with additional axis

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05345291A (en) * 1992-06-15 1993-12-27 Fanuc Ltd Working area limitation for robot
JP2007203380A (en) * 2006-01-30 2007-08-16 Kawasaki Heavy Ind Ltd Instruction support device for robot
JP2010052093A (en) * 2008-08-28 2010-03-11 Kobe Steel Ltd Method for avoiding interference of robot and robot system
JP2010152684A (en) * 2008-12-25 2010-07-08 Toshiba Corp Method and apparatus for generating trajectory of mobile body
JP2011011263A (en) * 2009-06-30 2011-01-20 Fanuc Ltd Off-line program creation device of robot with additional axis

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014018912A (en) * 2012-07-18 2014-02-03 Seiko Epson Corp Robot control device, robot control method, robot control program and robot system
JP2016107384A (en) * 2014-12-09 2016-06-20 トヨタ自動車株式会社 Interference avoidance method, control device and program
CN105690410A (en) * 2014-12-09 2016-06-22 丰田自动车株式会社 Collision avoidance method, control device, and program
US9827675B2 (en) 2014-12-09 2017-11-28 Toyota Jidosha Kabushiki Kaisha Collision avoidance method, control device, and program

Similar Documents

Publication Publication Date Title
CN107921637B (en) Robot system
JP6420229B2 (en) A robot system including a video display device that superimposes and displays an image of a virtual object on a video of a robot
JP6963748B2 (en) Robot system and robot system control method
JP4844453B2 (en) Robot teaching apparatus and teaching method
US9221176B2 (en) Robot system and method for controlling the same
US20220388160A1 (en) Control device, control system, robot system, and control method
JP5458769B2 (en) Robot control device
JPWO2018092243A1 (en) Work position correction method and work robot
JP7007791B2 (en) Robot driving methods, computer programs, and robot systems
CN114845841B (en) Control method, control device, robot system, program, and recording medium
JP2012240144A (en) Robot control device and robot system
JP2011140084A (en) Controller, robot, robot system, and following method of robot
US20170028548A1 (en) Robot control device and robot control method
WO2020027106A1 (en) Robot system
JP7447568B2 (en) Simulation equipment and programs
JP2006318301A (en) Adaptive visual feedback control method
JP7518610B2 (en) Control device, control system, robot system, and control method
WO2023053374A1 (en) Control device and robot system
CN116330303B (en) SCARA robot motion control method, SCARA robot motion control device, SCARA robot motion control terminal equipment and SCARA robot motion control medium
US20210299869A1 (en) Teaching Method
JP2024000289A (en) Control method and control device of robot system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130201

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131121

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140107

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20140430