Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7587448B2 - ROBOT SYSTEM AND METHOD FOR CONTROLLING ROBOT SYSTEM - Google Patents
[go: Go Back, main page]

JP7587448B2 - ROBOT SYSTEM AND METHOD FOR CONTROLLING ROBOT SYSTEM - Google Patents

ROBOT SYSTEM AND METHOD FOR CONTROLLING ROBOT SYSTEM Download PDF

Info

Publication number
JP7587448B2
JP7587448B2 JP2021042526A JP2021042526A JP7587448B2 JP 7587448 B2 JP7587448 B2 JP 7587448B2 JP 2021042526 A JP2021042526 A JP 2021042526A JP 2021042526 A JP2021042526 A JP 2021042526A JP 7587448 B2 JP7587448 B2 JP 7587448B2
Authority
JP
Japan
Prior art keywords
robot
tip
tool
sensor
unit
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.)
Active
Application number
JP2021042526A
Other languages
Japanese (ja)
Other versions
JP2022142376A (en
Inventor
翔一 半田
俊晴 菅原
毅 北村
貴臣 西垣戸
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2021042526A priority Critical patent/JP7587448B2/en
Priority to PCT/JP2021/039097 priority patent/WO2022195944A1/en
Publication of JP2022142376A publication Critical patent/JP2022142376A/en
Application granted granted Critical
Publication of JP7587448B2 publication Critical patent/JP7587448B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)

Description

本発明は、ロボットシステム、およびロボットシステムの制御方法に関する。 The present invention relates to a robot system and a method for controlling a robot system.

ロボットが自ら認知、判断、および操作を行うロボットシステムに関する技術として、下記特許文献1に開示の技術がある。この特許文献1には、「ロボットシステム1は、スキャナ2、ロボット3、制御装置5を備え、エンドエフェクタ40に固定した球体70を用いることで、スキャナ座標系からロボット座標系へのキャリブレーションを高精度且つ自動で行う。…制御装置5は、ハンド部42を様々な位置姿勢に移動させたときの球体70の点群データをスキャナ2から取得し、球体70の位置を推定する。制御装置5は、各算出処理で推定された球体70の位置データに基づき、キャリブレーションの回転成分RVと並進成分SVを推定する。」と記載されている。 The following Patent Document 1 discloses a technology relating to a robot system in which the robot recognizes, judges, and operates on its own. This Patent Document 1 states, "The robot system 1 includes a scanner 2, a robot 3, and a control device 5, and uses a sphere 70 fixed to the end effector 40 to perform automatic calibration from the scanner coordinate system to the robot coordinate system with high accuracy. ... The control device 5 acquires from the scanner 2 point cloud data of the sphere 70 when the hand unit 42 is moved to various positions and postures, and estimates the position of the sphere 70. The control device 5 estimates the rotational component RV and translational component SV of the calibration based on the position data of the sphere 70 estimated in each calculation process."

特開2017-100202号公報JP 2017-100202 A

上述した技術では、ハンド部を様々な位置姿勢に移動させたときの球体の点群データをスキャナから取得している。このためスキャナから得られるデータは、スキャナを構成するレンズのひずみを含む値となり、キャリブレーションの精度を低下させる要因となっている。 In the above-mentioned technology, spherical point cloud data is obtained from the scanner when the hand unit is moved to various positions and orientations. As a result, the data obtained from the scanner contains values that include distortion of the lens that makes up the scanner, which is a factor that reduces the accuracy of the calibration.

そこで本発明は、高精度なキャリブレーションが可能なロボットシステムおよびロボットシステムの制御方法を提供することを目的とする。 The present invention aims to provide a robot system and a control method for a robot system that allows for highly accurate calibration.

上記課題を解決するために、例えば特許請求の範囲に記載の構成を採用する。
本願は上記課題を解決する手段を複数含んでいるが、その一例を挙げるならば、複数のエンコーダを備えた多関節型のロボットと、前記ロボットによる作業範囲を撮像するセンサと、前記センサからの情報に基づいて前記ロボットの駆動を制御する制御装置とを有するロボットシステムであって、前記制御装置は、前記ロボットに装着した作業用のツールの先端のセンサ座標系における座標を、前記センサからの情報に基づいて認識する認識部と、前記ロボットに対する前記ツールの先端位置をツールオフセットとし、前記ツールの先端が前記センサ座標系に設定した基準座標に一致するように、前記ツールオフセットと前記認識部からの情報に基づいて前記ロボットの姿勢を変更する制御部と、前記変更した各姿勢のロボットのエンコーダからエンコーダ値を読み取るエンコーダ読取部と、前記エンコーダ読取部で読み取った前記各姿勢においてのエンコーダ値に基づいて、前記ツールオフセットの校正値を算出するツールオフセット算出部とを備えたロボットシステムである。
In order to solve the above problems, for example, the configurations described in the claims are adopted.
The present application includes multiple means for solving the above-mentioned problems. One example is a robot system having a multi-jointed robot equipped with multiple encoders, a sensor that captures an image of a working range of the robot, and a control device that controls driving of the robot based on information from the sensor, wherein the control device is a robot system including a recognition unit that recognizes coordinates in a sensor coordinate system of a tip of a work tool attached to the robot based on the information from the sensor, a control unit that sets the tip position of the tool relative to the robot as a tool offset and changes the posture of the robot based on the tool offset and the information from the recognition unit so that the tip of the tool coincides with a reference coordinate set in the sensor coordinate system, an encoder reading unit that reads encoder values from an encoder of the robot in each of the changed postures, and a tool offset calculation unit that calculates a calibration value of the tool offset based on the encoder values in each of the postures read by the encoder reading unit.

本発明によれば、高精度なキャリブレーションが可能なロボットシステムおよびロボットシステムの制御方法を提供することができる。 The present invention provides a robot system capable of high-precision calibration and a method for controlling the robot system.

第1実施形態に係るロボットシステムの構成図である。1 is a configuration diagram of a robot system according to a first embodiment. FIG. 第1実施形態に係るロボットシステムの要部の構成図である。FIG. 1 is a configuration diagram of a main part of a robot system according to a first embodiment. 第1実施形態に係るロボットシステムの機能ブロック図である。FIG. 1 is a functional block diagram of a robot system according to a first embodiment. 第1実施形態に係るロボットシステムの先端座標記憶部が保存するツールの先端の座標データの一例を示す図である。4 is a diagram showing an example of coordinate data of a tip of a tool stored in a tip coordinate storage unit of the robot system according to the first embodiment. FIG. 第1実施形態に係るロボットの姿勢制御の第1の例を示す図である。FIG. 4 is a diagram illustrating a first example of posture control of the robot according to the first embodiment. 第1実施形態に係るロボットの姿勢制御の第2の例を示す図である。FIG. 11 is a diagram illustrating a second example of posture control of the robot according to the first embodiment. 第1実施形態に係るロボットの各姿勢においてのツール先端の制御の一例を示す図である。5A to 5C are diagrams illustrating an example of control of the tool tip in each posture of the robot according to the first embodiment. 第1実施形態に係るロボットシステムのロボット姿勢記憶部が保存するロボット姿勢データの一例を示す図である。4 is a diagram showing an example of robot posture data stored in a robot posture memory unit of the robot system according to the first embodiment. FIG. 第1実施形態に係るロボットシステムの制御方法を示すフローチャートである。4 is a flowchart showing a control method of the robot system according to the first embodiment. 第1実施形態の制御方法において基準座標にツールの先端位置のX座標を一致させる手順を示す図である。11A to 11C are diagrams illustrating a procedure for making the X coordinate of the tip position of the tool coincide with the reference coordinate in the control method of the first embodiment. 第1実施形態の制御方法において基準座標にツールの先端位置のY座標を一致させる手順を示す図である。11A to 11C are diagrams illustrating a procedure for matching the Y coordinate of the tip position of the tool with the reference coordinate in the control method of the first embodiment. 第1実施形態の制御方法において基準座標にツールの先端位置のZ座標を一致させる手順を示す図である。11A to 11C are diagrams illustrating a procedure for matching the Z coordinate of the tip position of the tool with the reference coordinate in the control method of the first embodiment. 第2実施形態に係るロボットシステムの要部の構成図(その1)である。FIG. 11 is a configuration diagram (part 1) of a main part of a robot system according to a second embodiment. 第2実施形態に係るロボットシステムの要部の構成図(その2)である。FIG. 13 is a configuration diagram (part 2) of a main part of a robot system according to a second embodiment. 第3実施形態に係るロボットシステムの要部の構成図である。FIG. 11 is a configuration diagram of a main part of a robot system according to a third embodiment. 第3実施形態に係るロボットシステムの要部を説明するための図である。FIG. 13 is a diagram for explaining a main part of a robot system according to a third embodiment.

以下、本発明を適用した実施の形態を図面に基づいて詳細に説明する。なお、各実施の形態においては、同様の構成要素には同一の符号を付し、同様の構成要素についての重複する説明は省略する。 The following describes in detail the embodiments of the present invention with reference to the drawings. Note that in each embodiment, the same components are given the same reference numerals, and duplicate descriptions of the same components are omitted.

≪第1実施形態≫
-ロボットシステム-
図1は、第1実施形態に係るロボットシステム1の構成図である。この図に示すロボットシステム1は、ロボットが自ら認知、判断および操作する自律ロボットにより、ターゲットとなるワーク[W]をピック&プレイスするピッキングシステムである。ピック&プレイスとは、ターゲットとなるワーク[W]を保持(ピック)して移動し、所望の位置に置く(プレシス)一連の動作である。このようなロボットシステム1は、ロボット10、センサ20、入力装置30、制御装置40、供給コンベア50、および載置台60を備えている。次にこれらの構成を順に説明する。
First Embodiment
-Robot System-
FIG. 1 is a configuration diagram of a robot system 1 according to a first embodiment. The robot system 1 shown in this figure is a picking system in which a target workpiece [W] is picked and placed by an autonomous robot that recognizes, judges, and operates itself. Pick and place is a series of operations in which the target workpiece [W] is held (picked), moved, and placed (placed) in a desired position. Such a robot system 1 includes a robot 10, a sensor 20, an input device 30, a control device 40, a supply conveyor 50, and a placement table 60. Next, the configurations of these components will be described in order.

<ロボット10>
ロボット10は、供給コンベア50から供給されたワーク[W]を保持し、保持したワーク[W]を移動して載置台60の上部に載置する。このロボット10は、一例として3つの関節11,12,13と、3つのアーム14,15,16を交互につなぎ合わせた多関節型のロボットである。また、ロボット10は、ここでの図示を省略したエンコーダを備え、エンコーダで測定した測定値(エンコーダ値)のフィードバックにより、各関節11,12,13の回転方向および揺動方向の角度が自在に制御される6軸ロボットである。
<Robot 10>
The robot 10 holds a workpiece [W] supplied from a supply conveyor 50, and moves the held workpiece [W] to place it on the top of a mounting table 60. As an example, the robot 10 is a multi-joint robot in which three joints 11, 12, and 13 and three arms 14, 15, and 16 are alternately connected. The robot 10 is also a six-axis robot that includes an encoder (not shown) and in which the angles of the rotational and swinging directions of the joints 11, 12, and 13 are freely controlled by feedback of measurements (encoder values) measured by the encoder.

このようなロボット10は、ワーク[W]を保持するための様々なツール100が装着される。ロボット10において、ツール100が装着される位置は、例えばロボット10における先端側のアーム16の末端であって、手首と呼ばれる部位が挙げられるが、他の部位でもよい。 Such a robot 10 is equipped with various tools 100 for holding a workpiece [W]. In the robot 10, the position where the tool 100 is attached is, for example, the end of the arm 16 at the tip side of the robot 10, which is a part called the wrist, but it may be another part.

図2は、第1実施形態に係るロボットシステムの要部の構成図であり、ロボット10に装着するツール100の構成を説明する図である。ツール100は、ワーク[W]を保持可能な構成のものであればよく、ここでは例えばワーク[W]を吸着によって保持するベローズであることとする。このツール100は、ロボット10の先端側のアーム16から延設された円柱状の外径形状を有し、その先端側の底面を吸着面101としている。吸着面101は、中央部に吸引開口102を有し、吸引開口102からの吸引によってワーク[W](図1参照)を吸着面101に保持する。 Figure 2 is a configuration diagram of the main parts of the robot system according to the first embodiment, and is a diagram explaining the configuration of a tool 100 attached to the robot 10. The tool 100 may be any configuration capable of holding a workpiece [W], and in this example, it is assumed to be a bellows that holds the workpiece [W] by suction. This tool 100 has a cylindrical outer diameter shape extended from the arm 16 on the tip side of the robot 10, and the bottom surface on the tip side serves as an suction surface 101. The suction surface 101 has a suction opening 102 in the center, and holds the workpiece [W] (see Figure 1) on the suction surface 101 by suction from the suction opening 102.

<センサ20>
図1に戻り、センサ20は、供給コンベア50から供給されたワーク[W]の位置および形状に関する情報を取得するためのものである。このようなセンサ20は、レンズを有し、例えば周辺の映像を二次元または三次元で認識するカメラであって、位置情報の精度の点からは二次元カメラであることが好ましい。二次元カメラは、例えばRGB画像をセンシングデータとして出力する。センサ20は、ロボット10、供給コンベア50、および載置台60の設置個所を位置測定の範囲とし、例えば天井や壁などに設置されていることとする。また複数のセンサ20によって、位置測定の範囲の情報を取得する構成であってもよい。さらにカメラ以外の他のセンサがついていてもよい。
<Sensor 20>
Returning to FIG. 1, the sensor 20 is for acquiring information on the position and shape of the workpiece [W] supplied from the supply conveyor 50. Such a sensor 20 is a camera having a lens, for example, that recognizes the surrounding image in two or three dimensions, and is preferably a two-dimensional camera in terms of the accuracy of the position information. The two-dimensional camera outputs, for example, an RGB image as sensing data. The sensor 20 has the location of the robot 10, the supply conveyor 50, and the placement table 60 as the position measurement range, and is installed, for example, on a ceiling or wall. In addition, a configuration in which information on the position measurement range is acquired by multiple sensors 20 may be used. Furthermore, sensors other than cameras may be attached.

<入力装置30>
入力装置30は、ロボット10の動作を指示するための入力を行う装置であり、例えばタッチパネル型の入力端末、キーボード、または操作ボタンなどである。入力装置30が指示するロボット10の動作は、ここでは少なくともピッキング動作およびツール100のキャリブレーション動作である。ここでツール100のキャリブレーション動作とは、ロボット10におけるツール100の取り付け位置に対するツール100の先端位置、すなわちツールオフセットの校正(誤差補正)を行うための動作である。このような入力装置30は、ロボット10と一体に形成されているか、次に説明する制御装置40と一体に形成されていてもよい。
<Input Device 30>
The input device 30 is a device for inputting instructions for the operation of the robot 10, and is, for example, a touch panel type input terminal, a keyboard, or an operation button. The operations of the robot 10 instructed by the input device 30 are, here, at least a picking operation and a calibration operation of the tool 100. Here, the calibration operation of the tool 100 is an operation for calibrating (correcting errors) the tip position of the tool 100 relative to the attachment position of the tool 100 in the robot 10, i.e., the tool offset. Such an input device 30 may be formed integrally with the robot 10, or may be formed integrally with a control device 40 described next.

<制御装置40>
制御装置40は、入力装置30から入力された情報と、センサ20で取得した情報とに基づいて、ピッキング動作またはキャリブレーション動作を実行するための制御を実施する。このような制御装置40は、計算機によって構成されている。計算機は、いわゆるコンピュータとして用いられるハードウェアである。計算機は、CPU(Central Processing Unit:中央処理装置)、ROM(Read Only Memory)、RAM(Random Access Memory)を備える。さらに、計算機は、不揮発性ストレージおよびネットワークインタフェースとを備える。
<Control device 40>
The control device 40 performs control for executing a picking operation or a calibration operation based on information input from the input device 30 and information acquired by the sensor 20. Such a control device 40 is configured by a calculator. The calculator is hardware used as a so-called computer. The calculator includes a CPU (Central Processing Unit), a ROM (Read Only Memory), and a RAM (Random Access Memory). Furthermore, the calculator includes a non-volatile storage and a network interface.

図3は、第1実施形態に係るロボットシステム1の機能ブロック図であり、主として制御装置40の機能構成を説明するためのブロック図である。以下、図3に基づき、先の図1、図2および他の必要図を参照し、制御装置40の構成を説明する。なお、制御装置40を構成する各部は、その一部、または全部がロボット10と一体に形成されていてもよく、クラウドに設けられていてもよい。 Figure 3 is a functional block diagram of the robot system 1 according to the first embodiment, and is a block diagram mainly for explaining the functional configuration of the control device 40. Below, the configuration of the control device 40 will be explained based on Figure 3, with reference to Figures 1 and 2 and other necessary figures. Note that each part constituting the control device 40 may be formed integrally with the robot 10 in part or in whole, or may be provided in the cloud.

制御装置40は、ロボット10と、センサ20と、入力装置30とに、それぞれ接続されている。この接続は、有線接続でも無線接続でもよい。また制御装置40は、認識部41、基準座標保持部42、軌道計画部43、制御部44、エンコーダ読取部45、ロボット姿勢記憶部46、およびツールオフセット算出部47を有する。これらの各機能部分は、制御装置40を構成する計算機のCPUがROMに記憶されているプログラムを読み出すことにより、以下のような各機能を実行する。 The control device 40 is connected to the robot 10, the sensor 20, and the input device 30. This connection may be wired or wireless. The control device 40 also has a recognition unit 41, a reference coordinate holding unit 42, a trajectory planning unit 43, a control unit 44, an encoder reading unit 45, a robot posture storage unit 46, and a tool offset calculation unit 47. Each of these functional parts executes the following functions by the CPU of the computer constituting the control device 40 reading out a program stored in the ROM.

[認識部41]
認識部41は、センサ20から取得した情報(センシングデータ)に基づいて、センサ20によって認識された各部についてのセンサ座標系の位置を認識する。
[Recognition unit 41]
The recognition unit 41 recognizes the position in the sensor coordinate system of each part recognized by the sensor 20 based on the information (sensing data) acquired from the sensor 20 .

このような認識部41は、入力装置30からピッキング動作の指示が入力された場合には、センサ20から取得した情報に基づいて、センサ座標系におけるワーク[W](図1参照)の位置を認識し、認識した位置情報を軌道計画部43に送る。 When a picking operation instruction is input from the input device 30, the recognition unit 41 recognizes the position of the workpiece [W] (see FIG. 1) in the sensor coordinate system based on the information acquired from the sensor 20, and sends the recognized position information to the trajectory planning unit 43.

また認識部41は、入力装置30からキャリブレーション動作の指示が入力された場合には、センサ20から取得した情報に基づいて、ロボット10に装着したツール100の先端[P]についての、センサ座標系における位置を認識する。この場合、ツール100の先端[P](図2参照)は、ツール100の先端側の任意の設定点であって、図示した例においては、例えばツール100の吸着面101の中心点であり、吸引開口102の中心点であることとする。 When an instruction for a calibration operation is input from the input device 30, the recognition unit 41 recognizes the position of the tip [P] of the tool 100 attached to the robot 10 in the sensor coordinate system based on the information acquired from the sensor 20. In this case, the tip [P] of the tool 100 (see FIG. 2) is an arbitrary set point on the tip side of the tool 100, and in the illustrated example, it is, for example, the center point of the suction surface 101 of the tool 100 and the center point of the suction opening 102.

認識部41は、ツール100の先端[P]を認識するのに際して、先ずセンサ20から取得したセンシングデータに基づいて、先端[P]を中心とする吸着面101の周縁をマーカ[M]として認識する。なお、マーカ[M]となる吸着面101の周縁は、センサ20によって認識し易いように着色してもよい。認識部41はマーカ[M]を認識した後、例えば事前の入力によって保持しているマーカ[M]と先端[P]との位置関係の情報に基づいて、センサ座標系における先端[P]の位置を算出し、算出した位置を先端[P]の座標(先端座標)として認識する。 When recognizing the tip [P] of the tool 100, the recognition unit 41 first recognizes the periphery of the suction surface 101 centered on the tip [P] as a marker [M] based on the sensing data acquired from the sensor 20. The periphery of the suction surface 101 that becomes the marker [M] may be colored so that it is easily recognized by the sensor 20. After recognizing the marker [M], the recognition unit 41 calculates the position of the tip [P] in the sensor coordinate system based on information on the positional relationship between the marker [M] and the tip [P] that is held by, for example, prior input, and recognizes the calculated position as the coordinates of the tip [P] (tip coordinates).

また、認識部41は、入力装置30からキャリブレーション動作の指示が入力された場合において、初回に認識した先端座標を基準座標保持部42に送信する。さらに、初回以外の回で認識した先端座標を軌道計画部43に送信する。なお、キャリブレーション動作の際の、認識部41によるツール100の先端[P]の位置(先端座標)の認識のタイミングは、以降のロボットシステムの制御方法において詳細に説明する。 When an instruction for a calibration operation is input from the input device 30, the recognition unit 41 transmits the tip coordinates recognized the first time to the reference coordinate holding unit 42. Furthermore, the recognition unit 41 transmits the tip coordinates recognized in times other than the first time to the trajectory planning unit 43. Note that the timing of recognition of the position (tip coordinates) of the tip [P] of the tool 100 by the recognition unit 41 during the calibration operation will be described in detail in the control method of the robot system below.

[基準座標保持部42]
基準座標保持部42は、認識部41から送信された先端座標を、ツール100の先端[P]の基準座標[Sp]として保持する。図4は、第1実施形態に係るロボットシステム1の基準座標保持部42が保存するツール100の先端[P]の基準座標[Sp]の一例を示す図である。この図4に示す基準座標[Sp]は、例えばセンサ20内の基準点からのずれとして認識される。基準座標保持部42は、センサ20内の基準点、およびセンサ20内で定義された姿勢データにおいて、X、Y、およびZ方向に何センチメートル離れた位置に先端[P]が認識されたかを記憶する。なお、基準座標保持部42による基準座標[Sp]の保存のタイミングは、以降のロボットシステムの制御方法において詳細に説明する。
[Reference coordinate holding unit 42]
The reference coordinate holding unit 42 holds the tip coordinates transmitted from the recognition unit 41 as the reference coordinates [Sp] of the tip [P] of the tool 100. 4 is a diagram showing an example of the reference coordinates [Sp] of the tip [P] of the tool 100 stored in the coordinate storage unit 42. The reference coordinates [Sp] shown in FIG. 4 may include, for example, a deviation from a reference point in the sensor 20. The reference coordinate holding unit 42 determines how many centimeters away the tip [P] is in the X, Y, and Z directions in the reference point in the sensor 20 and in the attitude data defined in the sensor 20. The timing at which the reference coordinate holding unit 42 stores the reference coordinate [Sp] will be described in detail later in the description of the control method for the robot system.

[軌道計画部43(ロボット制御部)]
軌道計画部43は、次の制御部44とともにロボット制御部を構成する部分である。この軌道計画部43は、入力装置30からの指示と、認識部41から取得した先端座標、および基準座標保持部42から取得した基準座標とに基づいて、ロボット10の軌道を計画する。軌道計画部43は、計画した軌道を制御部44に送信する。
[Trajectory planning unit 43 (robot control unit)]
The trajectory planning unit 43 constitutes the robot control unit together with the next control unit 44. This trajectory planning unit 43 plans a trajectory of the robot 10 based on instructions from the input device 30, the tip coordinates acquired from the recognition unit 41, and the reference coordinates acquired from the reference coordinate holding unit 42. The trajectory planning unit 43 transmits the planned trajectory to the control unit 44.

このような軌道計画部43は、入力装置30からピッキング動作の指示が入力された場合には、認識部41から取得したワーク[W]の位置情報に基づいて、ワーク[W]をピック&プレイスするためのロボット10の軌道を計画する。 When a picking operation instruction is input from the input device 30, the trajectory planning unit 43 plans the trajectory of the robot 10 for picking and placing the workpiece [W] based on the position information of the workpiece [W] acquired from the recognition unit 41.

また軌道計画部43は、入力装置30からキャリブレーション動作の指示が入力された場合には、基準座標保持部42に保存された基準座標[Sp]に対してツール先端[P]を一致させるためのロボット10の軌道を計画する。なお、軌道計画部43によるキャリブレーション動作の際のロボット10の軌道計画の詳細は、以降のロボットシステムの制御方法において詳細に説明する。 When an instruction for a calibration operation is input from the input device 30, the trajectory planning unit 43 plans a trajectory of the robot 10 for aligning the tool tip [P] with the reference coordinate [Sp] stored in the reference coordinate holding unit 42. Details of the trajectory planning of the robot 10 during the calibration operation by the trajectory planning unit 43 will be described in detail in the following robot system control method.

[制御部44(ロボット制御部)]
制御部44は、先の軌道計画部43とともにロボット制御部を構成する部分であり、軌道計画部43から取得した軌道と、予め保持しているツールオフセットとに基づいて、ロボット10の動作を制御する。
[Control unit 44 (robot control unit)]
The control unit 44 constitutes a robot control unit together with the trajectory planning unit 43, and controls the operation of the robot 10 based on the trajectory acquired from the trajectory planning unit 43 and a tool offset stored in advance.

制御部44は、入力装置30からピッキング動作の指示が入力された場合には、ツール100の先端[P]がワーク[W]をピック&プレイスするように、ロボット10の動作を制御する。 When a picking operation instruction is input from the input device 30, the control unit 44 controls the operation of the robot 10 so that the tip [P] of the tool 100 picks up and places the workpiece [W].

また制御部44は、入力装置30からキャリブレーション動作の指示が入力された場合に、ロボット10のキャリブレーション動作のための制御を実施する。の場合、制御部44は、ツール100の先端[P]が、センサ20においてセンシング可能な所定位置となるように、軌道計画部43から取得した軌道計画に基づいてロボット10の動作を制御する。なお、制御装置40が、ピッキング動作の失敗を検知する検知部、さらにはピッキング動作をしていないアイドルタイムの発生を判断する判断部を有している場合、制御部44は、これらの検知部での検知および判断部での判断に基づいて、ロボット10のキャリブレーション動作のための制御を自動的に開始してもよい。 When an instruction for a calibration operation is input from the input device 30, the control unit 44 performs control for the calibration operation of the robot 10. In this case, the control unit 44 controls the operation of the robot 10 based on the trajectory plan acquired from the trajectory planning unit 43 so that the tip [P] of the tool 100 is at a predetermined position that can be sensed by the sensor 20. In addition, when the control device 40 has a detection unit that detects a failure of the picking operation and a judgment unit that judges the occurrence of idle time when no picking operation is performed, the control unit 44 may automatically start control for the calibration operation of the robot 10 based on the detection by these detection units and the judgment by the judgment unit.

さらにこの場合、制御部44は、基準座標保持部42に保存された基準座標[Sp]に対して先端[P]を一致させた異なる各姿勢となるように、ロボット10の姿勢を制御する。図5および図6は、第1実施形態に係るロボット10の姿勢制御の第1の例および第2の例を示す図である。これらの図に示すように、制御部44は、ツール100の先端[P]を、センサ20の座標系における基準座標[Sp]に一致させるように、ロボット10の姿勢を変化させる。 Furthermore, in this case, the control unit 44 controls the posture of the robot 10 so that the robot 10 assumes different postures in which the tip [P] is aligned with the reference coordinate [Sp] stored in the reference coordinate holding unit 42. Figures 5 and 6 are diagrams showing a first example and a second example of posture control of the robot 10 according to the first embodiment. As shown in these figures, the control unit 44 changes the posture of the robot 10 so that the tip [P] of the tool 100 is aligned with the reference coordinate [Sp] in the coordinate system of the sensor 20.

またこの場合、制御部44は、ロボット10を異なる各姿勢に変化させた状態において、基準座標保持部42に保存された基準座標[Sp]に対してツール100の先端[P]を一致させるように、各姿勢に変化させたロボット10の動作を制御する。図7は、第1実施形態に係るロボットの各姿勢においてのツール100の先端[P]の制御の一例を示す図である。この図に示すように、制御部44は、姿勢を変化させたロボット10におけるツール100の先端[P]を、センサ座標系における基準座標[Sp]に一致させるように、ロボット10の動作を制御する。なお、制御部44によるロボット10の動作制御の詳細は、以降のロボットシステムの制御方法において詳細に説明する。 In this case, the control unit 44 controls the operation of the robot 10 changed into each different posture so that the tip [P] of the tool 100 coincides with the reference coordinate [Sp] stored in the reference coordinate holding unit 42 when the robot 10 is changed into each different posture. FIG. 7 is a diagram showing an example of the control of the tip [P] of the tool 100 in each posture of the robot according to the first embodiment. As shown in this figure, the control unit 44 controls the operation of the robot 10 so that the tip [P] of the tool 100 in the robot 10 whose posture has been changed coincides with the reference coordinate [Sp] in the sensor coordinate system. Details of the operation control of the robot 10 by the control unit 44 will be described in detail later in the control method of the robot system.

[エンコーダ読取部45]
エンコーダ読取部45は、ロボット10に設けられた各エンコーダの測定値(エンコーダ値)を読み取る。このエンコーダ読取部45は、読み取った複数のエンコーダ値を、制御部44に送信する。
[Encoder reading unit 45]
The encoder reader 45 reads the measurement values (encoder values) of the encoders provided on the robot 10. The encoder reader 45 transmits the plurality of read encoder values to the control unit 44.

[ロボット姿勢記憶部46]
ロボット姿勢記憶部46は、ロボット10の姿勢データを記憶する。ロボット姿勢記憶部46が記憶するロボット10の姿勢データは、基準座標保持部42に保存された基準座標[Sp]に対して、ツール100の先端[P]の座標を一致させた各姿勢においてのエンコーダ値である。
[Robot posture storage unit 46]
The robot posture storage unit 46 stores posture data of the robot 10. The posture data of the robot 10 stored in the robot posture storage unit 46 is an encoder value in each posture in which the coordinates of the tip [P] of the tool 100 are matched with the reference coordinates [Sp] stored in the reference coordinate holding unit 42.

図8は、第1実施形態に係るロボットシステムのロボット姿勢記憶部が保存するロボットの姿勢データの一例を示す図である。図8に示すように、ロボット姿勢記憶部46は、後で説明するツールオフセットを求めるために必要な数の姿勢データを保存する。ここで各姿勢データは、ロボット10の姿勢を変更した各状態において、ツール100の先端[P]を基準座標[Sp]に対して一致せた状態においての各エンコーダ値である。一例としてロボット10が6軸ロボットであるとすると、1つ(各回)の姿勢データは、6軸(j1~j6)の角度データ(エンコーダ値)によって構成される。この場合、ツールオフセットを求めるために必要な姿勢データ数は3以上である。なお、ロボット姿勢記憶部46による姿勢データの保持のタイミングの詳細は、以降のロボットシステムの制御方法において詳細に説明する。 Figure 8 is a diagram showing an example of robot posture data stored in the robot posture storage unit of the robot system according to the first embodiment. As shown in Figure 8, the robot posture storage unit 46 stores the number of posture data required to obtain the tool offset described later. Here, each posture data is each encoder value in a state in which the tip [P] of the tool 100 is aligned with the reference coordinate [Sp] in each state in which the posture of the robot 10 is changed. As an example, if the robot 10 is a six-axis robot, one (each time) posture data is composed of angle data (encoder values) of six axes (j1 to j6). In this case, the number of posture data required to obtain the tool offset is three or more. Details of the timing at which the robot posture storage unit 46 holds the posture data will be described in detail in the control method of the robot system below.

[ツールオフセット算出部47]
ツールオフセット算出部47は、ロボット姿勢記憶部46に保存されている複数の姿勢データに基づいて、例えば特許文献1に記載の方法により、ツールオフセットを算出する。ここでツールオフセットとは、ロボット10に装着された状態においてのロボット10に対するツール100の先端[P]の位置である。ツールオフセットに誤差が生じている場合には、ツール100の先端[P]が同一点に配置されるようにロボット10の駆動を制御した場合であっても、ロボット10の姿勢によってツール100の先端が配置される位置にも差が生じてしまう。なおツールオフセット算出部47は、算出したツールオフセットを、ツールオフセットの校正値として制御部44に送信する。制御部44は、もともと保持しているツールツールオフセットを、受信したツールオフセットの校正値で上書きする。
[Tool offset calculation unit 47]
The tool offset calculation unit 47 calculates a tool offset based on a plurality of posture data stored in the robot posture storage unit 46, for example, by the method described in Patent Document 1. Here, the tool offset is the position of the tip [P] of the tool 100 relative to the robot 10 when the tool 100 is attached to the robot 10. If an error occurs in the tool offset, even if the drive of the robot 10 is controlled so that the tip [P] of the tool 100 is placed at the same point, a difference occurs in the position where the tip of the tool 100 is placed depending on the posture of the robot 10. The tool offset calculation unit 47 transmits the calculated tool offset to the control unit 44 as a calibration value of the tool offset. The control unit 44 overwrites the originally held tool offset with the received calibration value of the tool offset.

<供給コンベア50>
供給コンベア50は、ピッキングのターゲットであるワーク[W]を、ロボット10がワーク[W]を保持し易い位置に運搬する。ワーク[W]は、図示したような箱[W1]などに入っているものに限定されず、供給コンベア50から単体で供給されてもよい。
<Supply Conveyor 50>
The supply conveyor 50 transports the workpiece [W], which is the target of picking, to a position where the robot 10 can easily hold the workpiece [W]. The workpiece [W] is not limited to being contained in a box [W1] as shown in the figure, and may be supplied from the supply conveyor 50 as a single piece.

<載置台60>
載置台60は、ロボット10が保持したワーク[W]を載置するための台である。
<Placement table 60>
The placement table 60 is a table for placing the workpiece [W] held by the robot 10.

-ロボットシステム1の制御方法-
図9は、第1実施形態に係るロボットシステムの制御方法を示すフローチャートであって、図1~図8を用いて説明した制御装置40に保持された制御プログラムによって実行されるツール100のキャリブレーションの手順を示している。以下、図9のフローチャートに沿って、先の図1~図8、および必要に応じた他の図を参照しつつ、ロボットシステムの制御方法を説明する。なお、このフローは、例えば入力装置30にいて、キャリブレーションの指示が入力されたこと、または制御装置40が、ピッキング動作の失敗を検知したこと、さらにはピッキング動作をしていないアイドルタイムの発生を判断したことをトリガーとして開始される。
-Control method of robot system 1-
Fig. 9 is a flowchart showing a control method of the robot system according to the first embodiment, and shows the procedure for calibrating the tool 100 executed by the control program stored in the control device 40 described with reference to Figs. 1 to 8. The control method of the robot system will be described below with reference to the flowchart of Fig. 9, Figs. 1 to 8, and other figures as necessary. Note that this flow is triggered by, for example, inputting a calibration instruction to the input device 30, or by the control device 40 detecting a failure in a picking operation, or by determining the occurrence of an idle time during which no picking operation is being performed.

<ステップS101>
先ず、ステップS101において、制御部44はツール100のマーカ[M](図2参照)が、センサ20の画角に入るよう、ロボット10を制御する。このときのロボット10の姿勢は任意である。
<Step S101>
First, in step S101, the control unit 44 controls the robot 10 so that the marker [M] (see FIG. 2) of the tool 100 is within the angle of view of the sensor 20. The posture of the robot 10 at this time is arbitrary.

<ステップS102>
S102において、認識部41は、センサ20から取得したセンシングデータから、ツール100に設定したマーカ[M]の位置を認識する。ここで認識するマーカ[M]の位置は、センサ座標系における位置である。
<Step S102>
In S102, the recognition unit 41 recognizes the position of the marker [M] set on the tool 100 from the sensing data acquired from the sensor 20. The position of the marker [M] recognized here is a position in the sensor coordinate system.

<ステップS103>
ステップS103において、認識部41は、マーカ[M]の位置から、ツール100の先端[P]の位置、すなわち先端座標を認識する。この際、認識部41は、例えば事前の入力によって保持しているマーカ[M]と先端[P]との位置関係の情報に基づいて、センサ座標系における先端[P]の座標を、先端座標として算出し、先端座標を認識する。認識した先端座標は、基準座標保持部42に送信する。
<Step S103>
In step S103, the recognition unit 41 recognizes the position of the tip [P] of the tool 100, i.e., the tip coordinates, from the position of the marker [M]. At this time, the recognition unit 41 calculates the coordinates of the tip [P] in the sensor coordinate system as the tip coordinates based on information on the positional relationship between the marker [M] and the tip [P] that is held by, for example, prior input, and recognizes the tip coordinates. The recognized tip coordinates are transmitted to the reference coordinate holding unit 42.

なお、ここでは、ステップS102において認識したマーカ[M]におけるマーカ像の寸法を測長しておく。ツール100が円柱形状であれば、マーカ像は円または楕円であるため、マーカ像の寸法としては、少なくとも長辺の長さ、短辺の長さ、および円の直径の何れかであることとする。 Note that here, the dimensions of the marker image of the marker [M] recognized in step S102 are measured. If the tool 100 is cylindrical, the marker image is a circle or an ellipse, so the dimensions of the marker image are at least the length of the long side, the length of the short side, and the diameter of the circle.

<ステップS104>
ステップS104において、認識部41は、先のステップS103におけるツール100の先端座標の認識が、本キャリブレーションのフローにおける初回の認識であるか否かの判定を実施する。初回である(YES)と判定した場合、認識部41は、ステップS103で認識したツール100の先端座標とマーカ像の寸法を、基準座標保持部42に送信してステップS105に進む。一方、初回ではない(NO)と判定した場合、認識部41は、ステップS103で認識したツール100の先端座標を、軌道計画部43に送信してステップS201に進む。
<Step S104>
In step S104, the recognition unit 41 determines whether the recognition of the tip coordinates of the tool 100 in the previous step S103 is the first recognition in this calibration flow. If it is determined that it is the first recognition (YES), the recognition unit 41 transmits the tip coordinates of the tool 100 recognized in step S103 and the dimensions of the marker image to the reference coordinate holding unit 42 and proceeds to step S105. On the other hand, if it is determined that it is not the first recognition (NO), the recognition unit 41 transmits the tip coordinates of the tool 100 recognized in step S103 to the trajectory planning unit 43 and proceeds to step S201.

<ステップS105>
ステップS105において、基準座標保持部42は、認識部41から受信した先端座標とマーカ像の寸法を、ツールの先端[P]の基準座標[Sp]として保存する(図4参照)。その後、ステップS106に進む。
<Step S105>
In step S105, the reference coordinate holding unit 42 stores the tip coordinates and the dimensions of the marker image received from the recognition unit 41 as the reference coordinates [Sp] of the tip [P] of the tool (see FIG. 4). Then, the process proceeds to step S106.

<ステップS106>
ステップS106において、ロボット姿勢記憶部46は、エンコーダ読取部45で読み取った複数(ここでは6個)のエンコーダの測定値を、ロボット10の姿勢データとして保存する(図8参照)。
<Step S106>
In step S106, the robot posture storage unit 46 stores the measurement values of the multiple (six in this case) encoders read by the encoder reading unit 45 as posture data of the robot 10 (see FIG. 8).

<ステップS107>
ステップS107において、ロボット姿勢記憶部46は、ステップS106で姿勢データを保存した回数が、所定回数に達したか否かの判定を実施する。ここで所定回数は、以降に実施するツールオフセットの算出(ステップS302)に必要な姿勢データ数以上に設定される。ロボット10が6軸ロボットの場合には、ツールオフセットの算出に必要な姿勢データ数は3以上であり、例えば所定回数が4回に設定されていることとする。ロボット姿勢記憶部46は、所定回数に達した(YES)と判断した場合にはステップS301に進み、所定回数に達していない(NO)と判断した場合にはステップS108に進む。
<Step S107>
In step S107, the robot posture storage unit 46 judges whether the number of times the posture data was saved in step S106 has reached a predetermined number. Here, the predetermined number is set to be equal to or greater than the number of posture data required for the subsequent calculation of the tool offset (step S302). In the case where the robot 10 is a six-axis robot, the number of posture data required for the calculation of the tool offset is three or more, and the predetermined number is set to four, for example. If the robot posture storage unit 46 judges that the predetermined number has been reached (YES), the process proceeds to step S301, and if it judges that the predetermined number has not been reached (NO), the process proceeds to step S108.

<ステップS108>
ステップS108において、制御部44は、ロボット10の姿勢を変更し、変更した姿勢においてツール100の先端[P]が、基準座標保持部42に保持された基準座標[Sp]となるようにロボット10の姿勢を制御する。ここでの姿勢の制御は、エンコーダ値に基づく制御であることとする。その後、ステップS102に戻り、ステップS102およびステップS103を順に実施してツール100の先端座標を認識し、ステップS104に進んで先端座標を軌道計画部43に送信してステップS201に進む。
<Step S108>
In step S108, the control unit 44 changes the attitude of the robot 10, and controls the attitude of the robot 10 so that in the changed attitude, the tip [P] of the tool 100 is at the reference coordinate [Sp] held in the reference coordinate holding unit 42. The attitude control here is assumed to be control based on the encoder value. Thereafter, the process returns to step S102, and steps S102 and S103 are carried out in order to recognize the tip coordinates of the tool 100, and the process proceeds to step S104, where the tip coordinates are transmitted to the trajectory planning unit 43, and the process proceeds to step S201.

<ステップS201>
一方、S201は、ステップS104において、ツール100の先端座標の認識が初回の認識ではないと判断して進んだステップである。この場合、軌道計画部43は、姿勢を変更したロボット10におけるツール100の先端座標を、認識部41から受信した状態となっている。このステップS201において、軌道計画部43は、基準座標保持部42に保持されている先端[P]の基準座標[Sp]を取得し、ステップS202に進む。
<Step S201>
On the other hand, S201 is a step to which the process proceeds after determining in step S104 that the recognition of the tip coordinates of the tool 100 is not the first recognition. In this case, the trajectory planning unit 43 is in a state of having received the tip coordinates of the tool 100 in the robot 10 whose posture has been changed from the recognition unit 41. In this step S201, the trajectory planning unit 43 acquires the reference coordinates [Sp] of the tip [P] held in the reference coordinate holding unit 42, and proceeds to step S202.

<ステップS202>
ステップS202において、軌道計画部43は、ステップS108において姿勢を変更したロボット10におけるツール100の先端[P]を、基準座標[Sp]に一致させるための軌道を計画する。また、制御部44は、軌道の計画に基づいてロボット10を制御することで、ツール100の先端[P]を基準座標[Sp]に一致させる。
<Step S202>
In step S202, the trajectory planning unit 43 plans a trajectory for aligning the tip [P] of the tool 100 in the robot 10, whose posture has been changed in step S108, with the reference coordinate [Sp]. The control unit 44 also controls the robot 10 based on the trajectory plan to align the tip [P] of the tool 100 with the reference coordinate [Sp].

ここで軌道計画部43は、基準座標保持部42から取得した基準座標[Sp]と、認識部41から受信した先端座標との差分がゼロとなるような軌道を計画する。認識部41から受信した先端座標は、ステップS108において姿勢を変更したロボット10におけるツール100の先端座標である。軌道計画部43は、計画した軌道を制御部44に送信する。制御部44は、軌道計画部43から送信された軌道の計画に基づいてロボット10を制御し、ツール100の先端[P]を基準座標[Sp]に一致させる(図7参照)。この際、制御部44は、逐次に修正された軌道計画に基づいて、ロボット10を制御する構成とする構成としてもよい。この場合、軌道計画部43は、認識部41からツール100の先端[P]のセンサ座標系上の位置を周期的に取得し、逐次に軌道を修正することにより、軌道計画の精度を向上させることができる。 Here, the trajectory planning unit 43 plans a trajectory such that the difference between the reference coordinate [Sp] acquired from the reference coordinate holding unit 42 and the tip coordinate received from the recognition unit 41 is zero. The tip coordinate received from the recognition unit 41 is the tip coordinate of the tool 100 in the robot 10 whose posture has been changed in step S108. The trajectory planning unit 43 transmits the planned trajectory to the control unit 44. The control unit 44 controls the robot 10 based on the trajectory plan transmitted from the trajectory planning unit 43, and causes the tip [P] of the tool 100 to coincide with the reference coordinate [Sp] (see FIG. 7). At this time, the control unit 44 may be configured to control the robot 10 based on the trajectory plan that is successively corrected. In this case, the trajectory planning unit 43 periodically acquires the position of the tip [P] of the tool 100 on the sensor coordinate system from the recognition unit 41, and successively corrects the trajectory, thereby improving the accuracy of the trajectory plan.

ここで、図10~図12は、第1実施形態の制御方法において基準座標[Sp]にツール100の先端位置のX座標、Y座標、およびZ座標を一致させる手順を示す図である。これらの図は、それぞれ二次元カメラを用いたセンサ20(図5、図6参照)での撮像画90であり、ツール100の先端[P]を中心にしたマーカ[M](図2参照)の像(マーカ像90m)が認識できている状態を示している。ここでマーカ[M]は、図2に示したように円柱形状のツール100の先端[P]を中心とする吸着面101の周縁である。したがって図10~図12に示すように、マーカ像90mは、円または楕円の像として認識される。以下、これらの図10~図12に基づいて、ステップS201およびステップS202において、ツール100の先端[P]を基準座標[Sp]に一致させる手順の具体的な一例を説明する。 Here, Figs. 10 to 12 are diagrams showing the procedure for matching the X-coordinate, Y-coordinate, and Z-coordinate of the tip position of the tool 100 with the reference coordinate [Sp] in the control method of the first embodiment. These figures are images 90 captured by the sensor 20 (see Figs. 5 and 6) using a two-dimensional camera, and show a state in which an image (marker image 90m) of the marker [M] (see Fig. 2) centered on the tip [P] of the tool 100 can be recognized. Here, the marker [M] is the periphery of the suction surface 101 centered on the tip [P] of the cylindrical tool 100 as shown in Fig. 2. Therefore, as shown in Figs. 10 to 12, the marker image 90m is recognized as an image of a circle or an ellipse. Below, a specific example of the procedure for matching the tip [P] of the tool 100 with the reference coordinate [Sp] in steps S201 and S202 will be described based on these Figs. 10 to 12.

先ず図10に示すように、基準座標[Sp]と、現時点で認識されているツール100のマーカ像90mから算出されるツール100の先端座標とのX座標の差がゼロとなるように、軌道計画部43が軌道を計画する。この計画にしたがって、制御部44がロボット10の駆動を制御する。この際、ランダムな軌道によってロボット10を制御してX座標の差が0になった瞬間にロボット10の動作を止めるよう制御してもよいし、X方向の差を動的に監視しながら、X座標の差が0になるようにフィードバック制御をしてもよいし、他の方法でもよい。 First, as shown in FIG. 10, the trajectory planning unit 43 plans a trajectory so that the difference in the X coordinate between the reference coordinate [Sp] and the tip coordinate of the tool 100 calculated from the currently recognized marker image 90m of the tool 100 becomes zero. The control unit 44 controls the drive of the robot 10 according to this plan. At this time, the robot 10 may be controlled according to a random trajectory so that the robot 10 stops moving the moment the difference in the X coordinate becomes zero, or feedback control may be performed while dynamically monitoring the difference in the X direction so that the difference in the X coordinate becomes zero, or other methods may be used.

次に、以上と同様の手順で、図11に示すように、基準座標[Sp]と、現時点で認識されているツール100のマーカ像90mから算出されるツール100の先端座標とのセンサ座標系におけるY座標の差をゼロとする。 Next, following the same procedure as above, as shown in FIG. 11, the difference in Y coordinate in the sensor coordinate system between the reference coordinate [Sp] and the tip coordinate of the tool 100 calculated from the currently recognized marker image 90m of the tool 100 is set to zero.

その後、図12示すように、現時点で認識されているツール100のマーカ像90mの長辺の長さ[L90]が、初回に認識された基準座標[Sp]のマーカ像の長辺の長さと、同じ大きさとなるように、軌道計画部43が軌道を計画する。なお、初回に認識された基準座標[Sp]のマーカ像の寸法は、ステップS102において測長され、ステップS105において基準座標保持部42に合わせて保存しておくこととする。 Then, as shown in FIG. 12, the trajectory planning unit 43 plans a trajectory so that the length [L90] of the long side of the marker image 90m of the tool 100 currently recognized is the same as the length of the long side of the marker image of the reference coordinate [Sp] recognized initially. The dimensions of the marker image of the reference coordinate [Sp] recognized initially are measured in step S102, and are stored in accordance with the reference coordinate holding unit 42 in step S105.

この計画にしたがって、制御部44がロボット10の駆動を制御し、センサ座標系におけるZ座標の差をゼロとする。なお、上述したZ座標の調整は、マーカ像の短辺の長さを一致させるようにしてもよい。 According to this plan, the control unit 44 controls the driving of the robot 10 to set the difference in the Z coordinate in the sensor coordinate system to zero. Note that the above-mentioned Z coordinate adjustment may be made so that the lengths of the short sides of the marker images are consistent.

以上のような制御は、高精度にセンシングが可能な二次元カメラをセンサ20として用いた制御であるため、ツール100の先端[P]の位置を高精度に制御することが可能である。さらに比較的、高精度な認識手法が存在する楕円もしくは円を対象に認識し、先端[P]位置を求めるので、より高精度な位置合わせが可能である。 The above-described control uses a two-dimensional camera capable of highly accurate sensing as the sensor 20, making it possible to control the position of the tip [P] of the tool 100 with high precision. Furthermore, since an ellipse or circle, for which there are relatively high-precision recognition methods, is recognized as the target and the tip [P] position is determined, more accurate alignment is possible.

なお以上説明した座標の差が0となる座標の一致の判断は、軌道計画部43で実施してもよい。また、一致の判定部を制御装置40内に実装し、判定部において、認識部41で認識された先端[P]の位置と、基準座標保持部42から取得した先端[P]の基準座標[Sp]との重なりを判定してもよい。また、他の方法で実施してもよい。 The determination of the coincidence of coordinates where the coordinate difference is zero as described above may be performed by the trajectory planning unit 43. Also, a coincidence determination unit may be implemented in the control device 40, and the determination unit may determine whether the position of the tip [P] recognized by the recognition unit 41 overlaps with the reference coordinate [Sp] of the tip [P] obtained from the reference coordinate holding unit 42. It may also be performed by other methods.

制御部44は、ツール100の先端[P]が、基準座標[Sp]に一致したことが判断された後、先に説明したステップS106に進む。これにより、ロボット姿勢記憶部46は、この時点においてエンコーダ読取部45で読み取ったエンコーダ値を、ロボット10の姿勢データとして保存する(ステップS106、図8参照)。 After the control unit 44 determines that the tip [P] of the tool 100 coincides with the reference coordinate [Sp], the process proceeds to step S106 described above. As a result, the robot posture storage unit 46 stores the encoder value read by the encoder reading unit 45 at this point in time as posture data of the robot 10 (step S106, see FIG. 8).

<ステップS301>
一方、ステップS301は、ステップS107において、姿勢データを保存した回数が、所定回数に達した(YES)と判断して進んだステップである。このステップS301において、ツールオフセット算出部47は、ロボット姿勢記憶部46に保存されている複数の姿勢データに基づいて、ツールオフセットを算出する。この際、ツールオフセット算出部47は、ロボット姿勢記憶部46に保存されている複数の姿勢データに基づいて、ツール100の各先端座標を算出し、基準座標[Sp]との差(誤差)が最小となるようなツールオフセットを算出する。ツールオフセット算出部47は、算出したツールオフセットを、ツールオフセットの校正値とし制御部44に送信する。
<Step S301>
On the other hand, step S301 is a step to which the process proceeds after determining in step S107 that the number of times the posture data has been stored has reached a predetermined number (YES). In this step S301, the tool offset calculation unit 47 calculates a tool offset based on the plurality of posture data stored in the robot posture storage unit 46. At this time, the tool offset calculation unit 47 calculates each tip coordinate of the tool 100 based on the plurality of posture data stored in the robot posture storage unit 46, and calculates a tool offset that minimizes the difference (error) from the reference coordinate [Sp]. The tool offset calculation unit 47 transmits the calculated tool offset to the control unit 44 as a calibration value of the tool offset.

<ステップS302>
ステップS302において、制御部44は、もともと保持しているツールオフセットの初期値を、受信したツールオフセットの校正値で上書きし、ツールオフセットを更新してキャリブレーションを終了させる。
<Step S302>
In step S302, the control unit 44 overwrites the initial value of the tool offset that is originally held with the received calibrated value of the tool offset, updates the tool offset, and ends the calibration.

なお以上の説明においては、ツールオフセットは、制御部44が予め保持していることとしたが、ツールオフセットは軌道計画部43が予め保持していてもよい。この場合、軌道計画部43は、入力装置30からの指示と、認識部41から取得した先端座標、および基準座標保持部42から取得した基準座標と、保持しているツールオフセットとに基づいて、ロボット10の軌道を計画する。 In the above description, the control unit 44 has been described as having previously stored the tool offset, but the tool offset may be previously stored by the trajectory planning unit 43. In this case, the trajectory planning unit 43 plans the trajectory of the robot 10 based on instructions from the input device 30, the tip coordinates acquired from the recognition unit 41, the reference coordinates acquired from the reference coordinate storage unit 42, and the stored tool offset.

またこの場合、先のステップS301においてツールオフセット算出部47は、ツールオフセットの校正値を軌道計画部43に送信する。また本ステップS302においては、軌道計画部43が、もともと保持しているツールオフセットの初期値を、受信したツールオフセットの校正値で上書きし、ツールオフセットを更新してキャリブレーションを終了させる。 In this case, in the previous step S301, the tool offset calculation unit 47 transmits the calibration value of the tool offset to the trajectory planning unit 43. In this step S302, the trajectory planning unit 43 overwrites the initial value of the tool offset that is originally held with the received calibration value of the tool offset, updates the tool offset, and ends the calibration.

-第1実施形態の効果-
以上説明した第1実施形態は、ツール100の先端[P]をセンサ座標系における基準座標[Sp]に一致させるように各姿勢のロボット10を制御し、各姿勢においてのロボット10の姿勢データに基づいて、ツールオフセットを算出する構成である。このため、各姿勢のロボット10の制御においては、センサ20を構成するレンズのひずみの影響を受けることなく、ツール100の先端[P]をセンサ座標系における基準座標[Sp]に一致させることができる。これによりセンサ20を構成するレンズのひずみを考慮することなく各姿勢のロボットを制御することができ、この結果ひずみの影響を含まない姿勢データに基づいて精度の良いツールオフセットを算出し、キャリブレーションの精度の向上を図ることが可能である。
--Effects of the First Embodiment--
The first embodiment described above is configured to control the robot 10 in each posture so that the tip [P] of the tool 100 coincides with the reference coordinate [Sp] in the sensor coordinate system, and calculate the tool offset based on the posture data of the robot 10 in each posture. Therefore, in controlling the robot 10 in each posture, the tip [P] of the tool 100 can be coincided with the reference coordinate [Sp] in the sensor coordinate system without being affected by the distortion of the lens constituting the sensor 20. This makes it possible to control the robot in each posture without considering the distortion of the lens constituting the sensor 20, and as a result, it is possible to calculate a highly accurate tool offset based on posture data that does not include the influence of the distortion, and improve the accuracy of the calibration.

また、人手を介さずに自動でキャリブレーションを遂行することが可能である。したがって、ピッキング失敗やピッキングのアイドルタイムの発生を検知し、自動的にキャリブレーション動作を開始する構成とすることも可能である。これにより、ピッキングの失敗率の削減やスループットの向上を図ることができる。 It is also possible to perform calibration automatically without human intervention. Therefore, it is possible to configure the system to detect picking failures or the occurrence of picking idle time and automatically start the calibration operation. This can reduce the picking failure rate and improve throughput.

≪第2実施形態≫
-ロボットシステム-
図13および図14は、第2実施形態に係るロボットシステム2の要部の構成図(その1)および(その2)である。これらの図に示すロボットシステム2が、図1~図12を用いて説明した第1実施形態のロボットシステム1と異なるところは、ロボット10に装着されるツール200の構成にある。またセンサ20は、三次元カメラである。さらに以降のロボットシステムの制御方法で説明するように、図3に示した制御装置40の認識部41におけるツール200の先端の認識の手順が異なる。他の構成は、第1実施形態のロボットシステム1と同様である。
Second Embodiment
-Robot System-
Figures 13 and 14 are configuration diagrams (part 1) and (part 2) of the main parts of a robot system 2 according to the second embodiment. The robot system 2 shown in these figures differs from the robot system 1 of the first embodiment described with reference to Figures 1 to 12 in the configuration of the tool 200 attached to the robot 10. The sensor 20 is a three-dimensional camera. Furthermore, as will be described in the control method of the robot system below, the procedure for recognizing the tip of the tool 200 in the recognition unit 41 of the control device 40 shown in Figure 3 is different. The other configurations are similar to those of the robot system 1 of the first embodiment.

図13、図14に示すツール200は、グリッパであって、複数本の指201を有し、複数本の指201によってここでの図示を省略したワークを保持する。ツール200が有する指201の本数は、図面においては2本であるが、3本またはそれ以上であってもよい。 The tool 200 shown in Figures 13 and 14 is a gripper that has multiple fingers 201 and holds a workpiece (not shown here) with the multiple fingers 201. The number of fingers 201 on the tool 200 is two in the drawings, but it may be three or more.

認識部41(図3参照)は、例えば複数の指201の先端の中心位置をツール200の先端[P]として認識する。認識部41は、先ずセンサ20から取得したセンシングデータに基づいて、ツール200を構成する各指201の先端をマーカ[M]として認識する。なお、マーカ[M]となる各指201の先端は、センサ20によって認識し易いように着色してもよい。認識部41はマーカ[M]を認識した後、例えば事前の入力によって保持しているマーカ[M]と先端[P]との位置関係の情報に基づいて、センサ座標系における先端[P]の位置を算出し、算出した位置を先端[P]の座標(先端座標)として認識する。 The recognition unit 41 (see FIG. 3) recognizes, for example, the center position of the tips of the multiple fingers 201 as the tip [P] of the tool 200. The recognition unit 41 first recognizes the tips of the fingers 201 constituting the tool 200 as markers [M] based on the sensing data acquired from the sensor 20. The tips of the fingers 201 that become the markers [M] may be colored so that they can be easily recognized by the sensor 20. After recognizing the marker [M], the recognition unit 41 calculates the position of the tip [P] in the sensor coordinate system based on information on the positional relationship between the marker [M] and the tip [P] that is held by prior input, for example, and recognizes the calculated position as the coordinates of the tip [P] (tip coordinates).

-ロボットシステムの制御方法-
第2実施形態におけるロボットシステムの制御方法は、図9を用いて説明した第1実施形態のロボットシステムの制御方法において、ステップS102およびステップS202が異なるのみである。
-Method for controlling a robot system-
The control method for the robot system in the second embodiment is different from the control method for the robot system in the first embodiment described with reference to FIG. 9 only in steps S102 and S202.

すなわち、ステップS102において、認識部41(図3参照)は、センシングデータから、指201の先端をマーカ[M](図13,図14参照)の位置として認識する。なお、次のステップS103においては、認識部41は、複数のマーカ[M]の位置から、ツール200の先端[P]の位置、すなわち先端座標を認識すればよい。この際、認識部41は、例えば事前の入力によって保持している複数のマーカ[M]と先端[P]との位置関係の情報に基づいて、センサ座標系における先端[P]の座標を、先端座標として算出し、先端座標を認識する。認識した先端座標は、基準座標保持部42に送信する。 That is, in step S102, the recognition unit 41 (see FIG. 3) recognizes the tip of the finger 201 as the position of the marker [M] (see FIGS. 13 and 14) from the sensing data. In the next step S103, the recognition unit 41 recognizes the position of the tip [P] of the tool 200, i.e., the tip coordinates, from the positions of the multiple markers [M]. At this time, the recognition unit 41 calculates the coordinates of the tip [P] in the sensor coordinate system as the tip coordinates based on information on the positional relationship between the multiple markers [M] and the tip [P] that is held, for example, by prior input, and recognizes the tip coordinates. The recognized tip coordinates are transmitted to the reference coordinate holding unit 42.

またステップS202において、ツール200の先端[P]を基準座標[Sp]に一致させる場合、軌道計画部43は、センサ20として用いた三次元カメラからのセンシングデータに基づく制御を実施すればよい。すなわち、認識部41で認識された先端座標のX座標、Y座標、およびZ座標を、基準座標[Sp]のX座標、Y座標、およびZ座標に一致させるように軌道を計画すればよい。 In addition, in step S202, when the tip [P] of the tool 200 is to be aligned with the reference coordinate [Sp], the trajectory planning unit 43 may perform control based on sensing data from the three-dimensional camera used as the sensor 20. In other words, the trajectory may be planned so that the X-coordinate, Y-coordinate, and Z-coordinate of the tip coordinate recognized by the recognition unit 41 are aligned with the X-coordinate, Y-coordinate, and Z-coordinate of the reference coordinate [Sp].

-第2実施形態の効果-
このような第2実施形態であっても、第1実施形態と同様に、センサ20を構成するひずみの影響を含まない姿勢データに基づいて、精度の良いツールオフセットを算出し、キャリブレーションの精度の向上を図ることが可能である。また、自動的にキャリブレーション動作を開始する構成とすることも可能であり、ピッキングの失敗率の削減やスループットの向上を図ることができる。
--Effects of the second embodiment--
In the second embodiment, as in the first embodiment, it is possible to improve the accuracy of calibration by calculating a highly accurate tool offset based on the attitude data that does not include the influence of distortion constituting the sensor 20. In addition, it is also possible to configure the calibration operation to start automatically, which makes it possible to reduce the picking failure rate and improve the throughput.

≪第3実施形態≫
-ロボットシステム-
図15は、第3実施形態に係るロボットシステム3の要部の構成図である。この図に示すロボットシステム3が、図1~図12を用いて説明した第1実施形態のロボットシステム1と異なるところは、ロボット10に装着されるツール300の構成にある。またセンサ20は、二次元カメラを用いることが好ましい。さらに以降のロボットシステムの制御方法で説明するように、図3に示した制御装置40の認識部41におけるツール300の先端の認識の手順が異なる。他の構成は、第1実施形態のロボットシステム1と同様である。
Third Embodiment
-Robot System-
Fig. 15 is a configuration diagram of the main parts of a robot system 3 according to the third embodiment. The robot system 3 shown in this figure differs from the robot system 1 of the first embodiment described with reference to Figs. 1 to 12 in the configuration of the tool 300 attached to the robot 10. Also, it is preferable to use a two-dimensional camera as the sensor 20. Furthermore, as will be described in the control method of the robot system below, the procedure for recognizing the tip of the tool 300 in the recognition unit 41 of the control device 40 shown in Fig. 3 is different. The other configurations are similar to those of the robot system 1 of the first embodiment.

図15に示すツール300は、グリッパであって、複数本の指301を有し、複数本の指301によってここでの図示を省略したワークを保持する。ツール300が有する指301の本数は、図面においては2本であるが、3本またはそれ以上であってもよい。また特に、これらの指301のうちの少なくとも1つは、ワークを保持する面に窪み301aを有する。 The tool 300 shown in FIG. 15 is a gripper having multiple fingers 301, which hold a workpiece (not shown here). The number of fingers 301 on the tool 300 is two in the drawing, but it may be three or more. In particular, at least one of these fingers 301 has a recess 301a on the surface that holds the workpiece.

図16は、第3実施形態に係るロボットシステム3の要部を説明するための図であって、ツール300の構成を説明するための図である。図15および図16に示すように、窪み301aは、以降に説明するキャリブレーション動作において、マーカ[M]となる所定の径を有する球体を所定状態で確実に保持することが可能な形状を有している。 Figure 16 is a diagram for explaining the main parts of the robot system 3 according to the third embodiment, and is a diagram for explaining the configuration of the tool 300. As shown in Figures 15 and 16, the recess 301a has a shape that can reliably hold in a predetermined state a sphere having a predetermined diameter that serves as a marker [M] in the calibration operation described below.

認識部41(図3参照)は、ツール300においてワークを保持する面側に設定した任意の一点を、ツール300の先端[P](図15参照)として認識する。例えばここでは、1つの指301に設けた窪み301aの中心を、先端[P]とする。認識部41は、先ずセンサ20から取得したセンシングデータに基づいて、ツール300に所定状態で保持された所定の径を有する球体を、マーカ[M]として認識する。認識部41はマーカ[M]を認識した後、例えば事前の入力によって保持しているマーカ[M]と先端[P]との位置関係の情報に基づいて、センサ座標系における先端[P]の位置を算出し、算出した位置を先端[P]の座標(先端座標)として認識する。 The recognition unit 41 (see FIG. 3) recognizes an arbitrary point set on the surface side of the tool 300 that holds the workpiece as the tip [P] (see FIG. 15) of the tool 300. For example, here, the center of the depression 301a provided in one finger 301 is set as the tip [P]. The recognition unit 41 first recognizes a sphere having a predetermined diameter held in a predetermined state by the tool 300 as a marker [M] based on the sensing data acquired from the sensor 20. After recognizing the marker [M], the recognition unit 41 calculates the position of the tip [P] in the sensor coordinate system based on information on the positional relationship between the marker [M] and the tip [P] that is held by, for example, prior input, and recognizes the calculated position as the coordinates of the tip [P] (tip coordinates).

-ロボットシステムの制御方法-
第3実施形態におけるロボットシステムの制御方法は、図9を用いて説明した第1実施形態のロボットシステムの制御方法において、ステップS101の前に、マーカ[M]となる所定の径を有する球体をツール300で保持するステップを有する。マーカ[M]となる球体は、ロボット10の手の届く範囲で、かつ通常のピッキング動作に影響のない場所に配置されていることとする。ツールオフセットの誤差が大きい場合、マーカ[M]を保持する際に、ツール300によるマーカ[M]の保持位置にずれが生じるが、ツール300に設けた窪み301aによってそのずれは吸収され、マーカ[M]を所定状態で保持することができる。
-Method for controlling a robot system-
The control method of the robot system in the third embodiment includes a step of holding a sphere having a predetermined diameter to become the marker [M] by the tool 300 before step S101 in the control method of the robot system in the first embodiment described with reference to FIG. 9. The sphere to become the marker [M] is placed within the reach of the robot 10 and in a location that does not affect normal picking operations. If the error in the tool offset is large, a deviation occurs in the holding position of the marker [M] by the tool 300 when holding the marker [M], but the deviation is absorbed by the recess 301a provided in the tool 300, and the marker [M] can be held in a predetermined state.

またその後は、ステップS102が異なるのみである。すなわち、ステップS102において、認識部41(図3参照)は、センシングデータから、球体からなるマーカ[M]の位置を認識すればよい。なお、次のステップS103においては、認識部41は、複数のマーカ[M]の位置から、ツール300の先端[P]の位置、すなわち先端座標を認識すればよい。この際、認識部41は、例えば事前の入力によって保持している複数のマーカ[M]と先端[P]との位置関係の情報に基づいて、センサ座標系における先端[P]の座標を、先端座標として算出し、先端座標を認識する。認識した先端座標は、基準座標保持部42に送信する。 Then, the only difference thereafter is step S102. That is, in step S102, the recognition unit 41 (see FIG. 3) recognizes the position of a marker [M] consisting of a sphere from the sensing data. In the next step S103, the recognition unit 41 recognizes the position of the tip [P] of the tool 300, i.e., the tip coordinate, from the positions of the multiple markers [M]. At this time, the recognition unit 41 calculates the coordinates of the tip [P] in the sensor coordinate system as the tip coordinate based on information on the positional relationship between the multiple markers [M] and the tip [P] that is held, for example, by prior input, and recognizes the tip coordinate. The recognized tip coordinate is transmitted to the reference coordinate holding unit 42.

ただし、ステップS101およびステップS108においては、マーカ[M]がセンサ20によって確認できるように、ロボット10の姿勢を制御する。またステップS202において、ツール200の先端[P]を基準座標[Sp]に一致させる場合には、第1実施形態において図10~図12を用いて説明した手順で、センサ20として用いた二次元カメラからのセンシングデータに基づく制御を実施すればよい。 However, in steps S101 and S108, the posture of the robot 10 is controlled so that the marker [M] can be confirmed by the sensor 20. Also, in step S202, when the tip [P] of the tool 200 is to be aligned with the reference coordinate [Sp], control based on sensing data from the two-dimensional camera used as the sensor 20 can be performed in the procedure described in the first embodiment using Figures 10 to 12.

-第3実施形態の効果-
このような第3実施形態であっても、第1実施形態と同様に、センサ20を構成するひずみの影響を含まない姿勢データに基づいて、精度の良いツールオフセットを算出し、キャリブレーションの精度の向上を図ることが可能である。また自動的にキャリブレーション動作を開始する構成とすることも可能であり、ピッキングの失敗率の削減やスループットの向上を図ることができる。
--Effects of the third embodiment--
In the third embodiment, as in the first embodiment, it is possible to improve the accuracy of calibration by calculating a precise tool offset based on the attitude data that does not include the influence of the distortion constituting the sensor 20. In addition, it is possible to configure the calibration operation to start automatically, which makes it possible to reduce the picking failure rate and improve the throughput.

なお、本発明は上記した各実施形態に限定されるものではなく、さらに様々な変形例が含まれる。例えば、上記した実施形態は本発明をわかりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。例えば、ロボット10に装着する作業用のツールは、ベローズやグリッパに限定さえることはなく、他のツールであってもよい。また、マーカ[M]は、先端[P]を認識することを補助するものであればよく、円形や球に限定さえることはなく、他の形状(四角、三角など)の印や、他の形状(立方体、円錐、四角錘、円柱など)の立体でもよい。また、ある実施形態の構成の一部を他の実施形態の構成に置き換えることが可能であり、また、ある実施形態の構成に他の実施形態の構成を加えることも可能である。また、各実施形態の構成の一部について、他の構成の追加・削除・置換をすることが可能である。 The present invention is not limited to the above-described embodiments, and further includes various modified examples. For example, the above-described embodiments have been described in detail to clearly explain the present invention, and are not necessarily limited to those having all of the configurations described. For example, the work tool attached to the robot 10 is not limited to a bellows or a gripper, and may be other tools. In addition, the marker [M] is not limited to a circle or a sphere, and may be a mark of other shapes (such as a square or a triangle) or a solid shape of other shapes (such as a cube, a cone, a square pyramid, or a cylinder) as long as it assists in recognizing the tip [P]. In addition, it is possible to replace a part of the configuration of one embodiment with the configuration of another embodiment, and it is also possible to add the configuration of another embodiment to the configuration of one embodiment. In addition, it is possible to add, delete, or replace a part of the configuration of each embodiment with another configuration.

1,2,3…ロボットシステム
10…ロボット
20…センサ
40…制御装置
41…認識部
42…基準座標保持部
43…軌道計画部(ロボット制御部)
44…制御部(ロボット制御部)
45…エンコーダ読取部
46…ロボット姿勢記憶部
47…ツールオフセット算出部
100,200,300…ツール
[P]…先端
[M]…マーカ
REFERENCE SIGNS LIST 1, 2, 3... Robot system 10... Robot 20... Sensor 40... Control device 41... Recognition unit 42... Reference coordinate holding unit 43... Trajectory planning unit (robot control unit)
44: Control unit (robot control unit)
45: Encoder reading unit 46: Robot posture storage unit 47: Tool offset calculation unit 100, 200, 300: Tool [P]: Tip [M]: Marker

Claims (7)

複数のエンコーダを備えた多関節型のロボットと、前記ロボットによる作業範囲を撮像するセンサと、前記センサからの情報に基づいて前記ロボットの駆動を制御する制御装置とを有するロボットシステムであって、
前記制御装置は、
前記ロボットに装着した作業用のツールの先端のセンサ座標系における座標を、前記センサからの情報に基づいて認識する認識部と、
前記ロボットに対する前記作業用のツールの先端位置をツールオフセットとし、前記作業用のツールの先端が前記センサ座標系に設定した基準座標に一致するように、前記ツールオフセットと前記認識部からの情報に基づいて前記ロボットの姿勢を変更するロボット制御部と、
前記変更した各姿勢のロボットのエンコーダからエンコーダ値を読み取るエンコーダ読取部と、
前記エンコーダ読取部で読み取った前記各姿勢においてのエンコーダ値に基づいて、前記ツールオフセットの校正値を算出するツールオフセット算出部とを備え、
前記作業用のツールは、前記認識部によって前記作業用のツールの先端を認識することを補助するマーカを備え、
前記認識部は、前記センサからの情報に基づいて前記マーカを認識し、認識したマーカに基づいて前記先端を認識する
ロボットシステム。
A robot system including a multi-joint robot equipped with a plurality of encoders, a sensor for capturing an image of a work area of the robot, and a control device for controlling the operation of the robot based on information from the sensor,
The control device includes:
a recognition unit that recognizes coordinates in a sensor coordinate system of a tip of a work tool attached to the robot based on information from the sensor;
a robot control unit that defines a tip position of the work tool relative to the robot as a tool offset, and changes the posture of the robot based on the tool offset and information from the recognition unit so that the tip of the work tool coincides with a reference coordinate set in the sensor coordinate system;
an encoder reading unit that reads an encoder value from an encoder of the robot in each of the changed postures;
a tool offset calculation unit that calculates a calibration value of the tool offset based on the encoder value in each of the attitudes read by the encoder reading unit ,
the work tool includes a marker that assists the recognition unit in recognizing a tip of the work tool,
The recognition unit recognizes the marker based on information from the sensor, and recognizes the tip based on the recognized marker.
Robot system.
前記作業用のツールは、柱状の先端面を吸着面としたベローズであり、
前記認識部は、前記センサからの情報に基づいて前記吸着面の周縁を認識し、認識した前記周縁に基づいて前記吸着面の中心を前記作業用のツールの先端として認識する
請求項に記載のロボットシステム。
The work tool is a bellows having a columnar tip surface as an adsorption surface,
The robot system according to claim 1 , wherein the recognition unit recognizes a periphery of the suction surface based on information from the sensor, and recognizes a center of the suction surface as a tip of the work tool based on the recognized periphery.
前記作業用のツールは、複数の指を備えたグリッパであり、
前記認識部は、前記複数の指の何れかに設定した任意の点を前記作業用のツールの先端として認識する
請求項に記載のロボットシステム。
the work tool being a multi-fingered gripper;
The robot system according to claim 1 , wherein the recognition unit recognizes an arbitrary point set on any one of the plurality of fingers as a tip of the work tool.
前記センサは、二次元カメラである
請求項1~のうちの何れか1項に記載のロボットシステム。
The robot system according to any one of claims 1 to 3 , wherein the sensor is a two-dimensional camera.
前記ロボット制御部は、前記作業用のツールによる作業を実施していないアイドルタイムを検知した場合に、前記ロボットの姿勢を変更する制御を行う
請求項1~のうちの何れか1項に記載のロボットシステム。
The robot system according to any one of claims 1 to 4 , wherein the robot control unit performs control to change the posture of the robot when it detects an idle time during which no work is being performed by the work tool .
前記ロボット制御部は、前記作業用のツールによる作業の失敗を検知した場合に、前記ロボットの姿勢を変更する制御を行う
請求項1~のうちの何れか1項に記載のロボットシステム。
The robot system according to claim 1 , wherein the robot control unit performs control to change the posture of the robot when a failure in the work performed by the work tool is detected.
複数のエンコーダを備えた多関節型のロボットと、前記ロボットによる作業範囲を撮像するセンサと、前記センサからの情報に基づいて前記ロボットの駆動を制御する制御装置とを有するロボットシステムの制御方法であって、
前記制御装置の認識部が、前記ロボットに装着した作業用のツールの先端のセンサ座標系における座標を、前記センサからの情報に基づいて認識し、
前記制御装置のロボット制御部が、前記ロボットに対する前記作業用のツールの先端位置をツールオフセットとし、前記作業用のツールの先端が前記センサ座標系に設定した基準座標に一致するように、前記ツールオフセットと前記認識部からの情報に基づいて前記ロボットの姿勢を変更し、
前記制御装置のエンコーダ読取部が、前記変更した各姿勢のロボットのエンコーダからエンコーダ値を読み取り、
前記制御装置のツールオフセット算出部が、前記エンコーダ読取部で読み取った前記各姿勢においてのエンコーダ値に基づいて、前記ツールオフセットの校正値を算出し、
前記制御装置の認識部は、前記作業用のツールの先端のセンサ座標系における座標を認識する際、前記作業用のツールが備える前記先端の認識を補助するマーカを認識し、認識したマーカに基づいて前記先端を認識する
ロボットシステムの制御方法。
A method for controlling a robot system having a multi-joint robot equipped with a plurality of encoders, a sensor for capturing an image of a working range of the robot, and a control device for controlling driving of the robot based on information from the sensor, comprising:
a recognition unit of the control device recognizes coordinates in a sensor coordinate system of a tip of a work tool attached to the robot based on information from the sensor;
a robot control unit of the control device defines a tip position of the work tool relative to the robot as a tool offset, and changes the posture of the robot based on the tool offset and information from the recognition unit so that the tip of the work tool coincides with a reference coordinate set in the sensor coordinate system;
an encoder reading unit of the control device reads an encoder value from an encoder of the robot for each of the changed postures;
a tool offset calculation unit of the control device calculates a calibration value of the tool offset based on the encoder value in each of the attitudes read by the encoder reading unit,
The recognition unit of the control device recognizes a marker provided on the work tool to assist in recognition of the tip when recognizing the coordinates of the tip of the work tool in a sensor coordinate system, and recognizes the tip based on the recognized marker.
A method for controlling a robot system.
JP2021042526A 2021-03-16 2021-03-16 ROBOT SYSTEM AND METHOD FOR CONTROLLING ROBOT SYSTEM Active JP7587448B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2021042526A JP7587448B2 (en) 2021-03-16 2021-03-16 ROBOT SYSTEM AND METHOD FOR CONTROLLING ROBOT SYSTEM
PCT/JP2021/039097 WO2022195944A1 (en) 2021-03-16 2021-10-22 Robot system, and control method for robot system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021042526A JP7587448B2 (en) 2021-03-16 2021-03-16 ROBOT SYSTEM AND METHOD FOR CONTROLLING ROBOT SYSTEM

Publications (2)

Publication Number Publication Date
JP2022142376A JP2022142376A (en) 2022-09-30
JP7587448B2 true JP7587448B2 (en) 2024-11-20

Family

ID=83320239

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021042526A Active JP7587448B2 (en) 2021-03-16 2021-03-16 ROBOT SYSTEM AND METHOD FOR CONTROLLING ROBOT SYSTEM

Country Status (2)

Country Link
JP (1) JP7587448B2 (en)
WO (1) WO2022195944A1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115723127B (en) * 2022-11-14 2024-08-09 天津大学 Series-parallel robot contour error prediction method based on grating encoder
WO2025046780A1 (en) * 2023-08-30 2025-03-06 株式会社ニコン Robot device and method for controlling same

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000024978A (en) 1998-06-04 2000-01-25 Eastman Kodak Co Universal end effector applied to robot
JP2006110705A (en) 2004-09-15 2006-04-27 Yaskawa Electric Corp Robot calibration method
JP2016120558A (en) 2014-12-25 2016-07-07 セイコーエプソン株式会社 Robot and robot system
JP6079352B2 (en) 2013-03-25 2017-02-15 セイコーエプソン株式会社 ROBOT CONTROL METHOD, ROBOT CONTROL DEVICE, ROBOT, ROBOT SYSTEM, AND PROGRAM
JP2017100202A (en) 2015-11-30 2017-06-08 株式会社アイキューブテクノロジ Robot system, control device, control method, and program
JP2021024052A (en) 2019-08-07 2021-02-22 オムロン株式会社 Image processing device, image processing method and program

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH073760Y2 (en) * 1990-04-17 1995-01-30 有明工業株式会社 Speaker sub-cone incorporation device

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000024978A (en) 1998-06-04 2000-01-25 Eastman Kodak Co Universal end effector applied to robot
JP2006110705A (en) 2004-09-15 2006-04-27 Yaskawa Electric Corp Robot calibration method
JP6079352B2 (en) 2013-03-25 2017-02-15 セイコーエプソン株式会社 ROBOT CONTROL METHOD, ROBOT CONTROL DEVICE, ROBOT, ROBOT SYSTEM, AND PROGRAM
JP2016120558A (en) 2014-12-25 2016-07-07 セイコーエプソン株式会社 Robot and robot system
JP2017100202A (en) 2015-11-30 2017-06-08 株式会社アイキューブテクノロジ Robot system, control device, control method, and program
JP2021024052A (en) 2019-08-07 2021-02-22 オムロン株式会社 Image processing device, image processing method and program

Also Published As

Publication number Publication date
WO2022195944A1 (en) 2022-09-22
JP2022142376A (en) 2022-09-30

Similar Documents

Publication Publication Date Title
CN112672860B (en) Robot calibration for AR and digital twins
US9517560B2 (en) Robot system and calibration method of the robot system
EP0528054B1 (en) Detected position correcting method
JP6855492B2 (en) Robot system, robot system control device, and robot system control method
US20200298411A1 (en) Method for the orientation of an industrial robot, and industrial robot
JP7214861B2 (en) Automatic calibration of camera-robot system with tool offset
US11230011B2 (en) Robot system calibration
CN111278608B (en) Calibration article for 3D vision robot system
KR20080088165A (en) Robot calibration method
JP7587448B2 (en) ROBOT SYSTEM AND METHOD FOR CONTROLLING ROBOT SYSTEM
JP2020116717A (en) Robot control system
JP2011235400A (en) Calibration method of manipulator and robot control system
JP2011230249A (en) Method for calibrating sensor of manipulator having visual sensor and robot control system
JPS6358505A (en) Robot controller
CN101213049A (en) Rotation center point calculation method, rotation axis calculation method, program generation, motion method, and robot device
JP7583942B2 (en) ROBOT CONTROL DEVICE, ROBOT CONTROL SYSTEM, AND ROBOT CONTROL METHOD
JP7660686B2 (en) ROBOT CONTROL DEVICE, ROBOT CONTROL SYSTEM, AND ROBOT CONTROL METHOD
EP4382258A1 (en) Robot control device, robot control system, and robot control method
JP2016203282A (en) Robot with mechanism for changing end effector attitude
KR102333281B1 (en) Robot arm for teaching location where tools to move and operation method thereof
US20250001594A1 (en) Robot control device, robot control system, and robot control method
JP7568862B2 (en) ROBOT SYSTEM, CONTROL DEVICE, DIAGNOSIS METHOD, AND DIAGNOSIS PROGRAM
WO2024190883A1 (en) Processing device, placement member, and program
WO2024135220A1 (en) Robot control system
JP2017074637A (en) Tool center point estimation method and tool center point estimation device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230511

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240326

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240502

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240625

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: 20241029

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20241108

R150 Certificate of patent or registration of utility model

Ref document number: 7587448

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150