JP2020023024A - Control system, analyzer, and control method - Google Patents

Control system, analyzer, and control method Download PDF

Info

Publication number
JP2020023024A
JP2020023024A JP2018149087A JP2018149087A JP2020023024A JP 2020023024 A JP2020023024 A JP 2020023024A JP 2018149087 A JP2018149087 A JP 2018149087A JP 2018149087 A JP2018149087 A JP 2018149087A JP 2020023024 A JP2020023024 A JP 2020023024A
Authority
JP
Japan
Prior art keywords
moving image
unit
waveform
image
robot
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2018149087A
Other languages
Japanese (ja)
Other versions
JP6965844B2 (en
Inventor
加藤 豊
Yutaka Kato
豊 加藤
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.)
Omron Corp
Original Assignee
Omron Corp
Omron Tateisi Electronics Co
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 Omron Corp, Omron Tateisi Electronics Co filed Critical Omron Corp
Priority to JP2018149087A priority Critical patent/JP6965844B2/en
Priority to CN201910649815.5A priority patent/CN110815208B/en
Publication of JP2020023024A publication Critical patent/JP2020023024A/en
Application granted granted Critical
Publication of JP6965844B2 publication Critical patent/JP6965844B2/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
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23KSOLDERING OR UNSOLDERING; WELDING; CLADDING OR PLATING BY SOLDERING OR WELDING; CUTTING BY APPLYING HEAT LOCALLY, e.g. FLAME CUTTING; WORKING BY LASER BEAM
    • B23K31/00Processes relevant to this subclass, specially adapted for particular articles or purposes, but not covered by only one of the preceding main groups
    • B23K31/02Processes relevant to this subclass, specially adapted for particular articles or purposes, but not covered by only one of the preceding main groups relating to soldering or welding
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23KSOLDERING OR UNSOLDERING; WELDING; CLADDING OR PLATING BY SOLDERING OR WELDING; CUTTING BY APPLYING HEAT LOCALLY, e.g. FLAME CUTTING; WORKING BY LASER BEAM
    • B23K37/00Auxiliary devices or processes, not specially adapted to a procedure covered by only one of the preceding main groups
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • B25J9/1697Vision controlled systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Robotics (AREA)
  • Automation & Control Theory (AREA)
  • Physics & Mathematics (AREA)
  • Optics & Photonics (AREA)
  • Manipulator (AREA)

Abstract

To provide a control system where an operator easily determines whether or not control of a robot using a visual servo is performed normally.SOLUTION: A control system includes: a robot for changing states of an object; an imaging device for imaging the object; a control part for controlling the robot so that a change of the object state in an actual image captured by the imaging device approximates a change of the object state on a reference moving image created in advance; and an analysis part for displaying onto a screen of a display device both a first waveform showing a temporal change of a feature amount extracted from the actual image and a second waveform showing a temporal change of a feature amount extracted from a frame of the reference moving image.SELECTED DRAWING: Figure 12

Description

本発明は、ロボットを制御する制御システム、解析装置および制御方法に関する。   The present invention relates to a control system, an analysis device, and a control method for controlling a robot.

「村田敦、他3名、「視覚サーボによる高精度位置決め手法の開発」、SEIテクニカルレビュー、2009年7月、第175号、p. 98-102」(非特許文献1)には、視覚サーボを利用し、ロボットアームを目標位置に導く技術が開示されている。非特許文献1に開示されたシステムは、ロボットアームに取り付けられたカメラによって、コネクタを撮像し、カメラの画像が目標画像に近づくようにロボットを制御する。これにより、ロボットハンドに支持された端子がコネクタに挿入される。   "Atsushi Murata and three others," Development of high-precision positioning method using visual servo ", SEI Technical Review, July 2009, No. 175, p. 98-102 (Non-Patent Document 1) U.S. Pat. No. 6,064,056 discloses a technique for guiding a robot arm to a target position. The system disclosed in Non-Patent Document 1 captures an image of a connector by a camera attached to a robot arm, and controls the robot so that the image of the camera approaches a target image. Thereby, the terminal supported by the robot hand is inserted into the connector.

村田敦、他3名、「視覚サーボによる高精度位置決め手法の開発」、SEIテクニカルレビュー、2009年7月、第175号、p. 98-102Atsushi Murata and 3 others, "Development of high-precision positioning method using visual servo", SEI Technical Review, July 2009, No. 175, p. 98-102

生産現場では4M変更が起こり得る。4M変更とは、人(man)、機械(machine)、方法(method)、材料(material)の変化である。4M変更が生じた場合、視覚サーボを用いてロボットを正常に制御できなくなり、対象物の状態が期待通りに変化しなくなる可能性がある。たとえば、非特許文献1に記載のシステムでは、端子がコネクタに挿入できなくなる。   4M changes can occur at the production site. A 4M change is a change in a man, a machine, a method, or a material. When the 4M change occurs, the robot cannot be normally controlled using the visual servo, and the state of the target object may not change as expected. For example, in the system described in Non-Patent Document 1, the terminal cannot be inserted into the connector.

作業者は、ロボットの動作を目視で確認することにより、視覚サーボを用いたロボットの制御が正常に実行されているか否かを判定できる。しかしながら、ロボットの動作速度が速い場合、または、安全柵等の環境条件によりロボットとの距離が長い場合、作業者は、ロボットの動作を目視で確認しにくい。この場合、作業者は、視覚サーボを用いたロボットの制御が正常に実行されているか否かを判定しにくい。   By visually checking the operation of the robot, the operator can determine whether or not the control of the robot using the visual servo is normally performed. However, when the operation speed of the robot is high, or when the distance to the robot is long due to environmental conditions such as a safety fence, it is difficult for the operator to visually check the operation of the robot. In this case, it is difficult for the operator to determine whether or not the control of the robot using the visual servo is normally performed.

本発明は、上記の問題を鑑みてなされたものであり、その目的は、視覚サーボを用いたロボットの制御が正常に実行されている否かを作業者が判定しやすい制御システム、解析装置および制御方法を提供することである。   The present invention has been made in view of the above problems, and a purpose thereof is to provide a control system, an analysis device, and a control system that allow an operator to easily determine whether or not control of a robot using a visual servo is normally performed. The purpose is to provide a control method.

本開示の一例によれば、制御システムは、対象物の状態を変化させるためのロボットと、対象物を撮像するための撮像装置と、制御部と、解析部とを備える。制御部は、撮像装置によって撮像される実画像上の対象物の状態の変化が、予め作成された基準動画上の対象物の状態の変化に近づくように、ロボットを制御する。解析部は、実画像から抽出される特徴量の時間変化を示す第1波形と、基準動画のフレームから抽出される特徴量の時間変化を示す第2波形との両方を表示装置の画面上に表示させる。   According to an example of the present disclosure, a control system includes a robot for changing a state of a target, an imaging device for capturing an image of the target, a control unit, and an analysis unit. The control unit controls the robot such that a change in the state of the target on the real image captured by the imaging device approaches a change in the state of the target on the previously created reference moving image. The analysis unit displays, on the screen of the display device, both the first waveform indicating the time change of the feature extracted from the real image and the second waveform indicating the time change of the feature extracted from the frame of the reference moving image. Display.

この開示によれば、作業者は、画面に表示される第1波形と第2波形とを確認することにより、視覚サーボを用いたロボットの制御が正常に実行されている否かを判定しやすくなる。たとえば、作業者は、第1波形と第2波形との偏差が大きい場合に、視覚サーボを用いたロボットの制御に何等かの異常が生じていると判定できる。   According to this disclosure, the operator can easily determine whether the control of the robot using the visual servo is normally performed by checking the first waveform and the second waveform displayed on the screen. Become. For example, when the deviation between the first waveform and the second waveform is large, the operator can determine that some abnormality has occurred in the control of the robot using the visual servo.

上述の開示において、解析部は、第1波形と第2波形との時間軸を合わせる。この開示によれば、第1波形と第2波形との時間ずれが補正される。その結果、視覚サーボを用いたロボットの制御が正常に実行されている否かをより判定しやすくなる。   In the above disclosure, the analysis unit adjusts the time axes of the first waveform and the second waveform. According to this disclosure, the time lag between the first waveform and the second waveform is corrected. As a result, it becomes easier to determine whether the control of the robot using the visual servo is normally performed.

上述の開示において、解析部は、時間軸上の時刻ごとに、第1波形と第2波形との特徴量の差異を示すパラメータ値を算出し、パラメータ値およびパラメータ値の時間変化を示す第3波形の少なくとも一方を画面上に表示させる。この開示によれば、作業者は、パラメータ値または第3波形を確認することにより、ロボットの制御中のいずれの時間帯で第1波形と第2波形との偏差が大きくなっているかを容易に把握することができる。   In the above disclosure, the analysis unit calculates, for each time on the time axis, a parameter value indicating a difference between the feature amounts of the first waveform and the second waveform, and a third value indicating a parameter value and a time change of the parameter value. At least one of the waveforms is displayed on the screen. According to this disclosure, the operator can easily check which time zone during the control of the robot the deviation between the first waveform and the second waveform is large by checking the parameter value or the third waveform. You can figure out.

上述の開示において、解析部は、時間軸上の時刻ごとに、第1波形と第2波形との特徴量の差異を示すパラメータ値を算出する。解析部は、算出したパラメータ値に基づいて、パラメータ値が最大となる時刻、または、パラメータ値が閾値を超える時刻を指定時刻として選択する。解析部は、指定時刻に対応する実画像と、基準動画における指定時刻のフレームとを画面上に同時に表示させる。   In the above disclosure, the analysis unit calculates, for each time on the time axis, a parameter value indicating a difference between the feature amounts of the first waveform and the second waveform. The analysis unit selects a time at which the parameter value becomes the maximum or a time at which the parameter value exceeds the threshold value as the designated time based on the calculated parameter value. The analysis unit causes the real image corresponding to the designated time and the frame at the designated time in the reference moving image to be simultaneously displayed on the screen.

この開示によれば、作業者は、第1波形と第2波形との特徴量の差異が大きいときの画像を確認することができ、ロボットの異常の原因を把握しやすくなる。   According to this disclosure, an operator can check an image when the difference between the feature amounts of the first waveform and the second waveform is large, and it is easy to grasp the cause of the abnormality of the robot.

上述の開示において、解析部は、時間軸上の指定時刻を受け付け、指定時刻に対応する実画像と、基準動画における指定時刻のフレームとを画面上に同時に表示させる。この開示によれば、作業者は、第1波形と第2波形との特徴量の差異が大きいときの時刻を指定時刻として指定することにより、第1波形と第2波形との特徴量の差異が大きいときの画像を確認することができ、ロボットの異常の原因を把握しやすくなる。   In the above disclosure, the analysis unit receives a specified time on the time axis, and simultaneously displays an actual image corresponding to the specified time and a frame at the specified time in the reference moving image on the screen. According to this disclosure, the operator designates the time when the difference between the feature amounts of the first waveform and the second waveform is large as the designated time, so that the difference between the feature amounts of the first waveform and the second waveform is specified. Is large, the cause of the robot abnormality can be easily grasped.

上述の開示において、解析部は、時系列に並べられた実画像からなる実動画および基準動画の両方における、指定時刻を含む一部の期間の映像を画面上で同時に再生させる。   In the above disclosure, the analysis unit simultaneously reproduces, on the screen, the video of a part of the period including the designated time in both the real moving image including the real images arranged in time series and the reference moving image.

この開示によれば、作業者は、視覚サーボを用いたロボットの制御の異常の原因をさらに把握しやすくなる。   According to this disclosure, the operator can more easily understand the cause of the abnormality of the control of the robot using the visual servo.

上述の開示において、解析部は、実画像を撮像したときの、ロボットの基準位置からの移動量の時間変化を示す第4波形と、基準動画通りに対象物の状態が変化するときの移動量の時間変化を示す第5波形との両方を前記画面上に表示させる。   In the above disclosure, the analysis unit may include a fourth waveform indicating a temporal change in the movement amount of the robot from the reference position when the real image is captured, and a movement amount when the state of the target object changes according to the reference moving image. Is displayed on the screen.

この開示によれば、作業者は、第4波形と第5波形との偏差を確認することにより、ロボットの異常の有無を判定できる。その結果、作業者は、第1波形と第2波形との偏差が大きい原因を把握しやすくなる。   According to this disclosure, the operator can determine whether there is an abnormality in the robot by checking the deviation between the fourth waveform and the fifth waveform. As a result, the operator can easily understand the cause of the large deviation between the first waveform and the second waveform.

上述の開示において、ロボットは、複数の自由度で対象物の状態を変化させる。解析部は、複数の自由度のうちの1つの自由度の選択指示を受け付ける。移動量は、1つの自由度の方向に沿ってロボットが基準位置から移動した量である。   In the above disclosure, the robot changes the state of the object with a plurality of degrees of freedom. The analysis unit receives an instruction to select one of the degrees of freedom. The movement amount is the amount that the robot has moved from the reference position along the direction of one degree of freedom.

この開示によれば、作業者は、ロボットが有する複数の自由度のうちのいずれに異常があるかを把握しやすくなる。   According to this disclosure, it is easy for an operator to determine which of the degrees of freedom of the robot has an abnormality.

本開示の一例によれば、上記の制御システムに用いられる解析装置は、解析部を備える。   According to an example of the present disclosure, an analysis device used in the above control system includes an analysis unit.

本開示の一例によれば、制御方法は、対象物を撮像するための撮像装置を用いて、対象物の状態を変化させるロボットを制御する。制御方法は、第1のステップと、第2のステップとを備える。第1のステップは、撮像装置によって撮像される実画像上の対象物の状態の変化が、予め作成された基準動画上の対象物の状態の変化に近づくように、ロボットを制御するステップである。第2のステップは、実画像のフレームから抽出される特徴量の時間変化を示す第1波形と、基準動画のフレームから抽出される特徴量の時間変化を示す第2波形との両方を表示装置の画面上に表示させるステップである。   According to an example of the present disclosure, a control method controls a robot that changes a state of an object using an imaging device for imaging the object. The control method includes a first step and a second step. The first step is a step of controlling the robot such that a change in the state of the target on the real image captured by the imaging device approaches a change in the state of the target on the previously created reference moving image. . In the second step, the display device displays both a first waveform indicating a temporal change of a feature extracted from a frame of the real image and a second waveform indicating a temporal change of a feature extracted from a frame of the reference moving image. This is a step of displaying on the screen.

これらの開示によっても、作業者は、視覚サーボを用いたロボットの制御が正常に実行されている否かを判定しやすい。   According to these disclosures, the operator can easily determine whether or not the control of the robot using the visual servo is normally performed.

本発明によれば、作業者は、視覚サーボを用いたロボットの制御が正常に実行されている否かを判定しやすい。   According to the present invention, it is easy for an operator to determine whether or not control of a robot using a visual servo is normally performed.

実施の形態に係る制御システムの概要を示す模式図である。It is a schematic diagram which shows the outline | summary of the control system which concerns on embodiment. 実施の形態における解析画面の概要を示す図である。It is a figure showing an outline of an analysis screen in an embodiment. 実施の形態に係る制御システムを構成する制御装置のハードウェア構成を示す模式図である。FIG. 2 is a schematic diagram illustrating a hardware configuration of a control device included in the control system according to the embodiment. 実施の形態に係る制御装置の機能構成を示すブロック図である。FIG. 2 is a block diagram illustrating a functional configuration of a control device according to the embodiment. 基準動画(第1基準動画または第2基準動画)の一例を示す図である。It is a figure showing an example of a standard animation (the 1st standard animation or the 2nd standard animation). 実施の形態に係る基準動画記憶部が記憶する第1テーブルの一例を示す図である。FIG. 5 is a diagram illustrating an example of a first table stored in a reference moving image storage unit according to the embodiment. 実施の形態に係る実動画記憶部が記憶する第3テーブルの一例を示す図である。FIG. 9 is a diagram illustrating an example of a third table stored in the actual moving image storage unit according to the embodiment. 第1テンプレートの作成方法の一例を示す図である。FIG. 6 is a diagram illustrating an example of a method for creating a first template. 第1〜第4制御部の機能構成を示すブロック図である。FIG. 4 is a block diagram illustrating a functional configuration of first to fourth control units. 第1変化情報セットの生成方法を説明する図である。It is a figure explaining the generation method of the 1st change information set. 算出部による制御量の算出方法を説明する図である。FIG. 4 is a diagram illustrating a method of calculating a control amount by a calculation unit. 実施の形態における解析画面の具体例を示す図である。FIG. 9 is a diagram illustrating a specific example of an analysis screen according to the embodiment. 時間軸を合わせる前の実波形および基準波形と、時間軸を合わせた後の実波形および基準波形とを示す図である。FIG. 3 is a diagram illustrating an actual waveform and a reference waveform before adjusting the time axis, and an actual waveform and a reference waveform after adjusting the time axis. 特徴量の一例を示す図である。FIG. 4 is a diagram illustrating an example of a feature amount. 特徴量の別の例を示す図である。FIG. 9 is a diagram illustrating another example of the feature amount. 変化情報生成部による変化情報の生成処理の流れの一例を示すフローチャートである。9 is a flowchart illustrating an example of a flow of a change information generation process performed by a change information generation unit. 図16に示すステップS2のサブルーチンの処理の流れを示すフローチャートである。17 is a flowchart illustrating a flow of processing of a subroutine of step S2 illustrated in FIG. 16. 視覚サーボを用いた半田付け制御の処理の流れの一例を示すフローチャートである。It is a flowchart which shows an example of the flow of the processing of the soldering control using a visual servo. 図18に示すステップS44のサブルーチンの処理の流れを示すフローチャートである。19 is a flowchart showing the flow of processing of a subroutine of step S44 shown in FIG. 最近接フレームと目標フレームとの関係を示す図である。FIG. 3 is a diagram illustrating a relationship between a closest frame and a target frame. 図18に示すステップS46のサブルーチンの処理の流れを示すフローチャートである。19 is a flowchart showing the flow of processing of a subroutine of step S46 shown in FIG. 解析部の処理の流れを示すフローチャートである。9 is a flowchart illustrating a flow of a process performed by an analysis unit. 変形例1における解析画面の一例を示す図である。FIG. 14 is a diagram illustrating an example of an analysis screen according to a first modification. 変形例1に係る基準動画記憶部が記憶する第5テーブルの一例を示す図である。FIG. 14 is a diagram illustrating an example of a fifth table stored in a reference moving image storage unit according to Modification 1. 変形例1に係る実動画記憶部が記憶する第6テーブルの一例を示す図である。FIG. 13 is a diagram illustrating an example of a sixth table stored in an actual moving image storage unit according to Modification 1. 変形例2に係る解析画面の一例を示す図である。FIG. 14 is a diagram illustrating an example of an analysis screen according to a second modification. 変形例3に係る解析画面の一例を示す図である。FIG. 14 is a diagram illustrating an example of an analysis screen according to a third modification. 変形例3に係る実動画記憶部が記憶する第7テーブルの一例を示す図である。FIG. 17 is a diagram illustrating an example of a seventh table stored in an actual moving image storage unit according to Modification 3. 変形例4に係る制御システムの対象物を示す模式図である。FIG. 14 is a schematic diagram illustrating an object of a control system according to Modification 4.

以下、図面を参照しつつ、本発明に従う実施の形態について説明する。以下の説明では、同一の部品および構成要素には同一の符号を付してある。それらの名称および機能も同じである。したがって、これらについての詳細な説明は繰り返さない。   Hereinafter, embodiments according to the present invention will be described with reference to the drawings. In the following description, the same parts and components are denoted by the same reference numerals. Their names and functions are the same. Therefore, detailed description thereof will not be repeated.

<A.適用例>
まず、図1を参照して、本発明が適用される場面の一例について説明する。図1は、実施の形態に係る制御システムの概要を示す模式図である。
<A. Application example>
First, an example of a scene to which the present invention is applied will be described with reference to FIG. FIG. 1 is a schematic diagram illustrating an outline of a control system according to an embodiment.

本実施の形態に係る制御システム1は、たとえば、工業製品の生産ラインなどにおいて、半田ごて2aおよび半田フィーダ2bを用いて、基板3のパッド2dに電線2cを半田付けするための制御(以下、「半田付け制御」という)を行なう。制御システム1は、新たな基板3が搬送されてくるたびに半田付け制御を行ない、当該基板3のパッド2dに電線2cを半田付けする。   The control system 1 according to the present embodiment is, for example, a control for soldering an electric wire 2c to a pad 2d of a substrate 3 using a soldering iron 2a and a solder feeder 2b in an industrial product production line or the like (hereinafter, referred to as a control system) , "Soldering control"). The control system 1 performs soldering control every time a new board 3 is transported, and solders the electric wires 2c to the pads 2d of the board 3.

図1に示すように、制御システム1は、撮像装置21,22と、ロボット30a〜30dと、ロボットコントローラ40a〜40dと、制御装置50と、表示装置60とを備える。   As shown in FIG. 1, the control system 1 includes imaging devices 21 and 22, robots 30a to 30d, robot controllers 40a to 40d, a control device 50, and a display device 60.

撮像装置21,22は、撮像視野に存在する被写体を撮像して画像データ(以下、「実画像」という)を生成する。撮像装置21,22は、ロボット30a〜30dと異なる定位置に設定される。撮像装置21,22は、互いに異なる場所に設置され、互いに異なる方向から、被写体としての半田ごて2a、半田フィーダ2b、電線2cおよびパッド2dを撮像する。撮像装置21,22は、予め定められた撮像周期に従って撮像し、撮像によって得られた実画像を制御装置50に出力する。   The imaging devices 21 and 22 capture an image of a subject present in an imaging field of view and generate image data (hereinafter, referred to as “real images”). The imaging devices 21 and 22 are set at fixed positions different from those of the robots 30a to 30d. The imaging devices 21 and 22 are installed at different locations, and capture images of the soldering iron 2a, the solder feeder 2b, the electric wire 2c, and the pad 2d as subjects from different directions. The imaging devices 21 and 22 perform imaging according to a predetermined imaging cycle, and output a real image obtained by the imaging to the control device 50.

ロボット30aは、半田ごて2aの状態(ここでは位置および姿勢)を変化させるための機構であり、たとえば垂直多関節ロボットである。ロボット30aは、先端に半田ごて2aを支持(ここでは把持)するためのハンド31aを有し、ハンド31aに把持された半田ごて2aの位置および姿勢を6自由度で変化させる。6自由度は、X方向、Y方向およびZ方向の並進自由度と、ピッチ方向、ヨー方向およびロール方向の回転自由度とを含む。   The robot 30a is a mechanism for changing the state (here, position and posture) of the soldering iron 2a, and is, for example, a vertical articulated robot. The robot 30a has a hand 31a at its tip for supporting (holding) the soldering iron 2a, and changes the position and posture of the soldering iron 2a held by the hand 31a with six degrees of freedom. The six degrees of freedom include translational degrees of freedom in the X, Y, and Z directions, and rotational degrees of freedom in the pitch, yaw, and roll directions.

ロボット30bは、半田フィーダ2bの状態(ここでは位置および姿勢)を変化させるための機構であり、たとえば垂直多関節ロボットである。ロボット30bは、先端に半田フィーダ2bを支持(ここでは把持)するためのハンド31bを有し、ハンド31bに把持された半田フィーダ2bの位置および姿勢を6自由度で変化させる。   The robot 30b is a mechanism for changing the state (here, position and orientation) of the solder feeder 2b, and is, for example, a vertical articulated robot. The robot 30b has a hand 31b at its tip for supporting (gripping) the solder feeder 2b, and changes the position and posture of the solder feeder 2b gripped by the hand 31b with six degrees of freedom.

ロボット30cは、電線2cの状態(ここでは位置および姿勢)を変化させるための機構であり、たとえば垂直多関節ロボットである。ロボット30cは、先端に電線2cを支持(ここでは把持)するためのハンド31cを有し、ハンド31cに把持された電線2cの位置および姿勢を6自由度で変化させる。   The robot 30c is a mechanism for changing the state (here, position and posture) of the electric wire 2c, and is, for example, a vertical articulated robot. The robot 30c has a hand 31c at its tip for supporting (gripping) the electric wire 2c, and changes the position and posture of the electric wire 2c held by the hand 31c with six degrees of freedom.

ロボット30dは、基板3のパッド2dの状態(ここでは位置および姿勢)を変化させるための機構であり、たとえばXYθステージである。ロボット30dは、基板3を支持する(ここでは載せる)ためのステージ31dを有し、ステージ31dに載置された基板3のパッド2dの位置および姿勢を3自由度で変化させる。3自由度は、X方向およびY方向の並進自由度と、XY平面に直交する軸を中心とする方向(θ方向)の回転自由度とを含む。   The robot 30d is a mechanism for changing the state (the position and the posture here) of the pad 2d of the substrate 3, and is, for example, an XYθ stage. The robot 30d has a stage 31d for supporting (putting) the substrate 3 here, and changes the position and posture of the pad 2d of the substrate 3 placed on the stage 31d with three degrees of freedom. The three degrees of freedom include a translational degree of freedom in the X and Y directions and a rotational degree of freedom in a direction (θ direction) about an axis orthogonal to the XY plane.

ロボット30a〜30dの各々は、複数のサーボモータを有しており、当該サーボモータが駆動されることにより、支持している対象物の状態を変化させる。当該複数のサーボモータの各々に対応してエンコーダが設けられている、エンコーダは、対応するサーボモータの駆動量(回転量)に応じたパルス信号を発生する。エンコーダが発生するパルス信号は、対応するロボットコントローラに出力されるとともに、制御装置50にも出力される。   Each of the robots 30a to 30d has a plurality of servomotors, and drives the servomotors to change the state of the supported object. An encoder is provided corresponding to each of the plurality of servomotors. The encoder generates a pulse signal corresponding to a driving amount (rotation amount) of the corresponding servomotor. The pulse signal generated by the encoder is output to the corresponding robot controller and also to the control device 50.

ロボットコントローラ40a〜40dは、ロボット30a〜30dにそれぞれ対応して設けられる。ロボットコントローラ40a〜40dは、制御装置50から受けた制御指令に従って、ロボット30a〜30dの動作制御をそれぞれ行なう。   The robot controllers 40a to 40d are provided corresponding to the robots 30a to 30d, respectively. The robot controllers 40a to 40d control the operations of the robots 30a to 30d, respectively, according to control commands received from the control device 50.

ロボットコントローラ40a〜40cの各々は、X方向、Y方向およびZ方向の並進自由度ならびにピッチ方向、ヨー方向およびロール方向の回転自由度の各々の制御指令を制御装置50から受ける。これらX方向、Y方向、Z方向、ピッチ方向、ヨー方向およびロール方向は、対応するロボットの座標系で示される。   Each of the robot controllers 40a to 40c receives, from the control device 50, a control command for each of the translational degrees of freedom in the X, Y, and Z directions and the rotational degrees of freedom in the pitch, yaw, and roll directions. These X direction, Y direction, Z direction, pitch direction, yaw direction, and roll direction are indicated by the corresponding robot coordinate system.

ロボットコントローラ40a〜40cの各々は、対応するハンドのX方向、Y方向およびZ方向の並進移動量がX方向、Y方向およびZ方向の並進自由度の制御指令にそれぞれ近づくように、対応するロボットに対してフィードバック制御を行なう。対応するハンドのX方向、Y方向およびZ方向の並進移動量は、対応するロボットに設けられるエンコーダからのパルス信号に含まれるパルス数をカウントすることにより求められる。   Each of the robot controllers 40a to 40c controls the corresponding robot such that the translation amount of the corresponding hand in the X, Y, and Z directions approaches the control command of the degree of freedom of translation in the X, Y, and Z directions. Feedback control. The translational movement amounts of the corresponding hand in the X, Y, and Z directions can be obtained by counting the number of pulses included in a pulse signal from an encoder provided in the corresponding robot.

ロボットコントローラ40a〜40cの各々は、対応するハンドのピッチ方向、ヨー方向およびロール方向の回転移動量がピッチ方向、ヨー方向およびロール方向の回転自由度の制御指令にそれぞれ近づくように、対応するロボットに対してフィードバック制御を行なう。対応するハンドのピッチ方向、ヨー方向およびロール方向の回転移動量は、対応するロボットに設けられるエンコーダからのパルス信号に含まれるパルス数をカウントすることにより求められる。   Each of the robot controllers 40a to 40c controls the corresponding robot such that the amount of rotational movement of the corresponding hand in the pitch, yaw, and roll directions approaches the control command of the rotational degrees of freedom in the pitch, yaw, and roll directions. Feedback control. The amount of rotational movement of the corresponding hand in the pitch, yaw, and roll directions is obtained by counting the number of pulses included in a pulse signal from an encoder provided in the corresponding robot.

ロボットコントローラ40dは、X方向およびY方向の並進自由度ならびに回転自由度の各々の制御指令を制御装置50から受ける。これらX方向、Y方向および回転方向は、ロボット30dの座標系で示される。   The robot controller 40 d receives from the control device 50 control commands for the degrees of freedom of translation and rotation in the X and Y directions. These X direction, Y direction and rotation direction are indicated by the coordinate system of the robot 30d.

ロボットコントローラ40dは、ステージ31dのX方向およびY方向の並進移動量がX方向およびY方向の並進自由度の制御指令にそれぞれ近づくように、ロボット30dに対してフィードバック制御を行なう。ステージ31dのX方向およびY方向の並進移動量は、ロボット30dに設けられるエンコーダからのパルス信号に含まれるパルス数をカウントすることにより求められる。   The robot controller 40d performs feedback control on the robot 30d such that the translation amounts of the stage 31d in the X and Y directions approach control commands for the degrees of freedom of translation in the X and Y directions, respectively. The translation amounts of the stage 31d in the X and Y directions can be obtained by counting the number of pulses included in a pulse signal from an encoder provided in the robot 30d.

ロボットコントローラ40dは、ステージ31dの回転移動量が回転自由度の制御指令に近づくように、ロボット30dに対してフィードバック制御を行なう。ステージ31dの回転移動量は、ロボット30dに設けられるエンコーダからのパルス信号に含まれるパルス数をカウントすることにより求められる。   The robot controller 40d performs feedback control on the robot 30d such that the rotational movement amount of the stage 31d approaches the control command of the rotational degree of freedom. The rotational movement amount of the stage 31d is obtained by counting the number of pulses included in a pulse signal from an encoder provided in the robot 30d.

制御装置50は、ロボットコントローラ40a〜40dを介して、ロボット30a〜30dをそれぞれ制御する。   The control device 50 controls the robots 30a to 30d via the robot controllers 40a to 40d, respectively.

制御装置50は、半田ごて2a、半田フィーダ2b、電線2cおよびパッド2dの見本を示す、第1基準動画および第2基準動画を記憶している。第1基準動画は、撮像装置21の位置から見たときの動画である。第2基準動画は、撮像装置22の位置から見たときの動画である。   The control device 50 stores a first reference moving image and a second reference moving image showing samples of the soldering iron 2a, the solder feeder 2b, the electric wire 2c, and the pad 2d. The first reference moving image is a moving image when viewed from the position of the imaging device 21. The second reference moving image is a moving image when viewed from the position of the imaging device 22.

制御装置50は、半田付け制御として、視覚サーボを用いたロボット30a〜30dの制御を行なう。制御装置50は、撮像装置21,22によって撮像される実画像上の半田ごて2aの状態の変化が、第1,第2基準動画上の半田ごて2aの状態の変化にそれぞれ近づくように、ロボット30aを制御する。同様に、制御装置50は、撮像装置21,22によって撮像される実画像上の半田フィーダ2bの状態の変化が、第1,第2基準動画上の半田フィーダ2bの状態の変化にそれぞれ近づくように、ロボット30bを制御する。制御装置50は、撮像装置21,22によって撮像される実画像上の電線2cの状態の変化が、第1,第2基準動画上の電線2cの状態の変化にそれぞれ近づくように、ロボット30cを制御する。制御装置50は、撮像装置21,22によって撮像される実画像上のパッド2dの状態の変化が、第1,第2基準動画上のパッド2dの状態の変化にそれぞれ近づくように、ロボット30dを制御する。これにより、半田ごて2a、半田フィーダ2b、電線2cおよびパッド2dの状態は、第1基準動画および第2基準動画に従って連係して変化する。   The control device 50 controls the robots 30a to 30d using a visual servo as soldering control. The control device 50 controls the change of the state of the soldering iron 2a on the real image captured by the imaging devices 21 and 22 so as to approach the change of the state of the soldering iron 2a on the first and second reference moving images, respectively. , The robot 30a. Similarly, the control device 50 controls the change in the state of the solder feeder 2b on the actual image captured by the imaging devices 21 and 22 to approach the change in the state of the solder feeder 2b on the first and second reference moving images, respectively. Next, the robot 30b is controlled. The control device 50 controls the robot 30c so that the change in the state of the electric wire 2c on the real image captured by the imaging devices 21 and 22 approaches the change in the state of the electric wire 2c on the first and second reference moving images, respectively. Control. The control device 50 controls the robot 30d such that the change in the state of the pad 2d on the real image captured by the imaging devices 21 and 22 approaches the change in the state of the pad 2d on the first and second reference moving images, respectively. Control. Thereby, the states of the soldering iron 2a, the solder feeder 2b, the electric wire 2c, and the pad 2d change in accordance with the first reference moving image and the second reference moving image.

さらに、制御装置50は、半田付け制御の終了後に、視覚サーボを用いたロボット30a〜30dの制御が正常に行なわれた否かを判定するための解析画面を表示装置60に表示する解析装置としても動作する。   Further, the control device 50 is an analysis device that displays, on the display device 60, an analysis screen for determining whether the control of the robots 30a to 30d using the visual servo has been normally performed after the soldering control is completed. Also works.

図2は、実施の形態における解析画面の概要を示す図である。制御装置50は、撮像装置21によって撮像された実画像から抽出される特徴量の時間変化を示す実波形621と、第1基準動画のフレームから抽出される特徴量の時間変化を示す基準波形622との両方を解析画面61上に表示させる。もしくは、制御装置50は、撮像装置22によって撮像された実画像から抽出される特徴量の時間変化を示す実波形621と、第2基準動画のフレームから抽出される特徴量の時間変化を示す基準波形622との両方を解析画面61上に表示させる。実波形621および基準波形622は、解析画面61の領域601,602にそれぞれ表示される。   FIG. 2 is a diagram illustrating an outline of an analysis screen according to the embodiment. The control device 50 includes a real waveform 621 indicating a temporal change of a feature value extracted from an actual image captured by the imaging device 21 and a reference waveform 622 indicating a temporal change of a feature value extracted from a frame of the first reference moving image. Are displayed on the analysis screen 61. Alternatively, the control device 50 may include a real waveform 621 indicating a temporal change of a feature value extracted from an actual image captured by the image capturing device 22 and a reference indicating a temporal change of a feature value extracted from a frame of the second reference moving image. Both the waveform 622 and the waveform 622 are displayed on the analysis screen 61. The actual waveform 621 and the reference waveform 622 are displayed in regions 601 and 602 of the analysis screen 61, respectively.

特徴量は、たとえば、対象物(半田ごて2a、半田フィーダ2b、電線2cまたはパッド2d)の画像上の座標(画素座標)である。   The feature amount is, for example, coordinates (pixel coordinates) on the image of the object (the soldering iron 2a, the solder feeder 2b, the electric wire 2c, or the pad 2d).

視覚サーボを用いたロボット30a〜30dの制御が正常に実行されている場合、撮像装置21,22によって撮像される実画像上の対象物の状態の変化は、第1,第2基準動画上の対象物の状態の変化にそれぞれ追従する。そのため、実波形621は、基準波形622に近似する。したがって、作業者は、解析画面61に表示される実波形621と基準波形622とを確認することにより、視覚サーボを用いたロボット30a〜30dの制御が正常に実行されている否かを判定しやすくなる。たとえば、作業者は、実波形621と基準波形622との偏差が大きい場合に、視覚サーボを用いたロボット30a〜30dの制御に何等かの異常が生じていると判定できる。   When the control of the robots 30a to 30d using the visual servo is normally performed, the change in the state of the target on the real image captured by the imaging devices 21 and 22 is caused by the change in the state of the first and second reference moving images. It follows each change in the state of the object. Therefore, the actual waveform 621 approximates the reference waveform 622. Therefore, the operator checks the actual waveform 621 and the reference waveform 622 displayed on the analysis screen 61 to determine whether or not the control of the robots 30a to 30d using the visual servo is normally performed. It will be easier. For example, when the deviation between the actual waveform 621 and the reference waveform 622 is large, the operator can determine that some abnormality has occurred in the control of the robots 30a to 30d using the visual servo.

<B.具体例>
次に、実施の形態に係る制御システムの具体例について説明する。
<B. Specific example>
Next, a specific example of the control system according to the embodiment will be described.

<B−1.制御装置のハードウェア構成>
図3は、実施の形態に係る制御システムを構成する制御装置のハードウェア構成を示す模式図である。図3に示されるように、制御装置50は、コンピュータアーキテクチャに従う構造を有しており、予めインストールされたプログラムをプロセッサが実行することで、後述するような各種の処理を実現する。
<B-1. Hardware configuration of control device>
FIG. 3 is a schematic diagram illustrating a hardware configuration of a control device included in the control system according to the embodiment. As shown in FIG. 3, the control device 50 has a structure according to a computer architecture, and executes various programs described later by executing a program installed in advance by a processor.

より具体的には、制御装置50は、CPU(Central Processing Unit)やMPU(Micro-Processing Unit)などのプロセッサ510と、RAM(Random Access Memory)512と、表示コントローラ514と、システムコントローラ516と、I/O(Input Output)コントローラ518と、ハードディスク520と、カメラインターフェイス522と、入力インターフェイス524と、ロボットコントローラインターフェイス526と、通信インターフェイス528と、メモリカードインターフェイス530とを含む。これらの各部は、システムコントローラ516を中心として、互いにデータ通信可能に接続される。   More specifically, the control device 50 includes a processor 510 such as a central processing unit (CPU) or a micro-processing unit (MPU), a random access memory (RAM) 512, a display controller 514, a system controller 516, It includes an I / O (Input Output) controller 518, a hard disk 520, a camera interface 522, an input interface 524, a robot controller interface 526, a communication interface 528, and a memory card interface 530. These units are connected to each other so as to enable data communication with the system controller 516 as the center.

プロセッサ510は、システムコントローラ516との間でプログラム(コード)などを交換して、これらを所定順序で実行することで、目的の演算処理を実現する。   The processor 510 exchanges programs (codes) and the like with the system controller 516, and executes the programs (codes) and the like in a predetermined order, thereby realizing the intended arithmetic processing.

システムコントローラ516は、プロセッサ510、RAM512、表示コントローラ514、およびI/Oコントローラ518とそれぞれバスを介して接続されており、各部との間でデータ交換などを行うとともに、制御装置50全体の処理を司る。   The system controller 516 is connected to the processor 510, the RAM 512, the display controller 514, and the I / O controller 518 via buses, respectively, exchanges data with each unit, and performs processing of the entire control device 50. Govern.

RAM512は、典型的には、DRAM(Dynamic Random Access Memory)などの揮発性の記憶装置であり、ハードディスク520から読み出されたプログラムや、撮像装置21,22によって取得された画像(画像データ)、画像に対する処理結果、およびワークデータなどを保持する。   The RAM 512 is typically a volatile storage device such as a DRAM (Dynamic Random Access Memory), and includes programs read from the hard disk 520, images (image data) acquired by the imaging devices 21 and 22, The processing result for the image, work data, and the like are stored.

表示コントローラ514は、表示装置60と接続されており、システムコントローラ516からの内部コマンドに従って、各種の情報を表示するための信号を表示装置60へ出力する。   The display controller 514 is connected to the display device 60, and outputs a signal for displaying various information to the display device 60 according to an internal command from the system controller 516.

I/Oコントローラ518は、制御装置50に接続される記録媒体や外部機器との間のデータ交換を制御する。より具体的には、I/Oコントローラ518は、ハードディスク520と、カメラインターフェイス522と、入力インターフェイス524と、ロボットコントローラインターフェイス526と、通信インターフェイス528と、メモリカードインターフェイス530と接続される。   The I / O controller 518 controls data exchange between a recording medium connected to the control device 50 and an external device. More specifically, the I / O controller 518 is connected to the hard disk 520, the camera interface 522, the input interface 524, the robot controller interface 526, the communication interface 528, and the memory card interface 530.

ハードディスク520は、典型的には、不揮発性の磁気記憶装置であり、プロセッサ510で実行される制御プログラム550に加えて、各種情報が格納される。このハードディスク520にインストールされる制御プログラム550は、メモリカード536などに格納された状態で流通する。なお、ハードディスク520に代えて、フラッシュメモリなどの半導体記憶装置やDVD−RAM(Digital Versatile Disk Random Access Memory)などの光学記憶装置を採用してもよい。   The hard disk 520 is typically a nonvolatile magnetic storage device, and stores various information in addition to the control program 550 executed by the processor 510. The control program 550 installed on the hard disk 520 is distributed while being stored in a memory card 536 or the like. Instead of the hard disk 520, a semiconductor storage device such as a flash memory or an optical storage device such as a DVD-RAM (Digital Versatile Disk Random Access Memory) may be adopted.

カメラインターフェイス522は、撮像装置21,22から画像データを受付ける入力部に相当し、プロセッサ510と撮像装置21,22との間のデータ伝送を仲介する。カメラインターフェイス522は、撮像装置21,22からの画像データをそれぞれ一時的に蓄積するための画像バッファ522a,522bを含む。複数の撮像装置に対して、共有できる単一の画像バッファを設けてもよいが、処理高速化のため、それぞれの撮像装置に対応付けて独立に複数配置することが好ましい。   The camera interface 522 corresponds to an input unit that receives image data from the imaging devices 21 and 22, and mediates data transmission between the processor 510 and the imaging devices 21 and 22. The camera interface 522 includes image buffers 522a and 522b for temporarily storing image data from the imaging devices 21 and 22, respectively. Although a single image buffer that can be shared may be provided for a plurality of imaging devices, it is preferable to independently arrange a plurality of image buffers in association with each imaging device in order to speed up processing.

入力インターフェイス524は、プロセッサ510とキーボード、マウス、タッチパネル、専用コンソールなどの入力装置534との間のデータ伝送を仲介する。   The input interface 524 mediates data transmission between the processor 510 and an input device 534 such as a keyboard, a mouse, a touch panel, and a dedicated console.

ロボットコントローラインターフェイス526は、プロセッサ510とロボットコントローラ40a,40bとの間のデータ伝送を仲介する。   The robot controller interface 526 mediates data transmission between the processor 510 and the robot controllers 40a, 40b.

通信インターフェイス528は、プロセッサ510と図示しない他のパーソナルコンピュータやサーバ装置などとの間のデータ伝送を仲介する。通信インターフェイス528は、典型的には、イーサネット(登録商標)やUSB(Universal Serial Bus)などからなる。   The communication interface 528 mediates data transmission between the processor 510 and another personal computer or server device (not shown). The communication interface 528 is typically made of Ethernet (registered trademark), USB (Universal Serial Bus), or the like.

メモリカードインターフェイス530は、プロセッサ510と記録媒体であるメモリカード536との間のデータ伝送を仲介する。メモリカード536には、制御装置50で実行される制御プログラム550などが格納された状態で流通し、メモリカードインターフェイス530は、このメモリカード536から制御プログラム550を読み出す。メモリカード536は、SD(Secure Digital)などの汎用的な半導体記憶デバイスや、フレキシブルディスク(Flexible Disk)などの磁気記録媒体や、CD−ROM(Compact Disk-Read Only Memory)などの光学記録媒体等からなる。あるいは、通信インターフェイス528を介して、配信サーバなどからダウンロードしたプログラムを制御装置50にインストールしてもよい。   The memory card interface 530 mediates data transmission between the processor 510 and a memory card 536 as a recording medium. The memory card 536 circulates in a state where a control program 550 executed by the control device 50 and the like are stored, and the memory card interface 530 reads the control program 550 from the memory card 536. The memory card 536 includes a general-purpose semiconductor storage device such as SD (Secure Digital), a magnetic recording medium such as a flexible disk, an optical recording medium such as a CD-ROM (Compact Disk-Read Only Memory), and the like. Consists of Alternatively, a program downloaded from a distribution server or the like may be installed in the control device 50 via the communication interface 528.

上述のような汎用的なコンピュータアーキテクチャに従う構造を有するコンピュータを利用する場合には、本実施の形態に係る機能を提供するためのアプリケーションに加えて、コンピュータの基本的な機能を提供するためのOS(Operating System)がインストールされていてもよい。この場合には、本実施の形態に係る制御プログラムは、OSの一部として提供されるプログラムモジュールのうち、必要なモジュールを所定の順序および/またはタイミングで呼び出して処理を実行するものであってもよい。   When using a computer having a structure according to the general-purpose computer architecture as described above, an OS for providing basic functions of the computer in addition to an application for providing functions according to the present embodiment (Operating System) may be installed. In this case, the control program according to the present embodiment executes processing by calling necessary modules in a predetermined order and / or timing among program modules provided as a part of the OS. Is also good.

さらに、本実施の形態に係る制御プログラムは、他のプログラムの一部に組み込まれて提供されるものであってもよい。その場合にも、プログラム自体には、上記のような組み合わせられる他のプログラムに含まれるモジュールを含んでおらず、当該他のプログラムと協働して処理が実行される。すなわち、本実施の形態に係る制御プログラムとしては、このような他のプログラムに組み込まれた形態であってもよい。   Further, the control program according to the present embodiment may be provided by being incorporated in a part of another program. Even in such a case, the program itself does not include a module included in another program to be combined as described above, and the process is executed in cooperation with the other program. That is, the control program according to the present embodiment may be a form incorporated in such another program.

なお、代替的に、制御プログラムの実行により提供される機能の一部もしくは全部を専用のハードウェア回路として実装してもよい。   Alternatively, part or all of the functions provided by executing the control program may be implemented as a dedicated hardware circuit.

<B−2.制御装置の機能構成>
図4は、実施の形態に係る制御装置の機能構成を示すブロック図である。図4に示されるように、制御装置50は、基準動画記憶部51と、実画像取得部56と、実動画記憶部57と、ロボット制御部58と、解析部59とを備える。
<B-2. Functional configuration of control device>
FIG. 4 is a block diagram illustrating a functional configuration of the control device according to the embodiment. As shown in FIG. 4, the control device 50 includes a reference moving image storage unit 51, a real image acquisition unit 56, a real moving image storage unit 57, a robot control unit 58, and an analysis unit 59.

<B−2−1.基準動画記憶部>
基準動画記憶部51は、図3に示すハードディスク520およびRAM512によって構成され、第1基準動画と第2基準動画とを記憶する。第1基準動画および第2基準動画は、半田ごて2aおよび半田フィーダ2bを用いて、パッド2dに電線2cを半田付けする様子を示す。第1基準動画および第2基準動画は、ロボット30a〜30dによって対象物(半田ごて2a、半田フィーダ2b、電線2cおよびパッド2d)のサンプルの状態を変化させる様子を撮像することにより作成される。もしくは、第1基準動画および第2基準動画は、作業者の手によって対象物のサンプルの状態を変化させる様子を撮像することにより作成されてもよい。
<B-2-1. Reference video storage unit>
The reference moving image storage unit 51 includes the hard disk 520 and the RAM 512 shown in FIG. 3, and stores the first reference moving image and the second reference moving image. The first reference moving image and the second reference moving image show how the electric wire 2c is soldered to the pad 2d using the soldering iron 2a and the solder feeder 2b. The first reference moving image and the second reference moving image are created by capturing an image of the robot 30a to 30d changing the state of the sample of the object (the soldering iron 2a, the solder feeder 2b, the electric wire 2c, and the pad 2d). . Alternatively, the first reference moving image and the second reference moving image may be created by imaging a state in which the state of the sample of the target object is changed by an operator's hand.

第1基準動画および第2基準動画の各々は、時系列に並んだ複数(以下、M枚(Mは、2以上の整数)とする)のフレームを含む。第1基準動画のk番目(kは1〜Mのいずれかの整数)のフレームと第2基準動画のk番目のフレームとは、ある状態の半田ごて2a、半田フィーダ2b、電線2cおよびパッド2dを同時に異なる方向から見たときの画像である。   Each of the first reference moving image and the second reference moving image includes a plurality of frames (hereinafter, referred to as M (M is an integer of 2 or more)) arranged in chronological order. The k-th frame (k is an integer from 1 to M) of the first reference moving image and the k-th frame of the second reference moving image are a certain state of the soldering iron 2a, the solder feeder 2b, the electric wire 2c, and the pad. It is an image when 2d is viewed simultaneously from different directions.

図5は、基準動画(第1基準動画または第2基準動画)の一例を示す図である。図5には、基準動画のフレーム71〜77が示されている。   FIG. 5 is a diagram illustrating an example of a reference moving image (a first reference moving image or a second reference moving image). FIG. 5 shows frames 71 to 77 of the reference moving image.

フレーム71は、パッド2dの状態が所望の状態に到達したときのフレームである。フレーム72は、電線2cがパッド2dの上に到達したときのフレームである。フレーム73は、半田ごて2aの先端がパッド2dに接触したときのフレームである。フレーム74は、半田フィーダ2bの先端が半田ごて2aの先端に接触したときのフレームである。フレーム75は、半田フィーダ2bから供給され溶融した半田(以下、「溶融半田2e」という)が所望のサイズになったときのフレームである。フレーム76は、半田フィーダ2bを半田ごて2aから遠ざけたときのフレームである。フレーム77は、半田ごて2aをパッド2dから遠ざけたときのフレームである。このような一連の動作により、パッド2dに電線2cが半田付けされる。   The frame 71 is a frame when the state of the pad 2d reaches a desired state. The frame 72 is a frame when the electric wire 2c reaches the pad 2d. The frame 73 is a frame when the tip of the soldering iron 2a contacts the pad 2d. The frame 74 is a frame when the tip of the solder feeder 2b contacts the tip of the soldering iron 2a. The frame 75 is a frame when the solder supplied from the solder feeder 2b and melted (hereinafter, referred to as “molten solder 2e”) has a desired size. The frame 76 is a frame when the solder feeder 2b is moved away from the soldering iron 2a. The frame 77 is a frame when the soldering iron 2a is moved away from the pad 2d. By such a series of operations, the electric wire 2c is soldered to the pad 2d.

図4に示されるように、基準動画記憶部51は、第1基準動画の各フレームと当該フレームから抽出された特徴量とを対応付ける第1テーブルと、第2基準動画の各フレームと当該フレームから抽出された特徴量とを対応付ける第2テーブルとをさらに記憶する。特徴量は、たとえば、対象物ごとの重心の画像上の座標(画素座標)である。   As shown in FIG. 4, the reference moving image storage unit 51 stores a first table that associates each frame of the first reference moving image with a feature amount extracted from the frame, and a first table that associates each frame of the second reference moving image with the corresponding frame. And a second table that associates the extracted feature amount with the extracted feature amount. The feature amount is, for example, coordinates (pixel coordinates) on the image of the center of gravity of each object.

図6は、実施の形態に係る基準動画記憶部が記憶する第1テーブルの一例を示す図である。図6に示す例の第1テーブルでは、各フレームについて、フレーム番号と、当該フレームの画像ファイル名と、当該フレームの時刻と、複数種類の特徴量とが対応付けられている。第2テーブルも図6に示す第1テーブルと同様のデータ構造を有する。   FIG. 6 is a diagram illustrating an example of a first table stored in the reference moving image storage unit according to the embodiment. In the first table of the example shown in FIG. 6, for each frame, a frame number, an image file name of the frame, a time of the frame, and a plurality of types of feature amounts are associated with each other. The second table also has the same data structure as the first table shown in FIG.

なお、第1テーブルおよび第2テーブルに含まれる特徴量は、後述する画像処理部53によって算出される。   The feature amounts included in the first table and the second table are calculated by an image processing unit 53 described later.

<B−2−2.実画像取得部>
実画像取得部56は、撮像装置21,22から実画像を撮像周期ごとに取得する。さらに、実画像取得部56は、1回の半田付け制御中に撮像装置21から取得した実画像を時系列に並べた第1実動画を生成するととともに、当該半田付け制御中に撮像装置22から取得した実画像を時系列に並べた第2実動画を生成する。実画像取得部56は、生成した第1実動画および第2実動画を実動画記憶部57に格納する。
<B-2-2. Actual Image Acquisition Unit>
The real image acquisition unit 56 acquires a real image from the imaging devices 21 and 22 for each imaging cycle. Further, the real image obtaining unit 56 generates a first real moving image in which real images obtained from the imaging device 21 are arranged in a time series during one soldering control, and generates a first real moving image from the imaging device 22 during the soldering control. A second real moving image in which the obtained real images are arranged in time series is generated. The real image acquisition unit 56 stores the generated first real moving image and the second real moving image in the real moving image storage unit 57.

実画像取得部56の一部は、カメラインターフェイス522によって構成される。実画像取得部56の一部は、図3に示すプロセッサ510が制御プログラム550を実行することにより実現される。   A part of the real image acquisition unit 56 is configured by the camera interface 522. A part of the actual image acquisition unit 56 is realized by the processor 510 illustrated in FIG.

<B−2−3.実動画記憶部>
実動画記憶部57は、図3に示すハードディスク520およびRAM512によって構成され、半田付け制御ごとに第1実動画および第2実動画を記憶する。上述したように、第1実動画および第2実動画は、実画像取得部56により生成される。
<B-2-3. Real movie storage unit>
The real moving image storage unit 57 includes the hard disk 520 and the RAM 512 shown in FIG. 3, and stores the first real moving image and the second real moving image for each soldering control. As described above, the first real moving image and the second real moving image are generated by the real image acquiring unit 56.

さらに、実動画記憶部57は、第1実動画を構成する複数の実画像の各々と当該実画像から抽出された特徴量とを対応付ける第3テーブルと、第2実動画を構成する複数の実画像の各々と当該実画像から抽出された特徴量とを対応付ける第4テーブルとを記憶する。特徴量は、対象物ごとの重心の画像上の座標(画素座標)である。   Further, the real moving image storage unit 57 includes a third table for associating each of the plurality of real images forming the first real moving image with the feature amounts extracted from the real image, and a plurality of real images forming the second real moving image. A fourth table for associating each of the images with a feature amount extracted from the actual image is stored. The feature amount is the coordinates (pixel coordinates) on the image of the center of gravity of each object.

図7は、実施の形態に係る実動画記憶部が記憶する第3テーブルの一例を示す図である。図7に示す例の第3テーブルでは、実画像を識別する画像ファイル名と、当該実画像の撮像時刻と、当該実画像から抽出された複数種類の特徴量とが対応付けられている。第4テーブルも図7に示す第3テーブルと同様のデータ構造を有する。   FIG. 7 is a diagram illustrating an example of a third table stored in the actual moving image storage unit according to the embodiment. In the third table of the example shown in FIG. 7, the image file name for identifying the real image, the imaging time of the real image, and a plurality of types of feature amounts extracted from the real image are associated with each other. The fourth table also has the same data structure as the third table shown in FIG.

なお、基準動画記憶部51が記憶する第1,第2テーブルに含まれる特徴量と、実動画記憶部57が記憶する第3,第4テーブルに含まれる特徴量とは同一の種類である。第3テーブルおよび第4テーブルに含まれる特徴量は、後述する画像処理部53によって算出される。   Note that the feature amounts included in the first and second tables stored in the reference moving image storage unit 51 and the feature amounts included in the third and fourth tables stored in the actual moving image storage unit 57 are the same type. The feature amounts included in the third table and the fourth table are calculated by an image processing unit 53 described later.

実動画記憶部57は、半田付け制御ごとに第3テーブルおよび第4テーブルを記憶する。1回の半田付け制御において、パッド2dに電線2cが半田付けされる。そのため、実動画記憶部57は、パッド2dを識別するパッド識別番号と、第1実動画、第2実動画、第3テーブルおよび第4デーブルとを対応付けて記憶する。図7には、パッド識別番号「000001」に対応する第3テーブルが示されている。   The actual moving image storage unit 57 stores a third table and a fourth table for each soldering control. In one soldering control, the electric wire 2c is soldered to the pad 2d. Therefore, the real moving image storage unit 57 stores the pad identification number for identifying the pad 2d in association with the first real moving image, the second real moving image, the third table, and the fourth table. FIG. 7 shows a third table corresponding to the pad identification number “000001”.

<B−2−4.ロボット制御部>
ロボット制御部58は、視覚サーボを用いてロボット30a〜30dを制御する。ロボット制御部58は、教示範囲選択部52と、画像処理部53と、目標フレーム選択部54と、第1制御部55aと、第2制御部55bと、第3制御部55cと、第4制御部55dとを備える。教示範囲選択部52と画像処理部53と目標フレーム選択部54とは、図3に示すプロセッサ510が制御プログラム550を実行することにより実現される。
<B-2-4. Robot controller>
The robot control unit 58 controls the robots 30a to 30d using a visual servo. The robot control unit 58 includes a teaching range selection unit 52, an image processing unit 53, a target frame selection unit 54, a first control unit 55a, a second control unit 55b, a third control unit 55c, and a fourth control unit. 55d. The teaching range selection unit 52, the image processing unit 53, and the target frame selection unit 54 are realized by the processor 510 shown in FIG.

<B−2−5.教示範囲選択部>
教示範囲選択部52は、対象物ごとに、第1基準動画および第2基準動画から当該対象物の見本となる教示範囲を選択する。対象物は、半田ごて2a、半田フィーダ2b、電線2cおよびパッド2dのいずれかである。
<B-2-5. Teaching range selector>
The teaching range selection unit 52 selects, for each target object, a teaching range serving as a sample of the target object from the first reference moving image and the second reference moving image. The object is any of the soldering iron 2a, the solder feeder 2b, the electric wire 2c, and the pad 2d.

教示範囲選択部52は、教示範囲の選択指示を促す画面を表示装置60に表示する。作業者は、第1基準動画および第2基準動画の各フレームを確認し、入力装置534(図3参照)を操作して、対象物が所望の動作をしている一連のフレーム群の先頭フレームと最終フレームとを指定する。教示範囲選択部52、指示された先頭フレームから最終フレームまでを教示範囲として選択する。   The teaching range selection unit 52 displays a screen prompting the user to select a teaching range on the display device 60. The operator confirms each frame of the first reference moving image and the second reference moving image, and operates the input device 534 (see FIG. 3) to start the first frame of a series of frames in which the object is performing a desired operation. And the last frame. The teaching range selection unit 52 selects a designated frame from the first frame to the last frame as the teaching range.

たとえば、図5に示される基準動画に対して、教示範囲選択部52は、全てのフレーム(すなわち、1番目のフレームからM番目のフレーム)を半田ごて2aおよび半田フィーダ2bの教示範囲として選択する。教示範囲選択部52は、1番目のフレームから電線2cの一部が欠け始めるフレーム(フレーム75より少し前のフレーム)までを電線2cの教示範囲として選択する。教示範囲選択部52は、1番目のフレームからパッド2dの一部が欠け始めるフレーム(フレーム72より少し前のフレーム)までをパッド2dの教示範囲として選択する。   For example, for the reference moving image shown in FIG. 5, the teaching range selection unit 52 selects all the frames (that is, the first to Mth frames) as the teaching ranges of the soldering iron 2a and the solder feeder 2b. I do. The teaching range selection unit 52 selects a frame from the first frame to a frame where a part of the electric wire 2c starts to be cut off (a frame slightly before the frame 75) as a teaching range of the electric wire 2c. The teaching range selection unit 52 selects, as the teaching range of the pad 2d, a range from the first frame to a frame (a frame slightly earlier than the frame 72) in which a part of the pad 2d starts to be lost.

<B−2−6.画像処理部>
画像処理部53は、対象画像に対して画像処理を行ない、テンプレートマッチングを用いて、対象画像中から対象物を検出する。テンプレートマッチングの基本処理は、対象物の画像特徴を表すデータであるテンプレートを予め用意しておき、対象画像とテンプレートとの間の画像特徴の一致度を評価することで、対象画像中の対象物の位置や姿勢、形状、サイズを検出する処理である。
<B-2-6. Image processing section>
The image processing unit 53 performs image processing on the target image, and detects an object from the target image using template matching. In the basic processing of template matching, a template which is data representing the image feature of the target object is prepared in advance, and the degree of matching of the image feature between the target image and the template is evaluated. This is a process for detecting the position, posture, shape, and size of the image.

画像処理部53が画像処理を行なう対象画像は、第1基準動画のフレーム、第2基準動画のフレーム、および撮像装置21,22によって撮像された実画像である。   The target images on which the image processing unit 53 performs the image processing are the frames of the first reference moving image, the frames of the second reference moving image, and the real images captured by the imaging devices 21 and 22.

画像処理部53は、事前準備として、対象物ごとに第1テンプレートおよび第2テンプレートを作成する。対象物は、半田ごて2a、半田フィーダ2b、電線2c、パッド2dおよび溶融半田2eのいずれかである。第1テンプレートは、第1基準動画から選択されたフレームに基づいて作成される。第2テンプレートは、第2基準動画から選択されたフレームに基づいて作成される。   The image processing unit 53 creates a first template and a second template for each object as advance preparation. The object is any of the soldering iron 2a, the solder feeder 2b, the electric wire 2c, the pad 2d, and the molten solder 2e. The first template is created based on a frame selected from the first reference moving image. The second template is created based on a frame selected from the second reference moving image.

図8は、第1テンプレートの作成方法の一例を示す図である。図8に示されるように、画像処理部53は、第1基準動画から作業者によって選択されたフレームを表示装置60に表示させる。作業者は、対象物の全体が示されるフレームを選択すればよい。   FIG. 8 is a diagram illustrating an example of a method for creating the first template. As illustrated in FIG. 8, the image processing unit 53 causes the display device 60 to display a frame selected by the operator from the first reference moving image. The operator may select a frame in which the entire object is shown.

画像処理部53は、表示装置60に表示されたフレーム上において、対象物の領域指定を受け付ける。図8に示す例において、作業者は、入力装置534(図3参照)を操作して、半田ごて2aを取り囲む線4aと、半田フィーダ2bを取り囲む線4bと、電線2cを取り囲む線4cと、パッド2dを取り囲む線4dとを入力する。画像処理部53は、線4a〜4dで囲まれた領域を、半田ごて2a、半田フィーダ2b、電線2cおよびパッド2dの画像領域としてそれぞれ特定する。   The image processing unit 53 receives an area designation of the target object on the frame displayed on the display device 60. In the example shown in FIG. 8, the operator operates the input device 534 (see FIG. 3) to change the line 4a surrounding the soldering iron 2a, the line 4b surrounding the solder feeder 2b, and the line 4c surrounding the electric wire 2c. , A line 4d surrounding the pad 2d. The image processing unit 53 specifies an area surrounded by the lines 4a to 4d as image areas of the soldering iron 2a, the solder feeder 2b, the electric wire 2c, and the pad 2d.

画像処理部53は、線4aで囲まれた画像領域の画像特徴を表すデータを半田ごて2aの第1テンプレートとして作成する。同様に、画像処理部53は、線4bで囲まれた画像領域の画像特徴を表すデータを半田フィーダ2bの第1テンプレートとして作成する。画像処理部53は、線4cで囲まれた画像領域の画像特徴を表すデータを電線2cの第1テンプレートとして作成する。画像処理部53は、線4dで囲まれた画像領域の画像特徴を表すデータをパッド2dの第1テンプレートとして作成する。画像処理部53は、同様の方法により、溶融半田2eの第1テンプレートを作成する。   The image processing unit 53 creates data representing the image characteristics of the image area surrounded by the line 4a as the first template of the soldering iron 2a. Similarly, the image processing unit 53 creates data representing the image characteristics of the image area surrounded by the line 4b as the first template of the solder feeder 2b. The image processing unit 53 creates data representing the image characteristics of the image area surrounded by the line 4c as the first template of the electric wire 2c. The image processing unit 53 creates data representing the image characteristics of the image area surrounded by the line 4d as the first template of the pad 2d. The image processing unit 53 creates a first template of the molten solder 2e by the same method.

同様の方法により、画像処理部53は、第2基準動画から選択されたフレームを表示装置60に表示させ、対象物ごとの第2テンプレートを作成する。   In a similar manner, the image processing unit 53 causes the display device 60 to display the frame selected from the second reference moving image, and creates a second template for each object.

画像処理部53は、対象物ごとの第1テンプレートを用いてテンプレートマッチングを行なうことにより、第1基準動画のフレームまたは撮像装置21によって撮像される実画像から対象物を検出する。   The image processing unit 53 detects the target from the frame of the first reference moving image or the actual image captured by the imaging device 21 by performing template matching using the first template for each target.

画像処理部53は、対象物ごとの第2テンプレートを用いてテンプレートマッチングを行なうことにより、第2基準動画のフレームまたは撮像装置22によって撮像される実画像から対象物を検出する。   The image processing unit 53 detects the target from the frame of the second reference moving image or the actual image captured by the imaging device 22 by performing template matching using the second template for each target.

画像処理部53は、対象物ごとに、対象画像から検出した当該対象物の各特徴点の画像上の座標を出力する。   The image processing unit 53 outputs, for each target, coordinates on the image of each feature point of the target detected from the target image.

さらに、画像処理部53は、撮像装置21,22によって撮像される実画像と、第1基準動画および第2基準動画の各フレームとから特徴量を抽出する。特徴量は、対象物ごとの重心の画像上の座標(画素座標)である。   Further, the image processing unit 53 extracts a feature amount from the actual image captured by the imaging devices 21 and 22 and each frame of the first reference moving image and the second reference moving image. The feature amount is the coordinates (pixel coordinates) on the image of the center of gravity of each object.

基準動画記憶部51が記憶する第1テーブルは、第1基準動画の各フレームから抽出された特徴量を含む。基準動画記憶部51が記憶する第2テーブルは、第2基準動画の各フレームから抽出された特徴量を含む。実動画記憶部57が記憶する第3テーブルは、撮像装置21によって撮像された実画像から抽出された特徴量を含む。実動画記憶部57が記憶する第4テーブルは、撮像装置22によって撮像された実画像から抽出された特徴量を含む。   The first table stored in the reference moving image storage unit 51 includes a feature amount extracted from each frame of the first reference moving image. The second table stored in the reference moving image storage unit 51 includes feature amounts extracted from each frame of the second reference moving image. The third table stored in the real moving image storage unit 57 includes the feature amount extracted from the real image captured by the imaging device 21. The fourth table stored in the actual moving image storage unit 57 includes feature amounts extracted from the actual image captured by the imaging device 22.

<B−2−7.目標フレーム選択部>
目標フレーム選択部54は、第1基準動画および第2基準動画から目標フレームを選択する。ただし、目標フレーム選択部54は、第1基準動画のk番目のフレームを目標フレームとして選択した場合、第2基準動画のk番目のフレームを目標フレームとして選択する。目標フレームの選択方法の具体例については後述する。
<B-2-7. Target frame selection section>
The target frame selection unit 54 selects a target frame from the first reference moving image and the second reference moving image. However, when the k-th frame of the first reference moving image is selected as the target frame, the target frame selecting unit 54 selects the k-th frame of the second reference moving image as the target frame. A specific example of the target frame selection method will be described later.

<B−2−8.第1〜第4制御部>
第1制御部55aは、ロボットコントローラ40aを介してロボット30aを制御し、半田ごて2aの状態を変化させる。第2制御部55bは、ロボットコントローラ40bを介してロボット30bを制御し、半田フィーダ2bの状態を変化させる。第3制御部55cは、ロボットコントローラ40cを介してロボット30cを制御し、電線2cの状態を変化させる。第4制御部55dは、ロボットコントローラ40dを介してロボット30dを制御し、パッド2dの状態を変化させる。
<B-2-8. First to fourth control units>
The first control unit 55a controls the robot 30a via the robot controller 40a and changes the state of the soldering iron 2a. The second control unit 55b controls the robot 30b via the robot controller 40b to change the state of the solder feeder 2b. The third control unit 55c controls the robot 30c via the robot controller 40c to change the state of the electric wire 2c. The fourth control unit 55d controls the robot 30d via the robot controller 40d to change the state of the pad 2d.

図9は、第1〜第4制御部の機能構成を示すブロック図である。図9に示されるように、第1制御部55a、第2制御部55b、第3制御部55cおよび第4制御部55dの各々は、変化情報生成部551と、変化情報記憶部552と、算出部553と、指令部554と、終了判定部555とを備える。変化情報記憶部552は、図3に示すハードディスク520およびRAM512によって構成される。変化情報生成部551と、算出部553と、指令部554と、終了判定部555とは、図3に示すプロセッサ510が制御プログラム550を実行することにより実現される。   FIG. 9 is a block diagram illustrating a functional configuration of the first to fourth control units. As shown in FIG. 9, each of the first control unit 55a, the second control unit 55b, the third control unit 55c, and the fourth control unit 55d includes a change information generation unit 551, a change information storage unit 552, A unit 553, a command unit 554, and an end determination unit 555. The change information storage unit 552 includes the hard disk 520 and the RAM 512 shown in FIG. The change information generation unit 551, the calculation unit 553, the command unit 554, and the end determination unit 555 are realized by the processor 510 illustrated in FIG.

<B−2−9.変化情報生成部>
変化情報生成部551は、複数の自由度の各々に対して、対象ロボットの制御量と、撮像装置21によって撮像された実画像上の対象物の状態の変化量との関係を示す第1変化情報を生成する。変化情報生成部551は、複数の自由度に対してそれぞれ生成した複数の第1変化情報からなる第1変化情報セット5521を変化情報記憶部552に格納する。
<B-2-9. Change information generator>
The change information generation unit 551 performs a first change indicating a relationship between the control amount of the target robot and the change amount of the state of the target object on the real image captured by the imaging device 21 for each of the plurality of degrees of freedom. Generate information. The change information generation unit 551 stores, in the change information storage unit 552, a first change information set 5521 including a plurality of first change information generated for a plurality of degrees of freedom.

さらに、変化情報生成部551は、複数の自由度の各々に対して、対象ロボットの制御量と、撮像装置22によって撮像された実画像上の対象物の状態の変化量との関係を示す第2変化情報を生成する。変化情報生成部551は、複数の自由度に対してそれぞれ生成した複数の第2変化情報からなる第2変化情報セット5522を変化情報記憶部552に格納する。   Further, the change information generation unit 551 shows a relationship between the control amount of the target robot and the change amount of the state of the target object on the real image captured by the imaging device 22 for each of the plurality of degrees of freedom. 2 Change information is generated. The change information generation unit 551 stores, in the change information storage unit 552, a second change information set 5522 including a plurality of pieces of second change information generated for a plurality of degrees of freedom.

対象物は、第1制御部55aでは半田ごて2aであり、第2制御部55bでは半田フィーダであり、第3制御部55cでは電線2cであり、第4制御部55dではパッド2dである。対象ロボットは、第1制御部55aではロボット30aであり、第2制御部55bではロボット30bであり、第3制御部55cではロボット30cであり、第4制御部55dではロボット30dである。複数の自由度は、第1制御部55a、第2制御部55bおよび第3制御部55cでは6自由度であり、第4制御部55dでは3自由度である。   The object is the soldering iron 2a in the first control unit 55a, the solder feeder in the second control unit 55b, the electric wire 2c in the third control unit 55c, and the pad 2d in the fourth control unit 55d. The target robot is the robot 30a in the first controller 55a, the robot 30b in the second controller 55b, the robot 30c in the third controller 55c, and the robot 30d in the fourth controller 55d. The plurality of degrees of freedom are six degrees of freedom in the first control unit 55a, the second control unit 55b, and the third control unit 55c, and three degrees of freedom in the fourth control unit 55d.

本実施の形態では、第1変化情報および第2変化情報は、単位制御量だけ対象ロボットを制御したときの画像上の対象物の状態の変化量を示す。具体的には、第1変化情報および第2変化情報は、単位制御量だけ対象ロボットを制御する前の画像上の対象物を、単位制御量だけ対象ロボットを制御した後の画像上の対象物に変換する写像を示す。   In the present embodiment, the first change information and the second change information indicate the amount of change in the state of the target on the image when the target robot is controlled by the unit control amount. Specifically, the first change information and the second change information include an object on the image before controlling the target robot by the unit control amount, and an object on the image after controlling the target robot by the unit control amount. Here is a mapping that converts to

単位制御量だけ対象ロボットを制御したときの画像上の対象物の状態の変化量は、対象物の実空間上の状態に依存する。そのため、変化情報生成部551は、第1基準動画の教示範囲の各フレームに対して第1変化情報セット5521を生成する。さらに、変化情報生成部551は、第2基準動画の教示範囲の各フレームに対して第2変化情報セット5522を生成する。   The amount of change in the state of the target on the image when the target robot is controlled by the unit control amount depends on the state of the target in the real space. Therefore, the change information generating unit 551 generates the first change information set 5521 for each frame in the teaching range of the first reference moving image. Further, the change information generating unit 551 generates a second change information set 5522 for each frame in the teaching range of the second reference moving image.

変化情報生成部551による第1変化情報セット5521および第2変化情報セット5522の生成および格納処理は、事前準備として実行される。   The process of generating and storing the first change information set 5521 and the second change information set 5522 by the change information generation unit 551 is executed as advance preparation.

図10を参照して、第1変化情報セット5521の生成方法を説明する。なお、第2変化情報セット5522の生成方法も同様の方法であるため、これらの生成方法の説明を省略する。   A method for generating the first change information set 5521 will be described with reference to FIG. Since the method of generating the second change information set 5522 is the same, the description of these methods is omitted.

図10は、第1変化情報セットの生成方法を説明する図である。図10(a)は、第1基準動画のk番目のフレーム70を示す。k番目のフレーム70に対応する対象物の実空間上の状態(ここでは位置および姿勢)を基準状態とする。図10(b)は、基準状態から対象物をY方向の並進自由度に単位制御量だけ並進移動させた後に撮像装置21によって撮像された画像80aを示す。図10(c)は、基準状態から対象物をX方向の並進自由度に単位制御量だけ並進移動させた後に撮像装置21によって撮像された画像80bを示す。図10(d)は、基準状態から対象物をZ方向の並進自由度に単位制御量だけ並進移動させた後に撮像装置21によって撮像された画像80cを示す。図10(e)は、基準状態から対象物をピッチ方向の回転自由度に単位制御量だけ回転移動させた後に撮像装置21によって撮像された画像80dを示す。図10(f)は、基準状態から対象物をヨー方向の回転自由度に単位制御量だけ回転移動させた後に撮像装置21によって撮像された画像80eを示す。図10(g)は、基準状態から対象物をロール方向の回転自由度に単位制御量だけ回転移動させた後に撮像装置21によって撮像された画像80fを示す。   FIG. 10 is a diagram illustrating a method of generating the first change information set. FIG. 10A shows the k-th frame 70 of the first reference moving image. The state (here, position and orientation) of the object corresponding to the k-th frame 70 in the real space is set as the reference state. FIG. 10B illustrates an image 80a captured by the imaging device 21 after the target object has been translated from the reference state by the unit control amount in the degree of translational freedom in the Y direction. FIG. 10C illustrates an image 80b captured by the imaging device 21 after the target object has been translated from the reference state by the unit control amount in the degree of translation in the X direction. FIG. 10D illustrates an image 80c captured by the imaging device 21 after the target object has been translated from the reference state by the unit control amount in the degree of translational freedom in the Z direction. FIG. 10E illustrates an image 80d captured by the imaging device 21 after the target object is rotationally moved by the unit control amount to the rotational degree of freedom in the pitch direction from the reference state. FIG. 10F illustrates an image 80e captured by the image capturing apparatus 21 after the target object is rotationally moved from the reference state by the unit control amount to the rotational degree of freedom in the yaw direction. FIG. 10 (g) shows an image 80f captured by the imaging device 21 after rotating the object by the unit control amount to the degree of freedom of rotation in the roll direction from the reference state.

変化情報生成部551は、フレーム70および画像80a〜80fの各々から抽出された対象物の各特徴点の画像上の座標を、画像処理部53から取得する。   The change information generation unit 551 acquires, from the image processing unit 53, the coordinates on the image of each feature point of the target object extracted from each of the frame 70 and the images 80a to 80f.

変化情報生成部551は、フレーム70から抽出された対象物の特徴点5a’〜5g’の座標を、画像80aから抽出された特徴点5a〜5gの座標にそれぞれ変換する写像を示す情報を、Y方向の並進自由度に対応する第1変化情報として生成する。   The change information generation unit 551 outputs information indicating a mapping that converts the coordinates of the feature points 5a ′ to 5g ′ of the object extracted from the frame 70 into the coordinates of the feature points 5a to 5g extracted from the image 80a, respectively. It is generated as first change information corresponding to the degree of freedom of translation in the Y direction.

同様に、変化情報生成部551は、特徴点5a’〜5g’の座標を画像80bから抽出された特徴点5a〜5gの座標に変換する写像を示す情報を、X方向の並進自由度に対応する第1変化情報として生成する。変化情報生成部551は、特徴点5a’〜5g’の座標を画像80cから抽出された特徴点5a〜5gの座標に変換する写像を示す情報を、Z方向の並進自由度に対応する第1変化情報として生成する。変化情報生成部551は、特徴点5a’〜5g’の座標を画像80dから抽出された特徴点5a〜5gの座標に変換する写像を示す情報を、ピッチ方向の回転自由度に対応する第1変化情報として生成する。変化情報生成部551は、特徴点5a’〜5g’の座標を画像80eから抽出された特徴点5a〜5gの座標に変換する写像を示す情報を、ヨー方向の回転自由度に対応する第1変化情報として生成する。変化情報生成部551は、特徴点5a’〜5g’の座標を画像80fから抽出された特徴点5a〜5gの座標に変換する写像を示す情報を、ロール方向の回転自由度に対応する第1変化情報として生成する。このようにして、変化情報生成部551は、第1基準動画のk番目のフレーム70に対応する第1変化情報セット5521を生成する。   Similarly, the change information generation unit 551 converts information indicating a mapping that transforms the coordinates of the feature points 5a ′ to 5g ′ into the coordinates of the feature points 5a to 5g extracted from the image 80b, according to the degree of freedom in translation in the X direction. Is generated as first change information. The change information generating unit 551 converts the information indicating the mapping that converts the coordinates of the feature points 5a ′ to 5g ′ into the coordinates of the feature points 5a to 5g extracted from the image 80c into the first information corresponding to the translation degree in the Z direction. Generated as change information. The change information generating unit 551 converts the information indicating the mapping that converts the coordinates of the feature points 5a ′ to 5g ′ into the coordinates of the feature points 5a to 5g extracted from the image 80d into the first information corresponding to the rotation degree in the pitch direction. Generated as change information. The change information generating unit 551 converts the information indicating the mapping that converts the coordinates of the feature points 5a ′ to 5g ′ into the coordinates of the feature points 5a to 5g extracted from the image 80e into the first information corresponding to the rotational degree of freedom in the yaw direction. Generated as change information. The change information generation unit 551 converts the information indicating the mapping that converts the coordinates of the feature points 5a ′ to 5g ′ into the coordinates of the feature points 5a to 5g extracted from the image 80f into the first information corresponding to the rotational degree of freedom in the roll direction. Generated as change information. In this way, the change information generating unit 551 generates the first change information set 5521 corresponding to the k-th frame 70 of the first reference moving image.

変化情報生成部551は、同様の方法により、第1基準動画のうちの教示範囲の残りのフレームに対応する第1変化情報セット5521を生成する。   The change information generating unit 551 generates the first change information set 5521 corresponding to the remaining frames of the teaching range in the first reference moving image by the same method.

<B−2−10.算出部>
算出部553は、撮像装置21,22によって撮像された実画像上の対象物の状態を第1基準動画および第2基準動画の目標フレーム上の対象物の状態にそれぞれ近づけるための複数の自由度の各々の制御量を算出する。
<B-2-10. Calculation part>
The calculation unit 553 includes a plurality of degrees of freedom for bringing the state of the target on the real image captured by the imaging devices 21 and 22 closer to the state of the target on target frames of the first reference moving image and the second reference moving image, respectively. Is calculated.

算出部553は、変化情報記憶部552から、目標フレームに対応する第1変化情報セット5521および第2変化情報セット5522を取得し、取得した第1変化情報セット5521および第2変化情報セット5522に基づいて、制御量を算出する。上述したように、第1変化情報および第2変化情報は、単位制御量だけ対象ロボットを制御する前の画像上の対象物を、単位制御量だけ対象ロボットを制御した後の画像上の対象物に変換する写像を示す。そこで、算出部553は、実画像から抽出された対象物の特徴点の画像上の座標と、目標フレームから抽出された対象物の特徴点の画像上の座標とを画像処理部53から取得する。算出部553は、第1変化情報および第2変化情報に基づいて、実画像上の対象物を目標フレーム上の対象物に写像するための複数の自由度の各々の制御量を算出する。   The calculation unit 553 acquires the first change information set 5521 and the second change information set 5522 corresponding to the target frame from the change information storage unit 552, and stores the acquired first change information set 5521 and second change information set 5522 in the acquired first change information set 5521 and second change information set 5522. The control amount is calculated based on the control amount. As described above, the first change information and the second change information include an object on the image before controlling the target robot by the unit control amount and an object on the image after controlling the target robot by the unit control amount. Here is a mapping that converts to Therefore, the calculating unit 553 acquires from the image processing unit 53 the coordinates of the feature points of the target object extracted from the real image on the image and the coordinates of the feature points of the target object extracted from the target frame on the image. . The calculation unit 553 calculates a control amount of each of a plurality of degrees of freedom for mapping the target on the real image to the target on the target frame based on the first change information and the second change information.

図11を参照して、第1制御部55a〜第3制御部55cの算出部553による制御量の算出方法を説明する。なお、第4制御部55dの算出部553による制御量の算出方法も同様の方法であるため、説明を省略する。   With reference to FIG. 11, a method of calculating a control amount by the calculation unit 553 of the first control unit 55a to the third control unit 55c will be described. Note that the calculation method of the control amount by the calculation unit 553 of the fourth control unit 55d is the same as that of the fourth control unit 55d, and thus the description is omitted.

図11は、算出部による制御量の算出方法を説明する図である。算出部553は、第1基準動画の目標フレームから抽出された対象物の特徴点5a’〜5g’の画像上の座標を画像処理部53から取得する。さらに、算出部553は、撮像装置21の撮像により得られた実画像から抽出された対象物の特徴点5a〜5gの画像上の座標を画像処理部53から取得する。なお、特徴点の数は、7つに限定されるものではない。   FIG. 11 is a diagram illustrating a method of calculating the control amount by the calculation unit. The calculation unit 553 acquires from the image processing unit 53 the coordinates of the feature points 5a 'to 5g' of the target object extracted from the target frame of the first reference moving image on the image. Further, the calculating unit 553 acquires, from the image processing unit 53, the coordinates on the image of the feature points 5a to 5g of the target object extracted from the real image obtained by the imaging of the imaging device 21. The number of feature points is not limited to seven.

算出部553は、各特徴点の第1差分ベクトル6a〜6gを算出する。第1差分ベクトル6a〜6gはそれぞれ、特徴点5a〜5gを起点とし、特徴点5a’〜5g’を終点とするベクトルである。算出部553は、第1差分ベクトル6a〜6gの平均のx成分Δx1およびy成分Δy1を算出する。x成分およびy成分は、画像の座標系で示される。   The calculation unit 553 calculates the first difference vectors 6a to 6g of each feature point. The first difference vectors 6a to 6g are vectors having feature points 5a to 5g as starting points and feature points 5a 'to 5g' as end points, respectively. The calculation unit 553 calculates the average x component Δx1 and y component Δy1 of the first difference vectors 6a to 6g. The x component and the y component are indicated by the coordinate system of the image.

同様の方法により、算出部553は、撮像装置22の撮像により得られた実画像から抽出された特徴点と第2基準動画の目標フレームから抽出された特徴点との第2差分ベクトルの平均のx成分Δx2およびy成分Δy2を算出する。   In a similar manner, the calculation unit 553 calculates the average of the second difference vector between the feature point extracted from the real image obtained by the imaging of the imaging device 22 and the feature point extracted from the target frame of the second reference moving image. The x component Δx2 and the y component Δy2 are calculated.

まず、算出部553は、第1差分ベクトルの平均のx成分Δx1およびy成分Δy1と、第2差分ベクトルの平均のx成分Δx2およびy成分Δy2yとが0になるように、3つの並進自由度の制御量を算出する。具体的には、算出部553は、Δx1,Δy1,Δx2およびΔy2と第1変化情報セット5521と第2変化情報セット5522とを用いて、対象ロボットのハンドにおけるX方向、Y方向およびZ方向の並進自由度の各々の制御量を算出する。   First, the calculation unit 553 calculates the three translational degrees of freedom such that the average x component Δx1 and y component Δy1 of the first difference vector and the average x component Δx2 and y component Δy2y of the second difference vector become zero. Is calculated. Specifically, the calculation unit 553 uses Δx1, Δy1, Δx2, and Δy2, the first change information set 5521, and the second change information set 5522 to calculate the X, Y, and Z directions of the target robot hand. The control amount of each translational degree of freedom is calculated.

対象ロボットのハンドがX方向、Y方向およびZ方向の並進自由度のいずかに並進移動した場合、撮像装置21,22の撮像により得られる画像上において、対象物は一定方向に並進移動する。そのため、第1変化情報セット5521における並進自由度に対応する第1変化情報は、画像上の任意の点を一定方向に並進移動させた点に変換する写像を示す。同様に、第2変化情報セット5522における並進自由度に対応する第2変化情報は、画像上の任意の点を一定方向に並進移動させた点に変換する写像を示す。   When the hand of the target robot translates in any of the degrees of freedom of translation in the X direction, the Y direction, and the Z direction, the target object translates in a certain direction on an image obtained by imaging by the imaging devices 21 and 22. . Therefore, the first change information corresponding to the translation degree of freedom in the first change information set 5521 indicates a mapping for converting an arbitrary point on the image into a point translated in a certain direction. Similarly, the second change information corresponding to the degree of freedom of translation in the second change information set 5522 indicates a mapping that converts an arbitrary point on the image into a point translated in a certain direction.

ここで、目標フレームに対応する第1変化情報セット5521のX方向の並進自由度に対応する第1変化情報が、点(x、y)を点(x+dX1_1,y+dY1_1)に変換する写像を示すものとする。Y方向への並進自由度に対応する第1変化情報が、画像上の任意の点(x、y)を点(x+dX1_2,y+dY1_2)に変換する写像を示すものとする。Z方向への並進自由度に対応する第1変化情報が、画像上の任意の点(x、y)を点(x+dX1_3,y+dY1_3)に変換する写像を示すものとする。   Here, the first change information corresponding to the translational degree of freedom in the X direction of the first change information set 5521 corresponding to the target frame indicates a mapping that converts a point (x, y) into a point (x + dX1_1, y + dY1_1). And The first change information corresponding to the degree of freedom of translation in the Y direction indicates a mapping that converts an arbitrary point (x, y) on the image into a point (x + dX1_2, y + dY1_2). It is assumed that the first change information corresponding to the degree of freedom of translation in the Z direction indicates a mapping that converts an arbitrary point (x, y) on the image into a point (x + dX1_3, y + dY1_3).

さらに、目標フレームに対応する第2変化情報セット5522のX方向への並進自由度に対応する第2変化情報が、画像上の任意の点(x、y)を点(x+dX2_1,y+dY2_1)に変換する写像を示すものとする。Y方向への並進自由度に対応する第2変化情報が、画像上の任意の点(x、y)を点(x+dX2_2,y+dY2_2)に変換する写像を示すものとする。Z方向への並進自由度に対応する第2変化情報が、画像上の任意の点(x、y)を点(x+dX2_3,y+dY2_3)に変換する写像を示すものとする。   Further, the second change information corresponding to the degree of freedom of translation in the X direction of the second change information set 5522 corresponding to the target frame converts any point (x, y) on the image into a point (x + dX2_1, y + dY2_1). Are shown. The second change information corresponding to the degree of freedom of translation in the Y direction indicates a mapping that converts an arbitrary point (x, y) on the image into a point (x + dX2_2, y + dY2_2). The second change information corresponding to the translation degree of freedom in the Z direction indicates a mapping that converts an arbitrary point (x, y) on the image into a point (x + dX2_3, y + dY2_3).

このとき、算出部553は、以下の4つの線形方程式(1)〜(4)を解くことにより、係数a1,a2,a3を算出する。   At this time, the calculation unit 553 calculates coefficients a1, a2, and a3 by solving the following four linear equations (1) to (4).

a1×dX1_1+a2×dX1_2+a3×dX1_3=Δx1 ・・(1)
a1×dY1_1+a2×dY1_2+a3×dY1_3=Δy1 ・・(2)
a1×dX2_1+a2×dX2_2+a3×dX2_3=Δx2 ・・(3)
a1×dY2_1+a2×dY2_2+a3×dY2_3=Δy2 ・・(4)。
a1 × dX1_1 + a2 × dX1_2 + a3 × dX1_3 = Δx1 (1)
a1 × dY1_1 + a2 × dY1_2 + a3 × dY1_3 = Δy1 (2)
a1 × dX2_1 + a2 × dX2_2 + a3 × dX2_3 = Δx2 (3)
a1 × dY2_1 + a2 × dY2_2 + a3 × dY2_3 = Δy2 (4).

第1変化情報および第2変化情報は、単位制御量だけ対象ロボットを制御したときの画像上の対象物の状態の変化量を示す。そのため、算出部553は、X方向の並進自由度の制御量を単位制御量のa1倍、Y方向の並進自由度の制御量を単位制御量のa2倍、Z方向の並進自由度の制御量を単位制御量のa3倍とする。これら並進自由度の制御量は、Δx1、Δy1、Δx2およびΔy2yだけ、実画像上の対象物の状態を目標フレーム上の対象物の状態に近づけるための制御量である。   The first change information and the second change information indicate the amount of change in the state of the target on the image when the target robot is controlled by the unit control amount. Therefore, the calculation unit 553 calculates the control amount of the translation freedom in the X direction as a1 times the unit control amount, the control amount of the translation freedom in the Y direction as a2 times the unit control amount, and the control amount of the translation freedom in the Z direction. Is a3 times the unit control amount. The control amounts of these translational degrees of freedom are control amounts for bringing the state of the target on the real image closer to the state of the target on the target frame by Δx1, Δy1, Δx2, and Δy2y.

次に、算出部553は、3つの回転自由度の各々の制御量を算出する。算出部553は、各特徴点の第1差分ベクトルから上記の平均のx成分Δx1およびy成分Δy1を差し引く。同様に、算出部553は、各特徴点の第2差分ベクトルから上記の平均のx成分Δx2およびy成分Δy2を差し引く。算出部553は、たとえば山登り法のような探索アルゴリズムを用いて、各特徴点の第1差分ベクトルおよび第2差分ベクトルの残差が最も0に近くなる3つの回転自由度の制御量を算出する。   Next, the calculation unit 553 calculates a control amount of each of the three rotational degrees of freedom. The calculating unit 553 subtracts the average x component Δx1 and y component Δy1 from the first difference vector of each feature point. Similarly, the calculation unit 553 subtracts the above average x component Δx2 and y component Δy2 from the second difference vector of each feature point. The calculation unit 553 calculates a control amount of three rotational degrees of freedom in which the residual of the first difference vector and the second difference vector of each feature point is closest to 0, using a search algorithm such as a hill-climbing method, for example. .

具体的には、算出部553は、ピッチ方向、ヨー方向およびロール方向の回転自由度の制御量が0である解を現在の解として探索アルゴリズムを開始する。算出部553は、現在の解の近傍の複数の解の各々に従って対象ロボットを制御したときの、各特徴点の第1差分ベクトルおよび第2差分ベクトルの残差の変化をシミュレーションする。算出部553は、シミュレーション結果から、現在の解よりも各特徴点の第1差分ベクトルおよび第2差分ベクトルの残差が0に近い近傍解が存在する場合に、当該近傍解を現在の解に置き換える。算出部553は、この処理を繰り返すことにより、第1差分ベクトルおよび第2差分ベクトルの残差が極値となる解を探索する。   Specifically, the calculation unit 553 starts a search algorithm with a solution in which the control amounts of the rotational degrees of freedom in the pitch direction, the yaw direction, and the roll direction are 0 as the current solution. The calculation unit 553 simulates a change in the residual of the first difference vector and the second difference vector of each feature point when the target robot is controlled according to each of a plurality of solutions near the current solution. The calculation unit 553 determines from the simulation result that, when there is a nearby solution in which the residual of the first difference vector and the second difference vector of each feature point is closer to 0 than the current solution, the nearby solution is set as the current solution. replace. The calculation unit 553 repeats this process to search for a solution in which the residual of the first difference vector and the second difference vector has an extreme value.

<B−2−11.指令部>
指令部554は、算出部553によって算出された制御量だけ対象ロボットを移動させるための制御指令を生成し、生成した制御指令を対象ロボットコントローラに出力する。第1制御部55a、第2制御部55b、第3制御部55cおよび第4制御部55dの対象ロボットコントローラは、それぞれロボットコントローラ40a〜40dである。
<B-2-11. Command part>
The command unit 554 generates a control command for moving the target robot by the control amount calculated by the calculation unit 553, and outputs the generated control command to the target robot controller. The target robot controllers of the first control unit 55a, the second control unit 55b, the third control unit 55c, and the fourth control unit 55d are the robot controllers 40a to 40d, respectively.

<B−2−12.終了判定部>
終了判定部555は、実画像上の対象物の状態と教示範囲の最終フレーム上の対象物の状態との偏差を算出し、算出した偏差が予め定められた閾値未満である場合に、対象ロボットの制御を終了すると判定する。終了判定部555は、対象ロボットの制御を終了すると判定すると、終了通知を出力する。
<B-2-12. End determination section>
The end determination unit 555 calculates a deviation between the state of the target on the real image and the state of the target on the last frame of the teaching range, and when the calculated deviation is smaller than a predetermined threshold, the target robot Is determined to end. When determining to end the control of the target robot, the end determination unit 555 outputs an end notification.

偏差は、たとえば、実画像および最終フレームから抽出された対象物の対応する特徴点同士の距離の平均である。   The deviation is, for example, an average of distances between corresponding feature points of the object extracted from the real image and the final frame.

閾値は、対象物の状態に要求される精度に応じて設定される。閾値は、第1制御部55aでは閾値Thaであり、第2制御部55bでは閾値Thbであり、第3制御部55cでは閾値Thcであり、第4制御部55dでは閾値Thdである。閾値Tha〜Thdは、同じであってもよいし、互いに異なっていてもよい。   The threshold is set according to the accuracy required for the state of the target. The threshold is the threshold Th in the first control unit 55a, the threshold Thb in the second control unit 55b, the threshold Thc in the third control unit 55c, and the threshold Thd in the fourth control unit 55d. The thresholds Tha to Thd may be the same or different from each other.

<B−2−13.解析部>
解析部59は、入力装置534(図3参照)に解析指示が入力されると、視覚サーボを用いたロボット30a〜30dの制御が正常に行なわれた否かを判定するための解析画面を表示装置60に表示する。
<B-2-13. Analysis section>
When an analysis instruction is input to the input device 534 (see FIG. 3), the analysis unit 59 displays an analysis screen for determining whether or not the control of the robots 30a to 30d using the visual servo has been normally performed. Display on the device 60.

解析部59は、パッド識別番号の入力を受け付け、入力されたパッド識別番号に対応する第1実動画、第2実動画、第3テーブルおよび第4テーブルを実動画記憶部57から読み出す。解析部59は、読み出した第1実動画、第2実動画、第3テーブルおよび第4テーブルに基づく解析画面を表示装置60に表示する。   The analysis unit 59 receives the input of the pad identification number, and reads the first real moving image, the second real moving image, the third table, and the fourth table corresponding to the input pad identification number from the real moving image storage unit 57. The analysis unit 59 displays an analysis screen based on the read first real moving image, the second real moving image, the third table, and the fourth table on the display device 60.

図12は、実施の形態における解析画面の具体例を示す図である。図12に示す例の解析画面62は、領域601〜606と、ボタン607〜612とを含む。   FIG. 12 is a diagram illustrating a specific example of the analysis screen according to the embodiment. The analysis screen 62 of the example illustrated in FIG. 12 includes areas 601 to 606 and buttons 607 to 612.

解析部59は、解析指示が入力されると、実動画記憶部57から読み出した第3テーブルに基づいて、撮像装置21によって撮像された実画像から抽出された特徴量の時間変化を示す第1実波形を実波形621として作成する。解析部59は、作成した実波形621を領域601に表示させる。さらに、解析部59は、基準動画記憶部51が記憶する第1テーブルに基づいて、第1基準動画の各フレームから抽出された特徴量の時間変化を示す第1基準波形を基準波形622として作成し、作成した基準波形622を領域602に表示させる。このとき、解析部59は、複数種類の特徴量のうちの1つに対応する実波形621および基準波形622を作成する。図12に示す例では、特徴量「半田ごての画素位置(y座標)」の実波形621および基準波形622が表示されている。   When the analysis instruction is input, the analysis unit 59 displays a first time change of a feature amount extracted from the real image captured by the imaging device 21 based on the third table read from the real moving image storage unit 57. An actual waveform is created as an actual waveform 621. The analysis unit 59 displays the created real waveform 621 in the area 601. Further, the analysis unit 59 creates, as the reference waveform 622, a first reference waveform indicating a temporal change of the feature amount extracted from each frame of the first reference moving image based on the first table stored in the reference moving image storage unit 51. Then, the created reference waveform 622 is displayed in the area 602. At this time, the analysis unit 59 creates an actual waveform 621 and a reference waveform 622 corresponding to one of the plurality of types of feature amounts. In the example shown in FIG. 12, the actual waveform 621 and the reference waveform 622 of the feature amount “pixel position (y coordinate) of the soldering iron” are displayed.

解析部59は、解析指示が入力されると、実波形621の時間軸上の時刻を指定するマーク623を実波形621に重ねて表示させる。解析部59は、マーク623で指定される時刻に対応する特徴量の値をマーク623の近傍の領域625に表示させる。なお、マーク623が指定するデフォルト時刻は、たとえば実波形621の先頭の時刻である。   When an analysis instruction is input, the analysis unit 59 displays a mark 623 specifying a time on the time axis of the real waveform 621 so as to overlap the real waveform 621. The analysis unit 59 displays the value of the feature amount corresponding to the time specified by the mark 623 in an area 625 near the mark 623. Note that the default time designated by the mark 623 is, for example, the leading time of the actual waveform 621.

解析部59は、解析指示が入力されると、基準波形622の時間軸上の時刻を指定するマーク624を基準波形622に重ねて表示させる。解析部59は、マーク624で指定される時刻に対応する特徴量の値をマーク624の近傍の領域626に表示させる。なお、マーク624が指定するデフォルト時刻は、たとえば基準波形622の先頭の時刻である。   When an analysis instruction is input, the analysis unit 59 displays a mark 624 that specifies a time on the time axis of the reference waveform 622 so as to overlap the reference waveform 622. The analysis unit 59 causes the value of the feature amount corresponding to the time designated by the mark 624 to be displayed in an area 626 near the mark 624. Note that the default time designated by the mark 624 is, for example, the leading time of the reference waveform 622.

解析部59は、解析指示が入力されると、撮像装置21によって撮像された実画像を領域603に表示させる。解析部59は、マーク623で指定される時刻に対応する実画像を領域603に表示させる。   When an analysis instruction is input, the analysis unit 59 displays an actual image captured by the imaging device 21 in the area 603. The analysis unit 59 causes the real image corresponding to the time designated by the mark 623 to be displayed in the area 603.

解析部59は、解析指示が入力されると、第1基準動画のフレームを領域604に表示させる。解析部59は、マーク624で指定される時刻に対応するフレームを領域604に表示させる。   When the analysis instruction is input, the analysis unit 59 displays the frame of the first reference moving image in the area 604. The analysis unit 59 displays a frame corresponding to the time specified by the mark 624 in the area 604.

解析部59は、解析指示が入力されると、撮像装置21によって撮像された複数の実画像のサムネイルを領域605に表示させる。複数の実画像のサムネイルは、マーク623で指定される時刻に対応する実画像のサムネイル627を必ず含む。解析部59は、サムネイル627を残りのサムネイルと異なる表示形式で表示させる。図12に示す例では、サムネイル627だけが太枠で囲まれている。   When an analysis instruction is input, the analysis unit 59 displays thumbnails of a plurality of real images captured by the imaging device 21 in the area 605. The thumbnails of the plurality of real images always include the thumbnail 627 of the real image corresponding to the time specified by the mark 623. The analysis unit 59 displays the thumbnail 627 in a display format different from the remaining thumbnails. In the example shown in FIG. 12, only the thumbnail 627 is surrounded by a thick frame.

解析部59は、解析指示が入力されると、第1基準動画の複数のフレームのサムネイルを領域606に表示させる。複数のフレームのサムネイルは、マーク624で指定される時刻に対応するフレームのサムネイル628を必ず含む。解析部59は、サムネイル628を残りのサムネイルと異なる表示形式で表示させる。図11に示す例では、サムネイル628だけが太枠で囲まれている。   When the analysis instruction is input, the analysis unit 59 displays thumbnails of a plurality of frames of the first reference moving image in the area 606. The thumbnails of the plurality of frames always include the thumbnail 628 of the frame corresponding to the time specified by the mark 624. The analysis unit 59 displays the thumbnail 628 in a display format different from that of the remaining thumbnails. In the example shown in FIG. 11, only the thumbnail 628 is surrounded by a thick frame.

解析部59は、ボタン607〜612の操作を受け付ける。解析部59は、ボタン607〜612のいずれかが操作されると、以下のような処理を行なう。   The analysis unit 59 receives an operation of the buttons 607 to 612. When any of buttons 607 to 612 is operated, analysis unit 59 performs the following processing.

(ボタン607が操作された場合)
ボタン607は、撮像装置21,22を切り替えるためのボタンである。解析部59は、ボタン607が操作されると、実動画記憶部57から読み出した第4テーブルに基づいて、撮像装置22によって撮像された実画像から抽出された特徴量の時間変化を示す第2実波形を実波形621として作成する。解析部59は、領域601に表示される実波形621を第2実波形に切り替える。さらに、解析部59は、基準動画記憶部51が記憶する第2テーブルに基づいて、第2基準動画の各フレームから抽出された特徴量の時間変化を示す第2基準波形を基準波形622として作成する。解析部59は、領域602に表示される基準波形622を第2基準波形に切り替える。
(When the button 607 is operated)
The button 607 is a button for switching between the imaging devices 21 and 22. When the button 607 is operated, the analysis unit 59 displays a second time change of the feature amount extracted from the real image captured by the imaging device 22 based on the fourth table read from the real moving image storage unit 57. An actual waveform is created as an actual waveform 621. The analysis unit 59 switches the real waveform 621 displayed in the area 601 to the second real waveform. Further, the analysis unit 59 creates, as the reference waveform 622, a second reference waveform indicating a temporal change of the feature amount extracted from each frame of the second reference moving image based on the second table stored in the reference moving image storage unit 51. I do. The analysis unit 59 switches the reference waveform 622 displayed in the area 602 to the second reference waveform.

さらに、解析部59は、領域603に表示する実画像を撮像装置22によって撮像された実画像に切り替えるとともに、領域604に表示するフレームを第2基準動画のフレームに切り替える。   Further, the analysis unit 59 switches the real image displayed in the area 603 to the real image captured by the imaging device 22 and switches the frame displayed in the area 604 to the frame of the second reference moving image.

さらに、解析部59は、領域605に表示するサムネイルを撮像装置22によって撮像された実画像のサムネイルに切り替えるとともに、領域606に表示するサムネイルを第2基準動画のフレームのサムネイルに切り替える。   Further, the analysis unit 59 switches the thumbnail displayed in the area 605 to the thumbnail of the real image captured by the imaging device 22, and switches the thumbnail displayed in the area 606 to the thumbnail of the frame of the second reference moving image.

その後、解析部59は、ボタン607が操作されるたびに、領域601に表示させる実波形621を、第1実波形および第2実波形の一方から他方に切り替える。さらに、解析部59は、ボタン607が操作されるたびに、領域602に表示させる基準波形622を、第1基準波形および第2基準波形の一方から他方に切り替える。   Thereafter, each time the button 607 is operated, the analysis unit 59 switches the real waveform 621 displayed in the area 601 from one of the first real waveform and the second real waveform to the other. Further, each time the button 607 is operated, the analysis unit 59 switches the reference waveform 622 displayed in the area 602 from one of the first reference waveform and the second reference waveform to the other.

解析部59は、第1実波形が領域601に表示されている場合、撮像装置21の実画像を領域603に表示させるとともに、撮像装置21の複数の実画像のサムネイルを領域605に表示させる。   When the first real waveform is displayed in the region 601, the analysis unit 59 displays the real image of the imaging device 21 in the region 603 and displays the thumbnails of the plurality of real images of the imaging device 21 in the region 605.

解析部59は、第2実波形が領域601に表示されている場合、撮像装置22の実画像を領域603に表示させるとともに、撮像装置22の複数の実画像のサムネイルを領域605に表示させる。   When the second real waveform is displayed in the region 601, the analysis unit 59 displays the real image of the imaging device 22 in the region 603 and displays the thumbnails of the plurality of real images of the imaging device 22 in the region 605.

解析部59は、第1基準波形が領域602に表示されている場合、第1基準動画のフレームを領域603に表示させるとともに、第1基準動画の複数のフレームのサムネイルを領域605に表示させる。   When the first reference waveform is displayed in the region 602, the analysis unit 59 displays the frame of the first reference moving image in the region 603 and displays the thumbnails of the plurality of frames of the first reference moving image in the region 605.

解析部59は、第2基準波形が領域602に表示されている場合、第2基準動画のフレームを領域603に表示させるとともに、第2基準動画の複数のフレームのサムネイルを領域605に表示させる。   When the second reference waveform is displayed in the region 602, the analysis unit 59 displays the frame of the second reference moving image in the region 603 and displays the thumbnails of the plurality of frames of the second reference moving image in the region 605.

なお、解析部59は、ボタン607の操作にかかわらず、マーク623,624の位置を変更しない。   Note that the analysis unit 59 does not change the positions of the marks 623 and 624 regardless of the operation of the button 607.

(ボタン608が操作された場合)
ボタン608は、マーク623,624の位置を単位時間だけ移動させるためのボタンである。ボタン608が操作されることにより、解析部59は、マーク623,624で指定される時刻に応じて、領域625,626に表示される値をそれぞれ変更する。さらに、解析部59は、マーク623,624で指定される時刻に応じて、領域603に表示される実画像と領域604に表示されるフレームとをそれぞれ変更する。さらに、解析部59は、マーク623,624で指定される時刻に応じて、領域605,606において太枠で囲まれるサムネイルをそれぞれ変更する。
(When the button 608 is operated)
The button 608 is a button for moving the positions of the marks 623 and 624 by a unit time. By operating the button 608, the analysis unit 59 changes the values displayed in the areas 625 and 626 according to the time specified by the marks 623 and 624, respectively. Furthermore, the analysis unit 59 changes the actual image displayed in the area 603 and the frame displayed in the area 604 according to the time specified by the marks 623 and 624, respectively. Further, the analysis unit 59 changes the thumbnails surrounded by the thick frames in the areas 605 and 606 according to the time specified by the marks 623 and 624, respectively.

このように、解析部59は、マーク623の移動に応じて、領域603,605,625の表示内容を変更する。さらに、解析部59は、マーク624の移動に応じて、領域604,606,626の表示内容を変更する。以下の説明において、特筆しない限り、マーク623の移動に応じて領域603,605,625の表示内容が変更され、マーク624の移動に応じて領域604,606,626の表示内容が変更される。   As described above, the analysis unit 59 changes the display contents of the areas 603, 605, and 625 according to the movement of the mark 623. Further, the analysis unit 59 changes the display contents of the areas 604, 606, and 626 according to the movement of the mark 624. In the following description, the display contents of the areas 603, 605, and 625 are changed according to the movement of the mark 623, and the display contents of the areas 604, 606, and 626 are changed according to the movement of the mark 624, unless otherwise specified.

(ボタン609が操作された場合)
ボタン609は、領域603に実動画(第1実動画または第2実動画)を再生させ、領域604に基準動画(第1基準動画または第2基準動画)を再生させるためのボタンである。ボタン609が操作されることにより、解析部59は、領域603において実動画を再生させるとともに、領域604において基準動画を再生させる。このとき、解析部59は、領域603に表示されている実画像に応じて、マーク623の位置も移動させる。解析部59は、領域604に表示されているフレームに応じて、マーク624の位置も移動させる。
(When the button 609 is operated)
The button 609 is a button for reproducing the real moving image (the first real moving image or the second real moving image) in the region 603 and reproducing the reference moving image (the first reference moving image or the second reference moving image) in the region 604. When the button 609 is operated, the analysis unit 59 reproduces the actual moving image in the region 603 and reproduces the reference moving image in the region 604. At this time, the analysis unit 59 also moves the position of the mark 623 according to the actual image displayed in the area 603. The analysis unit 59 also moves the position of the mark 624 according to the frame displayed in the area 604.

(ボタン610が操作された場合)
ボタン610は、領域603に実動画(第1実動画または第2実動画)を逆再生させ、領域604に基準動画(第1基準動画または第2基準動画)を逆再生させるためのボタンである。ボタン609が操作されることにより、解析部59は、領域603において実動画を逆再生させるとともに、領域604において基準動画を逆再生させる。このとき、解析部59は、領域603に表示されている実画像に応じて、マーク623の位置も移動させる。解析部59は、領域604に表示されているフレームに応じて、マーク624の位置も移動させる。
(When the button 610 is operated)
The button 610 is a button for causing the area 603 to reversely play the real moving image (the first real moving image or the second real moving image), and causing the area 604 to reversely play the reference moving image (the first reference moving image or the second reference moving image). . When the button 609 is operated, the analysis unit 59 reversely reproduces the actual moving image in the area 603 and reversely reproduces the reference moving image in the area 604. At this time, the analysis unit 59 also moves the position of the mark 623 according to the actual image displayed in the area 603. The analysis unit 59 also moves the position of the mark 624 according to the frame displayed in the area 604.

(ボタン611が操作された場合)
ボタン611は、実波形621と基準波形622との時間軸を合わせるためのボタンである。解析部59は、ボタン611が操作されると、実波形621と基準波形622との時間軸が合うように、実波形621を補正する。これにより、実波形621と基準波形622との時間ずれが補正される。その結果、視覚サーボを用いたロボットの制御が正常に実行されている否かをより判定しやすくなる。
(When the button 611 is operated)
The button 611 is a button for adjusting the time axis between the actual waveform 621 and the reference waveform 622. When the button 611 is operated, the analysis unit 59 corrects the actual waveform 621 so that the time axes of the actual waveform 621 and the reference waveform 622 match. Thereby, the time lag between the actual waveform 621 and the reference waveform 622 is corrected. As a result, it becomes easier to determine whether the control of the robot using the visual servo is normally performed.

図13は、時間軸を合わせる前の実波形および基準波形と、時間軸を合わせた後の実波形および基準波形とを示す図である。図13の上方には、時間軸を合わせる前の実波形621および基準波形622が示され、図13の下方には、時間軸を合わせた後の実波形621および基準波形622が示される。   FIG. 13 is a diagram showing an actual waveform and a reference waveform before adjusting the time axis, and an actual waveform and a reference waveform after adjusting the time axis. The upper part of FIG. 13 shows the actual waveform 621 and the reference waveform 622 before adjusting the time axis, and the lower part of FIG. 13 shows the actual waveform 621 and the reference waveform 622 after adjusting the time axis.

実波形621と基準波形622との時間軸を合わせる方法として、たとえば、パターンマッチングおよびDPマッチングがある。   As a method of matching the time axes of the actual waveform 621 and the reference waveform 622, for example, there are pattern matching and DP matching.

パターンマッチングは、2つの波形の距離が最小となるように時間軸を合わせる方法である。具体的には、解析部59は、実波形621を時間軸方向に単位時間ずつ移動させて、実波形621と基準波形622との距離を算出する。解析部59は、当該距離が最小となる位置に実波形621を移動させる。距離は、たとえば、実波形621と基準波形622とにおける各時刻の特徴量の差の二乗和である。   Pattern matching is a method of adjusting the time axis so that the distance between two waveforms is minimized. Specifically, the analysis unit 59 calculates the distance between the real waveform 621 and the reference waveform 622 by moving the real waveform 621 in the time axis direction by unit time. The analysis unit 59 moves the actual waveform 621 to a position where the distance becomes minimum. The distance is, for example, the sum of squares of the difference between the feature amounts at each time in the actual waveform 621 and the reference waveform 622.

DPマッチングは、動的計画法と呼ばれ、2つの波形が最もよく一致するように、2つの波形の少なくとも一方の時間軸を伸縮させる方法である。具体的には、解析部59は、実波形621の時間軸の伸縮率を単位量ずつ変化させて、実波形621と基準波形622との距離を算出する。解析部59は、当該距離が最小となる伸縮率で実波形621を伸縮させる。   DP matching is a method called dynamic programming, in which at least one time axis of two waveforms is expanded or contracted so that the two waveforms best match. Specifically, the analysis unit 59 calculates the distance between the real waveform 621 and the reference waveform 622 by changing the expansion / contraction ratio of the time axis of the real waveform 621 by a unit amount. The analysis unit 59 expands and contracts the actual waveform 621 at the expansion and contraction ratio at which the distance becomes minimum.

解析部59は、ボタン611が操作されると、マーク623の位置とマーク624の位置とを一致させる。   When the button 611 is operated, the analysis unit 59 matches the position of the mark 623 with the position of the mark 624.

解析部59は、ボタン611の操作に応じて実波形621を補正した後にボタン608〜610が操作された場合、補正後の実波形621に基づいた処理を行なう。   When the buttons 608 to 610 are operated after correcting the actual waveform 621 according to the operation of the button 611, the analysis unit 59 performs a process based on the corrected actual waveform 621.

(ボタン612が操作された場合)
ボタン612は、特徴量を切り替えるためのボタンである。解析部59は、ボタン612が操作されるたびに、実波形621および基準波形622で示される特徴量を順次切り替える。もしくは、解析部59は、ボタン612が操作されると、複数種類の特徴量の一覧を表示し、選択指示を受けた1つの特徴量の実波形621および基準波形622を表示させてもよい。
(When the button 612 is operated)
The button 612 is a button for switching the feature amount. The analysis unit 59 sequentially switches the feature amounts indicated by the actual waveform 621 and the reference waveform 622 each time the button 612 is operated. Alternatively, when the button 612 is operated, the analysis unit 59 may display a list of a plurality of types of feature amounts, and may display the actual waveform 621 and the reference waveform 622 of one of the feature amounts that have received the selection instruction.

複数種類の特徴量は、上述したように、半田ごて2a、半田フィーダ2b、電線2c、パッド2dおよび溶融半田2eの画像上の座標(画素座標)を含む。しかしながら、複数種類の特徴量には、画像から抽出される別の特徴量が含まれてもよい。   As described above, the plurality of types of feature amounts include coordinates (pixel coordinates) on the image of the soldering iron 2a, the solder feeder 2b, the electric wire 2c, the pad 2d, and the molten solder 2e. However, the plurality of types of feature amounts may include another feature amount extracted from the image.

図14は、特徴量の一例を示す図である。図15は、特徴量の別の例を示す図である。図14に示す特徴量は、半田ごて2aにおける画像上の初期位置からの移動距離D1である。このように、複数種類の特徴量は、特定の対象物における画像上の初期位置からの移動距離を含んでもよい。   FIG. 14 is a diagram illustrating an example of the feature amount. FIG. 15 is a diagram illustrating another example of the feature amount. The feature quantity shown in FIG. 14 is a movement distance D1 from the initial position on the image of the soldering iron 2a. As described above, the plurality of types of feature amounts may include the moving distance from the initial position on the image of the specific target object.

図15に示す特徴量は、溶融半田2eの画像上の面積Saである。このように、複数種類の特徴量は、画像上のブロブ(領域)の面積、フィレ径、周囲長などを含んでもよい。画像処理部53は、ラベリングなどの画像処理を行なうことにより、対象画像からブロブを抽出すればよい。   The feature quantity shown in FIG. 15 is the area Sa on the image of the molten solder 2e. As described above, the plurality of types of feature amounts may include the area of the blob (region) on the image, the fillet diameter, the perimeter, and the like. The image processing unit 53 may extract a blob from the target image by performing image processing such as labeling.

<C.動作例>
<C−1.変化情報の生成処理>
図16を参照して、変化情報生成部551による変化情報の生成処理の流れについて説明する。図16は、変化情報生成部による変化情報の生成処理の流れの一例を示すフローチャートである。なお、図16には、第1制御部55aの変化情報生成部551の処理の流れが示されている。第2制御部55b、第3制御部55cおよび第4制御部55dの変化情報生成部551も、図16と同様の方法に従って変化情報を生成すればよい。変化情報の生成処理は、事前準備として行なわれる。
<C. Operation example>
<C-1. Change information generation processing>
With reference to FIG. 16, a flow of a change information generating process performed by the change information generating unit 551 will be described. FIG. 16 is a flowchart illustrating an example of a flow of a change information generation process performed by the change information generation unit. FIG. 16 shows a flow of processing of the change information generation unit 551 of the first control unit 55a. The change information generation unit 551 of the second control unit 55b, the third control unit 55c, and the fourth control unit 55d may generate change information according to a method similar to that in FIG. The process of generating change information is performed as advance preparation.

まずステップS1において、制御装置50は、ハンド31aによって把持された半田ごて2aを初期位置に移動させる定型動作をロボット30aに行なわせる。これにより、半田ごて2aは、撮像装置21,22の視野内に移動される。   First, in step S1, the control device 50 causes the robot 30a to perform a standard operation of moving the soldering iron 2a held by the hand 31a to the initial position. Thereby, the soldering iron 2a is moved within the field of view of the imaging devices 21 and 22.

ステップS2において、変化情報生成部551は、第1基準動画および第2基準動画の教示範囲の先頭フレームと同じ画像が撮像装置21,22によってそれぞれ撮像されるように、ロボット30aを制御する。ステップS2のサブルーチンについては後述する。   In step S2, the change information generation unit 551 controls the robot 30a such that the same images as the first frames in the teaching range of the first reference moving image and the second reference moving image are captured by the imaging devices 21 and 22, respectively. The subroutine of step S2 will be described later.

ステップS3において、変化情報生成部551は、kを教示範囲の先頭フレームのフレーム番号にセットする。ステップS4において、変化情報生成部551は、6自由度のうちの1つを選択する。   In step S3, the change information generator 551 sets k to the frame number of the first frame of the teaching range. In step S4, the change information generator 551 selects one of the six degrees of freedom.

ステップS5において、変化情報生成部551は、選択した自由度の正方向に単位制御量だけハンド31aを移動させるための制御指令を生成し、ロボットコントローラ40aに出力する。   In step S5, the change information generation unit 551 generates a control command for moving the hand 31a by the unit control amount in the positive direction of the selected degree of freedom, and outputs the control command to the robot controller 40a.

ステップS6において、変化情報生成部551は、ハンド31aが単位制御量だけ移動した後、撮像装置21,22から最新の実画像を取得する。   In step S6, the change information generation unit 551 acquires the latest actual image from the imaging devices 21 and 22 after the hand 31a moves by the unit control amount.

ステップS7において、変化情報生成部551は、ステップS6で取得した実画像から抽出された半田ごて2aの特徴点の座標を画像処理部53から取得する。   In step S7, the change information generating unit 551 acquires from the image processing unit 53 the coordinates of the feature points of the soldering iron 2a extracted from the actual image acquired in step S6.

ステップS8において、変化情報生成部551は、第1基準動画および第2基準動画のk番目のフレームから抽出された半田ごて2aの特徴点の座標を画像処理部53から取得する。   In step S8, the change information generation unit 551 acquires from the image processing unit 53 the coordinates of the feature points of the soldering iron 2a extracted from the k-th frame of the first reference moving image and the second reference moving image.

ステップS9において、変化情報生成部551は、ステップS8で取得した座標と、ステップS7で取得した座標とに基づいて、k番目のフレームおよびステップS4で選択した自由度に対応する第1変化情報および第2変化情報を生成する。すなわち、変化情報生成部551は、撮像装置21による実画像から抽出された特徴点の座標を第1基準動画のk番目のフレームから抽出された特徴点の座標に変換するための写像を示す第1変化情報を生成する。さらに、変化情報生成部551は、撮像装置22による実画像から抽出された特徴点の座標を第2基準動画のk番目のフレームから抽出された特徴点の座標に変換するための写像を示す第2変化情報を生成する。   In step S9, the change information generating unit 551 generates the first change information and the first change information corresponding to the k-th frame and the degree of freedom selected in step S4 based on the coordinates obtained in step S8 and the coordinates obtained in step S7. The second change information is generated. That is, the change information generating unit 551 generates a second map showing a mapping for converting the coordinates of the feature points extracted from the real image by the imaging device 21 into the coordinates of the feature points extracted from the k-th frame of the first reference moving image. 1 Generate change information. Further, the change information generating unit 551 displays a mapping for converting the coordinates of the feature points extracted from the real image by the imaging device 22 into the coordinates of the feature points extracted from the k-th frame of the second reference moving image. 2 Change information is generated.

ステップS10において、変化情報生成部551は、ハンド31aを元の状態(直近のステップS5の前の状態)に戻すための制御指令を生成し、ロボットコントローラ40aに出力する。これにより、半田ごて2aは、ステップS5の前の状態に戻る。   In step S10, the change information generation unit 551 generates a control command for returning the hand 31a to the original state (the state before the latest step S5), and outputs the control command to the robot controller 40a. Thus, the soldering iron 2a returns to the state before step S5.

ステップS11において、変化情報生成部551は、未選択の自由度があるか判定する。未選択の自由度がある場合(ステップS11でYES)、変化情報の生成処理は、ステップS4に戻る。その結果、ステップS4〜ステップS10が繰り返され、6自由度の各々について、第1変化情報および第2変化情報が生成される。   In step S11, the change information generation unit 551 determines whether there is a degree of freedom that has not been selected. If there is an unselected degree of freedom (YES in step S11), the process of generating change information returns to step S4. As a result, steps S4 to S10 are repeated, and the first change information and the second change information are generated for each of the six degrees of freedom.

未選択の自由度がない場合(ステップS11でNO)、変化情報生成部551は、ステップS12において、kが教示範囲の最終フレームのフレーム番号であるか否かを判定する。   If there is no unselected degree of freedom (NO in step S11), in step S12, the change information generation unit 551 determines whether k is the frame number of the last frame in the teaching range.

kが最終フレームのフレーム番号ではない場合(ステップS12でNO)、変化情報生成部551は、ステップS13において、第1基準動画および第2基準動画のk+1番目のフレームと同じ画像が撮像装置21,22によってそれぞれ撮像されるように、ロボット30aを制御する。   If k is not the frame number of the last frame (NO in step S12), in step S13, the change information generating unit 551 generates the same image as the (k + 1) th frame of the first reference moving image and the second reference moving image in the imaging device 21, The robot 30a is controlled so as to be imaged by each of the robots 22.

具体的には、変化情報生成部551は、上述した算出部553の処理内容と同様の方法により、k番目のフレーム上の半田ごて2aの状態をk+1番目のフレーム上の半田ごて2aの状態に近づけるための6自由度の制御量を算出する。すなわち、変化情報生成部551は、k番目のフレームから抽出された複数の特徴点の各々について、当該特徴点を起点とし、k+1番目のフレームから抽出された対応する特徴点を終点とする差分ベクトルを求める。変化情報生成部551は、特徴点ごとの差分ベクトルとk番目のフレームに対応する第1変化情報および第2変化情報とに基づいて、6自由度の制御量を算出する。変化情報生成部551は、算出した制御量を示す制御指令を生成し、ロボットコントローラ40aに出力する。   Specifically, the change information generation unit 551 changes the state of the soldering iron 2a on the k-th frame by the same method as the processing content of the calculation unit 553 described above. A control amount with six degrees of freedom for approaching the state is calculated. That is, for each of the plurality of feature points extracted from the k-th frame, the change information generation unit 551 sets the difference vector having the feature point as a starting point and the corresponding feature point extracted from the (k + 1) -th frame as an end point. Ask for. The change information generating unit 551 calculates a control amount with six degrees of freedom based on the difference vector for each feature point and the first change information and the second change information corresponding to the k-th frame. The change information generator 551 generates a control command indicating the calculated control amount, and outputs the control command to the robot controller 40a.

ステップS14において、変化情報生成部551は、kに1だけ加算する。ステップS14の後、処理はステップS4に戻る。これにより、k+1番目のフレームについても、6自由度の各々の第1変化情報および第2変化情報が生成される。   In step S14, the change information generation unit 551 adds 1 to k. After step S14, the process returns to step S4. As a result, also for the (k + 1) th frame, the first change information and the second change information for each of the six degrees of freedom are generated.

kが最終フレームのフレーム番号である場合(ステップS12でYES)、全てのフレームについて第1変化情報セット5521および第2変化情報セット5522が生成されたため、変化情報の生成処理は終了する。   If k is the frame number of the last frame (YES in step S12), the first change information set 5521 and the second change information set 5522 have been generated for all frames, and thus the change information generation processing ends.

図17は、図16に示すステップS2のサブルーチンの処理の流れを示すフローチャートである。   FIG. 17 is a flowchart showing the flow of the processing of the subroutine of step S2 shown in FIG.

まずステップS21において、変化情報生成部551は、第1基準動画および第2基準動画の教示範囲の先頭フレームから抽出された半田ごて2aの特徴点の座標を画像処理部53から取得する。   First, in step S21, the change information generating unit 551 acquires from the image processing unit 53 the coordinates of the feature points of the soldering iron 2a extracted from the first frame of the teaching range of the first reference moving image and the second reference moving image.

ステップS22において、変化情報生成部551は、撮像装置21,22から最新の実画像を取得する。   In step S22, the change information generation unit 551 acquires the latest actual image from the imaging devices 21 and 22.

ステップS23において、変化情報生成部551は、ステップS22で取得した実画像から抽出された半田ごて2aの特徴点の座標を画像処理部53から取得する。   In step S23, the change information generating unit 551 acquires from the image processing unit 53 the coordinates of the feature points of the soldering iron 2a extracted from the actual image acquired in step S22.

ステップS24において、変化情報生成部551は、ステップS22で取得した実画像上の半田ごて2aの状態と先頭フレーム上の半田ごて2aの状態との偏差が閾値Tha未満であるか否かを判定する。偏差は、たとえば、実画像および先頭フレームから抽出された半田ごて2aの対応する特徴点同士の距離の平均である。   In step S24, the change information generating unit 551 determines whether the deviation between the state of the soldering iron 2a on the actual image acquired in step S22 and the state of the soldering iron 2a on the top frame is less than the threshold Tha. judge. The deviation is, for example, an average of distances between corresponding feature points of the soldering iron 2a extracted from the actual image and the leading frame.

偏差が閾値Tha未満である場合(ステップS24でYES)、変化情報生成部551は、先頭フレームと同じ画像が撮像装置21,22によってそれぞれ撮像されると判定し、処理を終了する。   If the deviation is less than the threshold value Tha (YES in step S24), the change information generation unit 551 determines that the same image as the first frame is captured by the imaging devices 21 and 22, respectively, and ends the process.

偏差が閾値Tha以上である場合(ステップS24でNO)、ステップS25において、変化情報生成部551は、6自由度のうちの1つを選択する。ステップS26において、変化情報生成部551は、制御方向として正方向および負方向のいずれかを選択する。   When the deviation is equal to or larger than the threshold Tha (NO in step S24), in step S25, the change information generation unit 551 selects one of the six degrees of freedom. In step S26, the change information generation unit 551 selects one of the positive direction and the negative direction as the control direction.

ステップS27において、変化情報生成部551は、選択した自由度の選択した制御方向に単位制御量だけハンド31aを移動させるための制御指令を生成し、ロボットコントローラ40aに出力する。   In step S27, the change information generation unit 551 generates a control command for moving the hand 31a by the unit control amount in the selected control direction with the selected degree of freedom, and outputs the control command to the robot controller 40a.

ステップS28において、変化情報生成部551は、ハンド31aが単位制御量だけ移動した後、撮像装置21,22から実画像を取得する。   In step S28, the change information generation unit 551 acquires a real image from the imaging devices 21 and 22 after the hand 31a has moved by the unit control amount.

ステップS29において、変化情報生成部551は、ステップS28で取得した実画像から抽出された半田ごて2aの特徴点の座標を画像処理部53から取得する。   In step S29, the change information generation unit 551 acquires from the image processing unit 53 the coordinates of the feature points of the soldering iron 2a extracted from the actual image acquired in step S28.

ステップS30において、変化情報生成部551は、ステップS28で取得した実画像上の半田ごて2aの状態と先頭フレーム上の半田ごて2aの状態との偏差を算出する。   In step S30, the change information generation unit 551 calculates a deviation between the state of the soldering iron 2a on the actual image acquired in step S28 and the state of the soldering iron 2a on the top frame.

ステップS31において、変化情報生成部551は、ハンド31aを元の状態(直近のステップS27の前の状態)に戻すための制御指令を生成し、ロボットコントローラ40aに出力する。これにより、半田ごて2aは、ステップS27の前の状態に戻る。   In step S31, the change information generation unit 551 generates a control command for returning the hand 31a to the original state (the state before the latest step S27), and outputs the control command to the robot controller 40a. Thereby, the soldering iron 2a returns to the state before step S27.

ステップS32において、変化情報生成部551は、未選択の制御方向があるか判定する。未選択の制御方向がある場合(ステップS32でYES)、処理はステップS26に戻る。   In step S32, the change information generation unit 551 determines whether there is an unselected control direction. If there is an unselected control direction (YES in step S32), the process returns to step S26.

未選択の制御方向がない場合(ステップS32でNO)、ステップS33において、変化情報生成部551は、未選択の自由度があるか判定する。未選択の自由度がある場合(ステップS33でYES)、処理はステップS25に戻る。   If there is no unselected control direction (NO in step S32), in step S33, the change information generation unit 551 determines whether there is an unselected degree of freedom. If there is an unselected degree of freedom (YES in step S33), the process returns to step S25.

未選択の自由度がない場合(ステップS33でNO)、ステップS34において、変化情報生成部551は、最小偏差に対応する自由度および制御方向に単位制御量だけハンド31aを移動するように、ロボットコントローラ40aを介してロボット30aを制御する。ステップS34の後、処理はステップS22に戻る。   When there is no unselected degree of freedom (NO in step S33), in step S34, the change information generating unit 551 moves the hand 31a by the unit control amount in the degree of freedom corresponding to the minimum deviation and the control direction. The robot 30a is controlled via the controller 40a. After step S34, the process returns to step S22.

<C−2.ロボットの制御>
図18を参照して、視覚サーボを用いた半田付け制御の処理の流れについて説明する。図18は、視覚サーボを用いた半田付け制御の処理の流れの一例を示すフローチャートである。
<C-2. Robot control>
With reference to FIG. 18, the flow of the soldering control process using the visual servo will be described. FIG. 18 is a flowchart illustrating an example of the flow of soldering control processing using visual servoing.

まずステップS41において、制御装置50は、全ての制御部(第1制御部55a、第2制御部55b、第3制御部55cおよび第4制御部55d)の終了判定部555から終了通知が出力されているか否かを判定する。全ての制御部の終了判定部555から終了通知が出力されている場合(ステップS41でYES)、処理を終了する。   First, in step S41, the control device 50 outputs an end notification from the end determination unit 555 of all the control units (the first control unit 55a, the second control unit 55b, the third control unit 55c, and the fourth control unit 55d). Is determined. When the end notification has been output from the end determination units 555 of all the control units (YES in step S41), the process ends.

全ての制御部の終了判定部555から終了通知が出力されていない場合(ステップS41でNO)、ステップS42において、制御装置50は、撮像装置21,22によって撮像された実画像を取得する。ステップS42は撮像周期ごとに行なわれる。   When the end notification has not been output from the end determination units 555 of all the control units (NO in step S41), in step S42, the control device 50 acquires the actual images captured by the imaging devices 21 and 22. Step S42 is performed for each imaging cycle.

ステップS43において、画像処理部53は、テンプレートマッチングにより、実画像および目標フレームから全ての対象物(半田ごて2a、半田フィーダ2b、電線2c、パッド2dおよび溶融半田2e)を検出し、各対象物の特徴点の画像上の座標を抽出する。   In step S43, the image processing unit 53 detects all objects (the soldering iron 2a, the solder feeder 2b, the electric wire 2c, the pad 2d, and the molten solder 2e) from the actual image and the target frame by template matching, and The coordinates of the feature points of the object on the image are extracted.

ステップS44において、目標フレーム選択部54は、第1基準動画および第2基準動画から目標フレームを選択する。   In step S44, the target frame selection unit 54 selects a target frame from the first reference moving image and the second reference moving image.

ステップS45において、目標フレーム選択部54は、目標フレームを教示範囲内に含む対象物を特定する。目標フレーム選択部54は、特定した対象物を制御する制御部(第1制御部55a、第2制御部55b、第3制御部55cおよび第4制御部55dの少なくとも1つ)に対して制御指示を出力する。   In step S45, the target frame selection unit 54 specifies an object including the target frame within the teaching range. The target frame selection unit 54 issues a control instruction to a control unit (at least one of the first control unit 55a, the second control unit 55b, the third control unit 55c, and the fourth control unit 55d) that controls the specified target object. Is output.

ステップS46において、制御指示を受けた制御部は、対象ロボットの制御を行う。ステップS46の後、処理はステップS41に戻る。ステップS4でNOである場合、ステップS42〜S46の一連処理が撮像周期毎に繰り返される。また、このとき、ステップS41でNOである場合、ステップS46による対象ロボットの制御を行っている間に、次の実画像を取得するステップS42を開始してもよい。これにより、対象ロボットの動作を停止させることなく、最新の実画像に応じて対象ロボットが制御され続ける。その結果、対象物の状態を速く変化させることができる。   In step S46, the control unit that has received the control instruction controls the target robot. After step S46, the process returns to step S41. If NO in step S4, a series of processing in steps S42 to S46 is repeated for each imaging cycle. Further, at this time, if NO in step S41, step S42 of acquiring the next actual image may be started while the target robot is being controlled in step S46. Thus, the target robot is continuously controlled according to the latest actual image without stopping the operation of the target robot. As a result, the state of the object can be changed quickly.

<C−3.目標フレームの選択>
図19および図20を参照して、目標フレーム選択部54による目標フレームの選択処理の流れについて説明する。図19は、図18に示すステップS44のサブルーチンの処理の流れを示すフローチャートである。図20は、最近接フレームと目標フレームとの関係を示す図である。
<C-3. Select target frame>
With reference to FIG. 19 and FIG. 20, the flow of the target frame selection processing by the target frame selection unit 54 will be described. FIG. 19 is a flowchart showing the flow of the processing of the subroutine of step S44 shown in FIG. FIG. 20 is a diagram illustrating the relationship between the closest frame and the target frame.

まずステップS51において、目標フレーム選択部54は、第1基準動画および第2基準動画の各フレームから抽出された全ての対象物の特徴点の座標を画像処理部53から取得する。   First, in step S51, the target frame selection unit 54 acquires, from the image processing unit 53, the coordinates of feature points of all objects extracted from each frame of the first reference moving image and the second reference moving image.

ステップS52において、目標フレーム選択部54は、撮像装置21,22によって撮像された実画像から抽出された全ての対象物の特徴点の座標を画像処理部53から取得する。   In step S52, the target frame selection unit 54 acquires from the image processing unit 53 the coordinates of the feature points of all the objects extracted from the actual images captured by the imaging devices 21 and 22.

ステップS53において、目標フレーム選択部54は、1回目の目標フレームの選択が完了しているか否かを判定する。   In step S53, the target frame selection unit 54 determines whether the first target frame selection has been completed.

1回目の目標フレームの選択が完了している場合(ステップS53でYES)、ステップS54において、目標フレーム選択部54は、前回の目標フレームがいずれかの対象物に対応する教示範囲の最終フレームであるか否かを判定する。   If the first target frame selection has been completed (YES in step S53), in step S54, the target frame selecting unit 54 determines that the previous target frame is the last frame in the teaching range corresponding to any one of the objects. It is determined whether or not there is.

前回の目標フレームが最終フレームである場合(ステップS54でYES)、処理はステップS55に移る。ステップS55において、目標フレーム選択部54は、当該最終フレームが属する教示範囲に対応する対象物について、実画像上の状態と最終フレーム上の状態との偏差を算出し、偏差が閾値未満であるか否かを判定する。偏差は、たとえば、実画像および最終フレームにおける対象物の対応する特徴点同士の距離の平均である。   If the previous target frame is the last frame (YES in step S54), the process proceeds to step S55. In step S55, the target frame selecting unit 54 calculates a deviation between the state on the real image and the state on the final frame for the target corresponding to the teaching range to which the final frame belongs, and determines whether the deviation is less than the threshold. Determine whether or not. The deviation is, for example, an average of distances between corresponding feature points of the object in the real image and the final frame.

偏差が閾値以上である場合(ステップS55でNO)、ステップS56において、目標フレーム選択部54は、前回の目標フレームと同じフレームを目標フレームとして選択する。ステップS56の後、処理は終了する。   If the deviation is equal to or larger than the threshold (NO in step S55), in step S56, the target frame selecting unit 54 selects the same frame as the previous target frame as the target frame. After step S56, the process ends.

偏差が閾値未満である場合(ステップS55でYES)、対象物の状態が最終フレーム上の状態に到達したと判定され、処理はステップS57に移る。1回目の目標フレームの選択が完了していない場合(ステップS53でNO)、および前回の目標フレームが最終フレームでない場合(ステップS54でNO)も、処理はステップS57に移る。   If the deviation is less than the threshold (YES in step S55), it is determined that the state of the target object has reached the state on the last frame, and the process proceeds to step S57. If the first target frame selection has not been completed (NO in step S53), and if the previous target frame is not the last frame (NO in step S54), the process proceeds to step S57.

ステップS57において、目標フレーム選択部54は、実画像上の全ての対象物の状態と各フレーム上の全ての対象物の状態との偏差を算出し、最小偏差のフレームを最近接フレームとして特定する。偏差は、たとえば、実画像および各フレームにおける対象物の対応する特徴点同士の距離の平均である。   In step S57, the target frame selection unit 54 calculates the deviation between the state of all objects on the real image and the state of all objects on each frame, and specifies the frame with the minimum deviation as the closest frame. . The deviation is, for example, an average of distances between corresponding feature points of the object in the real image and each frame.

具体的には、目標フレーム選択部54は、撮像装置21によって撮像された実画像上の全ての対象物の状態と第1基準動画のk番目のフレーム上の全ての対象物の状態との第1偏差を算出する。さらに、目標フレーム選択部54は、撮像装置22によって撮像された実画像上の全ての対象物の状態と第2基準動画のk番目のフレーム上の全ての対象物の状態との第2偏差を算出する。目標フレーム選択部54は、第1偏差と第2偏差との平均をk番目のフレームに対応する偏差として算出する。   Specifically, the target frame selection unit 54 determines the state of all the objects on the real image captured by the imaging device 21 and the state of all the objects on the k-th frame of the first reference moving image. Calculate one deviation. Further, the target frame selection unit 54 calculates a second deviation between the states of all the objects on the real image captured by the imaging device 22 and the states of all the objects on the k-th frame of the second reference moving image. calculate. The target frame selection unit 54 calculates the average of the first deviation and the second deviation as the deviation corresponding to the k-th frame.

ステップS58において、目標フレーム選択部54は、最近接フレームから所定数だけ後のフレームまでに、いずれかの教示範囲の最終フレームがあるか否かを判定する。   In step S58, the target frame selection unit 54 determines whether or not there is a last frame in any of the teaching ranges up to a predetermined number of frames after the closest frame.

最終フレームがある場合(ステップS58でYES)、ステップS59において、目標フレーム選択部54は、当該最終フレームを目標フレームとして選択する。なお、最近接フレームから所定数だけ後のフレームまでに複数の最終フレームがある場合、目標フレーム選択部54は、当該複数の最終フレームのうち最もフレーム番号の小さい最終フレームを選択する。   If there is a final frame (YES in step S58), in step S59, target frame selecting section 54 selects the final frame as a target frame. When there are a plurality of final frames from the closest frame to a frame that is a predetermined number later, the target frame selecting unit 54 selects the last frame having the smallest frame number among the plurality of final frames.

最終フレームがない場合(ステップS58でNO)、ステップS60において、目標フレーム選択部54は、最近接フレームから所定数だけ後のフレームを目標フレームとして選択する。ステップS60の後、目標フレームの選択処理は終了する。   If there is no last frame (NO in step S58), in step S60, the target frame selection unit 54 selects a frame that is a predetermined number later than the closest frame as the target frame. After step S60, the target frame selection process ends.

<C−4.制御部の処理>
図21を参照して、図18のステップS46のサブルーチンの処理について説明する。図21は、図18に示すステップS46のサブルーチンの処理の流れを示すフローチャートである。
<C-4. Processing of control unit>
The processing of the subroutine of step S46 in FIG. 18 will be described with reference to FIG. FIG. 21 is a flowchart showing the flow of the processing of the subroutine of step S46 shown in FIG.

まずステップS61において、終了判定部555は、目標フレームが教示範囲の最終フレームであるか否かを判定する。   First, in step S61, the end determination unit 555 determines whether the target frame is the last frame in the teaching range.

目標フレームが最終フレームである場合(ステップS61でYES)、ステップS62において、終了判定部555は、実画像上の対象物の状態と最終フレーム上の対象物の状態との偏差が閾値未満か否かを判定する。   If the target frame is the final frame (YES in step S61), in step S62, the end determination unit 555 determines whether the deviation between the state of the target on the real image and the state of the target on the final frame is less than a threshold. Is determined.

偏差が閾値未満である場合(ステップS62でYES)、ステップS63において、終了判定部555は、終了通知を出力する。ステップS63の後、処理は終了する。   When the deviation is less than the threshold (YES in step S62), in step S63, the termination determination unit 555 outputs a termination notification. After step S63, the process ends.

目標フレームが最終フレームではない場合(ステップS61でNO)、および、偏差が閾値以上である場合(ステップS62でNO)、処理はステップS64に移る。   If the target frame is not the last frame (NO in step S61) and if the deviation is equal to or larger than the threshold (NO in step S62), the process proceeds to step S64.

ステップS64において、算出部553は、目標フレームに対応する第1変化情報セット5521および第2変化情報セット5522に基づいて、実画像上の対象物の状態を目標フレーム上の対象物の状態に近づけるための複数の自由度の各々の制御量を算出する。   In step S64, the calculation unit 553 brings the state of the target on the real image closer to the state of the target on the target frame based on the first change information set 5521 and the second change information set 5522 corresponding to the target frame. For each of a plurality of degrees of freedom for the calculation.

ステップS65において、指令部554は、算出された制御量を示す制御指令を生成し、対象ロボットコントローラに出力する。ステップS65の後、処理は終了する。   In step S65, the command unit 554 generates a control command indicating the calculated control amount, and outputs the control command to the target robot controller. After step S65, the process ends.

<C−5.解析処理>
図22を参照して、解析部59の処理について説明する。図22は、解析部の処理の流れを示すフローチャートである。
<C-5. Analysis processing>
With reference to FIG. 22, the processing of the analysis unit 59 will be described. FIG. 22 is a flowchart illustrating the flow of the processing of the analysis unit.

まずステップS71において、解析部59は、入力装置534(図3参照)に解析指示が入力されたか否かを判定する。作業者は、あるパッド2dに対する半田付け制御の解析画面を確認したい場合、当該パッド2dを識別するパッド識別番号と解析指示とを入力装置534に入力する。   First, in step S71, the analysis unit 59 determines whether an analysis instruction has been input to the input device 534 (see FIG. 3). When the operator wants to check the analysis screen of the soldering control for a certain pad 2d, the operator inputs a pad identification number for identifying the pad 2d and an analysis instruction to the input device 534.

解析指示が入力されていない場合(ステップS71でNO)、処理はステップS71に戻る。   If the analysis instruction has not been input (NO in step S71), the process returns to step S71.

解析指示が入力された場合(ステップS71でYES)、ステップS72において、解析部59は、第1基準動画、第2基準動画、第1テーブルおよび第2テーブルを基準動画記憶部51から読み出す。さらに、解析部59は、入力されたパッド識別情報に対応する第1実動画、第2実動画、第3テーブルおよび第4テーブルを実動画記憶部57から読み出す。   When the analysis instruction is input (YES in step S71), in step S72, the analysis unit 59 reads the first reference moving image, the second reference moving image, the first table, and the second table from the reference moving image storage unit 51. Further, the analysis unit 59 reads the first real moving image, the second real moving image, the third table, and the fourth table corresponding to the input pad identification information from the real moving image storage unit 57.

ステップS73において、解析部59は、ステップS72で読み出した情報に基づいて、図12に示されるような解析画面62を表示装置60に表示させる。   In step S73, the analysis unit 59 causes the display device 60 to display an analysis screen 62 as shown in FIG. 12 based on the information read in step S72.

ステップS74において、解析部59は、終了指示が入力されたか否かを判定する。終了指示が入力されていない場合(ステップS74でNO)、ステップS75において、解析部59は、ボタン607〜612のいずれかが操作されたか否かを判定する。   In step S74, the analysis unit 59 determines whether an end instruction has been input. When the end instruction has not been input (NO in step S74), in step S75, the analysis unit 59 determines whether any of the buttons 607 to 612 has been operated.

ボタン607〜612のいずれかが操作された場合(ステップS75でYES)、ステップS76において、解析部59は、操作されたボタンに応じて画面を遷移させる。ステップS76の後、処理はステップS74に戻る。いずれかのボタンも操作されない場合(ステップS75でNO)も、処理はステップS74に戻る。   When any of the buttons 607 to 612 is operated (YES in step S75), in step S76, the analysis unit 59 shifts the screen according to the operated button. After step S76, the process returns to step S74. If none of the buttons is operated (NO in step S75), the process returns to step S74.

終了指示が入力された場合(ステップS74でYES)、解析部59は、解析画面62の表示を終了する。   When the end instruction has been input (YES in step S74), analysis unit 59 ends the display of analysis screen 62.

<C−6.作用・効果>
以上のように、制御システム1は、対象物の状態を変化させるためのロボット30a〜30dと、対象物を撮像するための撮像装置21,22と、第1制御部55a〜第4制御部55dと、解析部59とを備える。第1制御部55a〜第4制御部55dは、撮像装置21,22によって撮像される実画像上の対象物の状態の変化が、予め作成された第1,第2基準動画上の対象物の状態の変化にそれぞれ近づくように、対象ロボットを制御する。解析部59は、実画像から抽出される特徴量の時間変化を示す実波形621と、基準動画のフレームから抽出される特徴量の時間変化を示す基準波形622との両方を表示装置60の解析画面62上に表示させる。
<C-6. Action / Effect>
As described above, the control system 1 includes the robots 30a to 30d for changing the state of the target, the imaging devices 21 and 22 for imaging the target, and the first control unit 55a to the fourth control unit 55d. And an analysis unit 59. The first control unit 55a to the fourth control unit 55d determine whether a change in the state of an object on a real image captured by the imaging devices 21 and 22 is a change in the state of the object on the first and second reference moving images created in advance. The target robot is controlled so as to approach the state change. The analysis unit 59 analyzes the display device 60 for both the actual waveform 621 indicating the temporal change of the feature extracted from the actual image and the reference waveform 622 indicating the temporal change of the feature extracted from the frame of the reference moving image. It is displayed on the screen 62.

視覚サーボを用いたロボット30a〜30dの制御が正常に実行されている場合、撮像装置21,22によって撮像される実画像上の対象物の状態の変化は、第1,第2基準動画上の対象物の状態の変化にそれぞれ追従する。そのため、実波形621は、基準波形622に近似する。したがって、作業者は、解析画面62に表示される実波形621と基準波形622とを確認することにより、視覚サーボを用いたロボット30a〜30dの制御が正常に実行されている否かを判定しやすくなる。たとえば、作業者は、実波形621と基準波形622との偏差が大きい場合に、視覚サーボを用いたロボット30a〜30dの制御に何等かの異常が生じていると判定できる。   When the control of the robots 30a to 30d using the visual servo is normally performed, the change in the state of the target on the real image captured by the imaging devices 21 and 22 is caused by the change in the state of the first and second reference moving images. It follows each change in the state of the object. Therefore, the actual waveform 621 approximates the reference waveform 622. Therefore, the worker checks the actual waveform 621 and the reference waveform 622 displayed on the analysis screen 62 to determine whether the control of the robots 30a to 30d using the visual servo is normally performed. It will be easier. For example, when the deviation between the actual waveform 621 and the reference waveform 622 is large, the operator can determine that some abnormality has occurred in the control of the robots 30a to 30d using the visual servo.

<D.変形例>
<D−1.変形例1>
図23は、変形例1における解析画面の一例を示す図である。図23に示す例の解析画面63は、図12に示す解析画面62と比較して、ボタン613と、ロボットの基準位置からの移動量の時間変化を示す波形629,630とを含む点で異なる。波形629は、実画像を撮像したときの移動量の時間変化を示す。波形630は、基準動画通りに対象物の状態が変化するときの移動量の時間変化を示す。
<D. Modification>
<D-1. Modification 1>
FIG. 23 is a diagram illustrating an example of the analysis screen according to the first modification. The analysis screen 63 of the example shown in FIG. 23 is different from the analysis screen 62 shown in FIG. 12 in that it includes a button 613 and waveforms 629 and 630 indicating a time change of the movement amount of the robot from the reference position. . A waveform 629 indicates a time change of the movement amount when the real image is captured. A waveform 630 indicates a temporal change of the movement amount when the state of the target object changes according to the reference moving image.

図23に示されるような解析画面63を表示するために、基準動画記憶部51は、図24に示す第5テーブルをさらに記憶する。実動画記憶部57は、図25に示す第6テーブルをさらに記憶する。   In order to display the analysis screen 63 as shown in FIG. 23, the reference moving image storage unit 51 further stores a fifth table shown in FIG. The actual moving image storage unit 57 further stores the sixth table shown in FIG.

図24は、変形例1に係る基準動画記憶部が記憶する第5テーブルの一例を示す図である。図25は、変形例1に係る実動画記憶部が記憶する第6テーブルの一例を示す図である。   FIG. 24 is a diagram illustrating an example of a fifth table stored in the reference moving image storage unit according to the first modification. FIG. 25 is a diagram illustrating an example of a sixth table stored in the actual moving image storage unit according to the first modification.

図24に示されるように、基準動画記憶部51は、第1基準動画および第2基準動画の全てのフレーム(1〜M番目のフレーム)の時刻と、ロボット30a〜30dごとの移動量情報とを対応付けた第5テーブルを記憶する。移動量情報は、複数の自由度の各々について、基準位置姿勢からの移動量を示す。たとえば、ロボット30aの場合、移動量情報は、X方向、Y方向およびZ方向の並進移動量と、ピッチ方向、ヨー方向およびロール方向の並進移動量とを示す。   As shown in FIG. 24, the reference moving image storage unit 51 stores the times of all the frames (1st to Mth frames) of the first reference moving image and the second reference moving image, the movement amount information for each of the robots 30a to 30d, and Is stored in a fifth table. The movement amount information indicates a movement amount from the reference position and orientation for each of the plurality of degrees of freedom. For example, in the case of the robot 30a, the movement amount information indicates the amount of translation in the X, Y, and Z directions, and the amount of translation in the pitch, yaw, and roll directions.

基準動画記憶部51が記憶する移動量情報は、変化情報生成部551が第1変化情報および第2変化情報を生成する際に作成される。上述したように、変化情報生成部551は、第1基準動画および第2基準動画の1〜M番目のフレームごとに、当該フレームと同じ実画像が得られるように対象ロボットを制御する。変化情報生成部551は、対象ロボットの制御量に基づいて、第1基準動画および第2基準動画の1〜M番目のフレームごとに移動量情報を生成する。   The movement amount information stored in the reference moving image storage unit 51 is created when the change information generation unit 551 generates the first change information and the second change information. As described above, the change information generation unit 551 controls the target robot so that the same real image as the frame is obtained for each of the first to Mth frames of the first reference moving image and the second reference moving image. The change information generation unit 551 generates movement amount information for each of the first to Mth frames of the first reference moving image and the second reference moving image based on the control amount of the target robot.

もしくは、ロボット30a〜30dによって対象物のサンプルの状態を変化させることにより第1基準動画および第2基準動画が作成される場合には、第1基準動画および第2基準動画を作成するときの各ロボットの動作から移動量情報が生成されてもよい。   Alternatively, when the first reference moving image and the second reference moving image are created by changing the state of the sample of the target object by the robots 30a to 30d, each of the first reference moving image and the second reference moving image is generated. Movement amount information may be generated from the operation of the robot.

図25に示されるように、実動画記憶部57は、撮像装置21,22の撮像時刻と、ロボット30a〜30dごとの移動量情報とを対応付けた第6テーブルを記憶する。実動画記憶部57が記憶する移動量情報は、第1制御部55a、第2制御部55b、第3制御部55cおよび第4制御部55dによって生成される。   As shown in FIG. 25, the actual moving image storage unit 57 stores a sixth table in which the imaging times of the imaging devices 21 and 22 are associated with the movement amount information for each of the robots 30a to 30d. The moving amount information stored in the actual moving image storage unit 57 is generated by the first control unit 55a, the second control unit 55b, the third control unit 55c, and the fourth control unit 55d.

第1制御部55a、第2制御部55b、第3制御部55cおよび第4制御部55dの各制御部は、対象ロボットに設けられる複数のエンコーダからのパルス信号を受ける。各制御部は、パルス信号に含まれるパルス数をカウントすることにより、移動量情報を生成する。   Each of the first control unit 55a, the second control unit 55b, the third control unit 55c, and the fourth control unit 55d receives pulse signals from a plurality of encoders provided in the target robot. Each control unit generates movement amount information by counting the number of pulses included in the pulse signal.

ボタン613は、波形629,630で示される移動量を切り替えるためのボタンである。解析部59は、図23に示すボタン613が操作されると、ロボットおよび自由度の選択指示の入力を促すポップアップ画面を表示させる。そして、解析部59は、入力された選択指示に従ってロボットおよび自由度を選択する。   The button 613 is a button for switching the amount of movement indicated by the waveforms 629 and 630. When the button 613 shown in FIG. 23 is operated, the analysis unit 59 displays a pop-up screen that prompts the user to input an instruction to select a robot and a degree of freedom. Then, the analysis unit 59 selects the robot and the degree of freedom according to the input selection instruction.

解析部59は、実動画記憶部57が記憶する第5テーブルから、選択されたロボットおよび自由度の移動量を読み出し、当該移動量の時間変化を示す波形629を生成する。すなわち、波形629で示される移動量は、選択された自由度の方向に沿って選択されたロボットが基準位置から移動した量である。解析部59は、生成した波形629を領域601に表示させるとともに、マーク623で指定される時刻の移動量を領域631に表示させる。領域631は、マーク623と波形629との交差点の近傍である。   The analysis unit 59 reads the selected robot and the movement amount of the degree of freedom from the fifth table stored in the actual moving image storage unit 57, and generates a waveform 629 indicating a time change of the movement amount. That is, the movement amount indicated by the waveform 629 is an amount by which the selected robot has moved from the reference position along the direction of the selected degree of freedom. The analysis unit 59 causes the generated waveform 629 to be displayed in the area 601 and the movement amount at the time specified by the mark 623 to be displayed in the area 631. The region 631 is near the intersection of the mark 623 and the waveform 629.

さらに、解析部59は、基準動画記憶部51が記憶する第1テーブルから、選択されたロボットおよび自由度の移動量を読み出し、当該移動量の時間変化を示す波形630を生成する。解析部59は、生成した波形630を領域602に表示させるとともに、マーク624で指定される時刻の移動量を領域632に表示させる。領域632は、マーク624と波形630との交差点の近傍である。   Further, the analysis unit 59 reads the selected robot and the movement amount of the degree of freedom from the first table stored in the reference moving image storage unit 51, and generates a waveform 630 indicating a time change of the movement amount. The analysis unit 59 causes the generated waveform 630 to be displayed in the area 602 and the movement amount at the time specified by the mark 624 to be displayed in the area 632. The area 632 is near the intersection of the mark 624 and the waveform 630.

変形例1によれば、作業者は、波形629と波形630との偏差を確認することにより、ロボットの異常の有無を判定できる。その結果、作業者は、実波形621と基準波形622との偏差が大きい原因を把握しやすくなる。   According to the first modification, the operator can determine whether there is an abnormality in the robot by checking the deviation between the waveforms 629 and 630. As a result, the operator can easily understand the cause of the large deviation between the actual waveform 621 and the reference waveform 622.

<D−2.変形例2>
図26は、変形例2に係る解析画面の一例を示す図である。解析部59は、ボタン611が操作されると、時間軸上の時刻ごとに、実波形621と基準波形622との特徴量の差異を示すパラメータ値を算出する。解析部59は、図26に示されるように、算出したパラメータ値の変化を示す波形633を解析画面64に表示させる。さらに、解析部59は、マーク623で指定される時刻におけるパラメータ値を領域625に表示させる。パラメータ値は、たとえば、実波形621と基準波形622との特徴量の差または比である。
<D-2. Modification 2>
FIG. 26 is a diagram illustrating an example of an analysis screen according to the second modification. When the button 611 is operated, the analysis unit 59 calculates a parameter value indicating a difference in feature amount between the actual waveform 621 and the reference waveform 622 at each time on the time axis. The analysis unit 59 causes the analysis screen 64 to display a waveform 633 indicating a change in the calculated parameter value, as shown in FIG. Further, the analysis unit 59 causes the parameter value at the time designated by the mark 623 to be displayed in the area 625. The parameter value is, for example, a difference or a ratio of a feature amount between the actual waveform 621 and the reference waveform 622.

変形例2によれば、作業者は、波形633または領域625のパラメータ値を確認することにより、半田付け制御中のいずれの時間帯で、実波形621と基準波形622との偏差が大きくなっているかを容易に把握することができる。なお、解析部59は、波形633と領域625のパラメータ値とのいずれか一方のみを表示させてもよい。   According to the second modification, the operator confirms the parameter value of the waveform 633 or the region 625, so that the deviation between the actual waveform 621 and the reference waveform 622 increases in any time zone during the soldering control. Can be easily grasped. Note that the analysis unit 59 may display only one of the waveform 633 and the parameter value of the area 625.

さらに、図26に示されるように、解析画面64は、ボタン614を含んでもよい。ボタン614は、実波形621と基準波形622との偏差が大きい時刻をサーチするためのボタンである。   Further, as shown in FIG. 26, the analysis screen 64 may include a button 614. The button 614 is a button for searching for a time at which the deviation between the actual waveform 621 and the reference waveform 622 is large.

解析部59は、ボタン614が操作されると、パラメータ値が最大となる時刻を指定時刻として選択する。そして、解析部59は、マーク623,624を指定時刻の位置まで移動させる。その結果、領域603には指定時刻に対応する実画像が表示され、領域604には指定時刻に対応するフレームが表示される。   When the button 614 is operated, the analysis unit 59 selects the time at which the parameter value becomes maximum as the designated time. Then, the analysis unit 59 moves the marks 623 and 624 to the position at the designated time. As a result, an actual image corresponding to the designated time is displayed in the area 603, and a frame corresponding to the designated time is displayed in the area 604.

これにより、作業者は、実波形621と基準波形622との特徴量の差異が大きいときの画像を確認することができ、ロボットの異常の原因を把握しやすくなる。   Accordingly, the operator can check the image when the difference between the characteristic amounts of the actual waveform 621 and the reference waveform 622 is large, and it is easy to grasp the cause of the abnormality of the robot.

なお、解析部59は、パラメータ値が閾値を超える時刻を指定時刻として選択してもよい。パラメータ値が閾値を超える時刻が複数存在する場合、解析部59は、当該複数の時刻のうちの1つを指定時刻として選択する。   Note that the analysis unit 59 may select a time at which the parameter value exceeds the threshold value as the designated time. When there are a plurality of times at which the parameter value exceeds the threshold, the analysis unit 59 selects one of the plurality of times as the designated time.

ボタン609が操作されると、解析部59は、実動画(第1実動画または第2実動画)のうち指定時刻を含む一部の期間の映像を領域603で再生させ、基準動画(第1基準動画または第2基準動画)のうち当該期間の映像を領域604で再生させてもよい。これにより、作業者は、半田付け制御の異常の原因をさらに把握しやすくなる。   When the button 609 is operated, the analysis unit 59 causes the video of a part of the real moving image (the first real moving image or the second real moving image) including the designated time to be reproduced in the area 603, and the reference moving image (the first real moving image or the first real moving image). The video of the period in the reference video or the second reference video) may be reproduced in the area 604. This makes it easier for the operator to grasp the cause of the abnormality in the soldering control.

変形例2は、上記の変形例1にも適用できる。すなわち、解析部59は、時間軸上の時刻ごとに、波形629と波形630との移動量の差異を示すパラメータ値を算出してもよい。解析部59は、当該パラメータ値および当該パラメータ値の時間変化を示す波形の少なくとも一方を解析画面63に表示させる。もしくは、解析部59は、パラメータ値が最大となる時刻を指定時刻として選択してもよい。   Modification 2 can also be applied to Modification 1 described above. That is, the analysis unit 59 may calculate a parameter value indicating a difference in the movement amount between the waveform 629 and the waveform 630 for each time on the time axis. The analysis unit 59 causes the analysis screen 63 to display at least one of the parameter value and a waveform indicating a time change of the parameter value. Alternatively, the analysis unit 59 may select the time at which the parameter value becomes maximum as the designated time.

<D−3.変形例3>
図27は、変形例3に係る解析画面の一例を示す図である。図27に示されるように、解析画面65は、移動方向が示される対象物を選択するためのボタン615と、選択された対象物の移動方向を示す矢印634とを含む。
<D-3. Modification 3>
FIG. 27 is a diagram illustrating an example of an analysis screen according to the third modification. As shown in FIG. 27, the analysis screen 65 includes a button 615 for selecting an object whose movement direction is indicated, and an arrow 634 indicating the movement direction of the selected object.

矢印634を表示するために、実動画記憶部57は、第1実動画を構成する実画像と各対象物の画像上の移動方向とを対応付けた第7テーブルと、第2実動画を構成する実画像と各対象物の画像上の移動方向とを対応付けた第8テーブルとを記憶する。   In order to display the arrow 634, the real moving image storage unit 57 configures a seventh table in which real images constituting the first real moving image are associated with moving directions of the respective objects on the image, and a second real moving image. And an eighth table in which the actual image to be processed is associated with the moving direction of each object on the image.

図28は、変形例3に係る実動画記憶部が記憶する第7テーブルの一例を示す図である。図28に示す例の第7テーブルでは、実画像を識別する画像ファイル名と、各対象物の移動方向を示す移動方向情報とが対応付けられている。第8テーブルも図28に示す第7テーブルと同様のデータ構造を有する。   FIG. 28 is a diagram illustrating an example of a seventh table stored in the actual moving image storage unit according to the third modification. In the seventh table of the example shown in FIG. 28, the image file name for identifying the real image is associated with the moving direction information indicating the moving direction of each object. The eighth table also has the same data structure as the seventh table shown in FIG.

上述したように、算出部553は、撮像装置21から実画像を取得するたびに、第1差分ベクトル6a〜6g(図11参照)を算出する。算出部553は、第1差分ベクトルが小さくなるように、対象ロボットの制御量を算出する。したがって、対象物は、実画像上において、第1差分ベクトルの平均の方向に移動することになる。そのため、算出部553は、第1差分ベクトルの平均の方向を示す情報を移動方向情報として生成する。実動画記憶部57は、算出部553によって生成された移動方向情報を含む第7,第8テーブルを記憶する。   As described above, the calculation unit 553 calculates the first difference vectors 6a to 6g (see FIG. 11) each time a real image is acquired from the imaging device 21. The calculation unit 553 calculates the control amount of the target robot such that the first difference vector becomes smaller. Therefore, the target object moves in the direction of the average of the first difference vector on the real image. Therefore, the calculation unit 553 generates information indicating the average direction of the first difference vector as the movement direction information. The actual moving image storage unit 57 stores the seventh and eighth tables including the moving direction information generated by the calculation unit 553.

解析部59は、ボタン615が操作されると、対象物の選択指示を促すポップアップ画面を表示させる。解析部59は、選択された対象物とマーク623で指定される時刻の実画像とに対応する移動方向情報を実動画記憶部57から読み出す。なお、解析部59は、実波形621が撮像装置21によって撮像された実画像から抽出された特徴量を示している場合、第7テーブルから移動方向情報を読み出す。解析部59は、実波形621が撮像装置22によって撮像された実画像から抽出された特徴量を示している場合、第8テーブルから移動方向情報を読み出す。   When the button 615 is operated, the analysis unit 59 displays a pop-up screen for prompting an instruction to select an object. The analysis unit 59 reads the moving direction information corresponding to the selected object and the real image at the time specified by the mark 623 from the real moving image storage unit 57. When the actual waveform 621 indicates the feature amount extracted from the actual image captured by the imaging device 21, the analysis unit 59 reads the movement direction information from the seventh table. When the actual waveform 621 indicates the feature amount extracted from the actual image captured by the imaging device 22, the analysis unit 59 reads the movement direction information from the eighth table.

解析部59は、読み出した移動方向情報に基づいて、対象物の移動方向を示す矢印634を生成し、生成した矢印634を領域603に表示させる。これにより、作業者は、対象物の移動方向を把握しやすくなる。   The analysis unit 59 generates an arrow 634 indicating the moving direction of the target object based on the read moving direction information, and causes the generated arrow 634 to be displayed in the area 603. This makes it easier for the operator to grasp the moving direction of the object.

なお、解析部59は、ボタン615が操作されるたびに、移動方向が示される対象物を順次切り替えてもよい。   Note that the analysis unit 59 may sequentially switch the object whose movement direction is indicated each time the button 615 is operated.

<D−4.変形例4>
上記の説明では、制御システム1は、半田付け制御を行なう。しかしながら、制御システム1は、別の対象物に対する制御を行なってもよい。
<D-4. Modification 4>
In the above description, the control system 1 performs soldering control. However, the control system 1 may perform control on another object.

図29は、変形例4に係る制御システムの対象物を示す模式図である。変形例4に係る制御システム1は、工業製品の生産ラインなどにおいて、オスコネクタ7aをメスコネクタ7bに挿入することにより、オスコネクタ7aとメスコネクタ7bとを接続させる。   FIG. 29 is a schematic diagram illustrating an object of the control system according to the fourth modification. The control system 1 according to Modification 4 connects the male connector 7a to the female connector 7b by inserting the male connector 7a into the female connector 7b in an industrial product production line or the like.

オスコネクタ7aは、ロボット30aのハンド31aによって把持される。メスコネクタ7bは、ロボット30dのステージ31d上に載置される。   The male connector 7a is gripped by the hand 31a of the robot 30a. The female connector 7b is mounted on the stage 31d of the robot 30d.

なお、ロボット30a〜30dは、たとえば風船のような膨張および収縮する対象物の状態(ここではサイズ)を変化させてもよい。この場合、制御装置50は、ロボットを単位制御量だけ制御したときの対象物の大きさの変化を示す変化情報を取得する。そして、制御装置は、変化情報に基づいて、実画像上の対象物の大きさが目標フレーム上の対象物の大きさに近づくように、ロボットを制御する。   The robots 30a to 30d may change the state (here, the size) of the expanding and contracting target object such as a balloon. In this case, the control device 50 acquires change information indicating a change in the size of the target object when the robot is controlled by the unit control amount. Then, the control device controls the robot based on the change information such that the size of the target on the real image approaches the size of the target on the target frame.

もしくは、ロボット30a〜30dは、対象物に力を加えて、対象物の状態(ここではサイズ)を変化させてもよい。   Alternatively, the robots 30a to 30d may change the state (here, the size) of the target object by applying a force to the target object.

<D−5.その他の変形例>
画像処理部53は、対象物の3D−CADデータを用いて、対象画像から対象物を検出してもよい。
<D-5. Other Modifications>
The image processing unit 53 may detect the target from the target image using the 3D-CAD data of the target.

第1基準動画および第2基準動画は、CG(Computer Graphics)によって作成されてもよい。   The first reference moving image and the second reference moving image may be created by CG (Computer Graphics).

上記の説明では、制御装置50がロボット制御部58および解析部59を備えるものとした。すなわち、制御装置50は、ロボット制御装置として動作するとともに、解析装置としても動作する。しかしながら、解析部59は、制御装置50と通信可能に接続された解析装置に備えられていてもよい。   In the above description, the control device 50 includes the robot control unit 58 and the analysis unit 59. That is, the control device 50 operates as a robot control device and also operates as an analysis device. However, the analysis unit 59 may be provided in an analysis device communicably connected to the control device 50.

≪付記≫
以上のように、実施の形態1〜3および変形例は以下のような開示を含む。
≪Note≫
As described above, the first to third embodiments and the modifications include the following disclosure.

(構成1)
対象物(2a〜2d,7a,7b)の状態を変化させるためのロボット(30a〜30d)と、
前記対象物を撮像するための撮像装置(21,22)と、
前記撮像装置(21,22)によって撮像される実画像上の前記対象物の状態の変化が、予め作成された基準動画上の前記対象物の状態の変化に近づくように、前記ロボット(30a〜30d)を制御するための制御部(58)と、
前記実画像から抽出される特徴量の時間変化を示す第1波形と、前記基準動画のフレームから抽出される前記特徴量の時間変化を示す第2波形との両方を表示装置(60)の画面上に表示させるための解析部(59)とを備える、制御システム(1)。
(Configuration 1)
A robot (30a-30d) for changing the state of the object (2a-2d, 7a, 7b);
An imaging device (21, 22) for imaging the object;
The robots (30a to 30a to 30a to 30d) change the state of the target on a real image captured by the imaging device (21, 22) closer to the change of the state of the target on a previously created reference moving image. A control unit (58) for controlling 30d);
The screen of the display device (60) displays both a first waveform indicating a temporal change of a feature amount extracted from the real image and a second waveform indicating a temporal change of the feature amount extracted from a frame of the reference moving image. A control system (1) including an analysis unit (59) for displaying the information on the display.

(構成2)
前記解析部(59)は、前記第1波形と前記第2波形との時間軸を合わせる、構成1に記載の制御システム(1)。
(Configuration 2)
The control system (1) according to Configuration 1, wherein the analysis unit (59) adjusts a time axis of the first waveform and the second waveform.

(構成3)
前記解析部(59)は、前記時間軸上の時刻ごとに、前記第1波形と前記第2波形との前記特徴量の差異を示すパラメータ値を算出し、前記パラメータ値および前記パラメータ値の時間変化を示す第3波形の少なくとも一方を前記画面上に表示させる、構成2に記載の制御システム(1)。
(Configuration 3)
The analysis unit (59) calculates, for each time on the time axis, a parameter value indicating a difference in the feature amount between the first waveform and the second waveform, and calculates a parameter value and a time of the parameter value. The control system (1) according to Configuration 2, wherein at least one of a third waveform indicating a change is displayed on the screen.

(構成4)
前記解析部(59)は、
前記時間軸上の時刻ごとに、前記第1波形と前記第2波形との前記特徴量の差異を示すパラメータ値を算出し、
算出したパラメータ値に基づいて、前記パラメータ値が最大となる時刻、または、前記パラメータ値が閾値を超える時刻を指定時刻として選択し、
前記指定時刻に対応する前記実画像と、前記基準動画における前記指定時刻のフレームとを前記画面上に同時に表示させる、構成2に記載の制御システム(1)。
(Configuration 4)
The analysis unit (59)
For each time on the time axis, calculate a parameter value indicating a difference between the feature amounts of the first waveform and the second waveform,
Based on the calculated parameter value, the time when the parameter value is the maximum, or the time when the parameter value exceeds a threshold is selected as the designated time,
The control system (1) according to Configuration 2, wherein the real image corresponding to the designated time and the frame at the designated time in the reference moving image are displayed on the screen at the same time.

(構成5)
前記解析部(59)は、
前記時間軸上の指定時刻を受け付け、
前記指定時刻に対応する前記実画像と、前記基準動画における前記指定時刻のフレームとを前記画面上に同時に表示させる、構成2に記載の制御システム(1)。
(Configuration 5)
The analysis unit (59)
Accepting a designated time on the time axis,
The control system (1) according to Configuration 2, wherein the real image corresponding to the designated time and the frame at the designated time in the reference moving image are displayed on the screen at the same time.

(構成6)
前記解析部(59)は、時系列に並べられた前記実画像からなる実動画および前記基準動画の両方における、前記指定時刻を含む一部の期間の映像を前記画面上で同時に再生させる、構成4または5に記載の制御システム(1)。
(Configuration 6)
The analysis unit (59) simultaneously reproduces, on the screen, video of a part of the period including the designated time in both the real moving image composed of the real images arranged in time series and the reference moving image. The control system (1) according to 4 or 5.

(構成7)
前記解析部(59)は、前記実画像を撮像したときの、前記ロボットの基準位置からの移動量の時間変化を示す第4波形と、前記基準動画通りに前記対象物の状態が変化するときの前記移動量の時間変化を示す第5波形との両方を前記画面上に表示させる、構成1から6のいずれかに記載の制御システム(1)。
(Configuration 7)
The analysis unit (59) includes a fourth waveform indicating a time change of a movement amount of the robot from a reference position when the real image is captured, and a state in which the state of the object changes according to the reference moving image. The control system (1) according to any one of Configurations 1 to 6, wherein both the fifth waveform indicating the time change of the movement amount and the fifth waveform are displayed on the screen.

(構成8)
前記ロボット(30a〜30d)は、複数の自由度で前記対象物の状態を変化させ、
前記解析部(59)は、前記複数の自由度のうちの1つの自由度の選択指示を受け付け、
前記移動量は、前記1つの自由度の方向に沿って前記ロボット(30a〜30d)が前記基準位置から移動した量である、構成7に記載の制御システム(1)。
(Configuration 8)
The robot (30a to 30d) changes the state of the object with a plurality of degrees of freedom,
The analysis unit (59) receives an instruction to select one of the degrees of freedom,
The control system (1) according to configuration 7, wherein the movement amount is an amount that the robot (30a to 30d) has moved from the reference position along the direction of the one degree of freedom.

(構成9)
構成1から8のいずれか1項に記載の制御システム(1)に用いられる解析装置であって、
前記解析部(59)を備える、解析装置(50)。
(Configuration 9)
An analysis device used in the control system (1) according to any one of the configurations 1 to 8,
An analysis device (50) comprising the analysis unit (59).

(構成10)
対象物(2a〜2d,7a,7b)を撮像するための撮像装置(21,22)を用いて、前記対象物の状態を変化させるロボット(30a〜30d)を制御する制御方法であって、
前記撮像装置(21,22)によって撮像される実画像上の前記対象物の状態の変化が、予め作成された基準動画上の前記対象物の状態の変化に近づくように、前記ロボット(30a〜30d)を制御するステップと、
前記実画像のフレームから抽出される特徴量の時間変化を示す第1波形と、前記基準動画のフレームから抽出される前記特徴量の時間変化を示す第2波形との両方を表示装置(60)の画面上に表示させるステップとを備える、制御方法。
(Configuration 10)
A control method for controlling a robot (30a to 30d) that changes a state of an object using an imaging device (21, 22) for imaging the object (2a to 2d, 7a, 7b),
The robots (30a to 30a to 30a to 30d) change the state of the target on a real image captured by the imaging device (21, 22) closer to the change of the state of the target on a previously created reference moving image. Controlling 30d);
A display device (60) for displaying both a first waveform indicating a temporal change of a feature amount extracted from the frame of the real image and a second waveform indicating a temporal change of the feature amount extracted from the frame of the reference moving image; Displaying on the screen of (1).

本発明の実施の形態について説明したが、今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。   Although the embodiment of the present invention has been described, the embodiment disclosed this time should be considered as illustrative in all points and not restrictive. The scope of the present invention is defined by the terms of the claims, and is intended to include any modifications within the scope and meaning equivalent to the terms of the claims.

1 制御システム、2a 半田ごて、2b 半田フィーダ、2c 電線、2d パッド、2e 溶融半田、3 基板、7a オスコネクタ、7b メスコネクタ、21,22 撮像装置、30a〜30d ロボット、31a〜31c ハンド、31d ステージ、40a〜40d ロボットコントローラ、50 制御装置、51 基準動画記憶部、52 教示範囲選択部、53 画像処理部、54 目標フレーム選択部、55a 第1制御部、55b 第2制御部、55c 第3制御部、55d 第4制御部、56 実画像取得部、57 実動画記憶部、58 ロボット制御部、59 解析部、60 表示装置、510 プロセッサ、512 RAM、514 表示コントローラ、516 システムコントローラ、518 I/Oコントローラ、520 ハードディスク、522 カメラインターフェイス、522a,522b 画像バッファ、524 入力インターフェイス、526 ロボットコントローラインターフェイス、528 通信インターフェイス、530 メモリカードインターフェイス、534 入力装置、536 メモリカード、550 制御プログラム、551 変化情報生成部、552 変化情報記憶部、553 算出部、554 指令部、555 終了判定部、5521 第1変化情報セット、5522 第2変化情報セット、601〜606,625,626,631,632 領域、607〜615 ボタン、621 実波形、622 基準波形、623,624 マーク、627,628 サムネイル、629,630,633 波形。   DESCRIPTION OF SYMBOLS 1 Control system, 2a soldering iron, 2b solder feeder, 2c electric wire, 2d pad, 2e fusion solder, 3 boards, 7a male connector, 7b female connector, 21, 22 imaging device, 30a-30d robot, 31a-31c hand, 31d stage, 40a to 40d robot controller, 50 control device, 51 reference moving image storage unit, 52 teaching range selection unit, 53 image processing unit, 54 target frame selection unit, 55a first control unit, 55b second control unit, 55c 3 control unit, 55d fourth control unit, 56 actual image acquisition unit, 57 actual moving image storage unit, 58 robot control unit, 59 analysis unit, 60 display device, 510 processor, 512 RAM, 514 display controller, 516 system controller, 518 I / O controller, 520 hard disk , 522 camera interface, 522a, 522b image buffer, 524 input interface, 526 robot controller interface, 528 communication interface, 530 memory card interface, 534 input device, 536 memory card, 550 control program, 551 change information generation unit, 552 change Information storage unit, 553 calculation unit, 554 command unit, 555 end determination unit, 5521 first change information set, 5522 second change information set, 601 to 606, 625, 626, 631, 632 area, 607 to 615 button, 621 Actual waveform, 622 reference waveform, 623,624 mark, 627,628 thumbnail, 629,630,633 waveform.

Claims (10)

対象物の状態を変化させるためのロボットと、
前記対象物を撮像するための撮像装置と、
前記撮像装置によって撮像される実画像上の前記対象物の状態の変化が、予め作成された基準動画上の前記対象物の状態の変化に近づくように、前記ロボットを制御するための制御部と、
前記実画像から抽出される特徴量の時間変化を示す第1波形と、前記基準動画のフレームから抽出される前記特徴量の時間変化を示す第2波形との両方を表示装置の画面上に表示させるための解析部とを備える、制御システム。
A robot for changing the state of the object,
An imaging device for imaging the object;
A control unit for controlling the robot so that a change in the state of the target on the real image captured by the imaging device approaches a change in the state of the target on the previously created reference moving image. ,
Displaying both a first waveform indicating a temporal change of a feature extracted from the real image and a second waveform indicating a temporal change of the feature extracted from a frame of the reference moving image on a screen of a display device. A control system, comprising:
前記解析部は、前記第1波形と前記第2波形との時間軸を合わせる、請求項1に記載の制御システム。   The control system according to claim 1, wherein the analysis unit adjusts a time axis of the first waveform and a time axis of the second waveform. 前記解析部は、前記時間軸上の時刻ごとに、前記第1波形と前記第2波形との前記特徴量の差異を示すパラメータ値を算出し、前記パラメータ値および前記パラメータ値の時間変化を示す第3波形の少なくとも一方を前記画面上に表示させる、請求項2に記載の制御システム。   The analysis unit calculates, for each time on the time axis, a parameter value indicating a difference in the feature amount between the first waveform and the second waveform, and indicates a time change of the parameter value and the parameter value. The control system according to claim 2, wherein at least one of the third waveforms is displayed on the screen. 前記解析部は、
前記時間軸上の時刻ごとに、前記第1波形と前記第2波形との前記特徴量の差異を示すパラメータ値を算出し、
算出したパラメータ値に基づいて、前記パラメータ値が最大となる時刻、または、前記パラメータ値が閾値を超える時刻を指定時刻として選択し、
前記指定時刻に対応する前記実画像と、前記基準動画における前記指定時刻のフレームとを前記画面上に同時に表示させる、請求項2に記載の制御システム。
The analysis unit,
For each time on the time axis, calculate a parameter value indicating a difference between the feature amounts of the first waveform and the second waveform,
Based on the calculated parameter value, the time when the parameter value is the maximum, or the time when the parameter value exceeds a threshold is selected as the designated time,
The control system according to claim 2, wherein the real image corresponding to the designated time and a frame at the designated time in the reference moving image are simultaneously displayed on the screen.
前記解析部は、
前記時間軸上の指定時刻を受け付け、
前記指定時刻に対応する前記実画像と、前記基準動画における前記指定時刻のフレームとを前記画面上に同時に表示させる、請求項2に記載の制御システム。
The analysis unit,
Accepting a designated time on the time axis,
The control system according to claim 2, wherein the real image corresponding to the designated time and a frame at the designated time in the reference moving image are simultaneously displayed on the screen.
前記解析部は、時系列に並べられた前記実画像からなる実動画および前記基準動画の両方における、前記指定時刻を含む一部の期間の映像を前記画面上で同時に再生させる、請求項4または5に記載の制御システム。   The analysis unit, in both the real moving image and the reference moving image composed of the real images arranged in time series, simultaneously reproduces a video of a partial period including the designated time on the screen, 6. The control system according to 5. 前記解析部は、前記実画像を撮像したときの、前記ロボットの基準位置からの移動量の時間変化を示す第4波形と、前記基準動画通りに前記対象物の状態が変化するときの前記移動量の時間変化を示す第5波形との両方を前記画面上に表示させる、請求項1から6のいずれか1項に記載の制御システム。   The analysis unit may further include a fourth waveform indicating a temporal change in a movement amount of the robot from a reference position when the real image is captured, and the movement when the state of the target changes as in the reference moving image. The control system according to any one of claims 1 to 6, wherein both a fifth waveform indicating a temporal change in the amount is displayed on the screen. 前記ロボットは、複数の自由度で前記対象物の状態を変化させ、
前記解析部は、前記複数の自由度のうちの1つの自由度の選択指示を受け付け、
前記移動量は、前記1つの自由度の方向に沿って前記ロボットが前記基準位置から移動した量である、請求項7に記載の制御システム。
The robot changes the state of the object with a plurality of degrees of freedom,
The analysis unit receives an instruction to select one of the degrees of freedom, and
The control system according to claim 7, wherein the movement amount is an amount of movement of the robot from the reference position along the direction of the one degree of freedom.
請求項1から8のいずれか1項に記載の制御システムに用いられる解析装置であって、
前記解析部を備える、解析装置。
An analysis device used for the control system according to any one of claims 1 to 8,
An analysis device comprising the analysis unit.
対象物を撮像するための撮像装置を用いて、前記対象物の状態を変化させるロボットを制御する制御方法であって、
前記撮像装置によって撮像される実画像上の前記対象物の状態の変化が、予め作成された基準動画上の前記対象物の状態の変化に近づくように、前記ロボットを制御するステップと、
前記実画像のフレームから抽出される特徴量の時間変化を示す第1波形と、前記基準動画のフレームから抽出される前記特徴量の時間変化を示す第2波形との両方を表示装置の画面上に表示させるステップとを備える、制御方法。
A control method for controlling a robot that changes a state of the object, using an imaging device for imaging the object,
Controlling the robot so that a change in the state of the target on the real image captured by the imaging device approaches a change in the state of the target on the previously created reference moving image,
Both a first waveform indicating a temporal change of a feature amount extracted from the frame of the real image and a second waveform indicating a temporal change of the feature amount extracted from the frame of the reference moving image are displayed on a screen of a display device. And a step of displaying the information.
JP2018149087A 2018-08-08 2018-08-08 Control system, analyzer and control method Active JP6965844B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2018149087A JP6965844B2 (en) 2018-08-08 2018-08-08 Control system, analyzer and control method
CN201910649815.5A CN110815208B (en) 2018-08-08 2019-07-18 Control system, analysis device, and control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018149087A JP6965844B2 (en) 2018-08-08 2018-08-08 Control system, analyzer and control method

Publications (2)

Publication Number Publication Date
JP2020023024A true JP2020023024A (en) 2020-02-13
JP6965844B2 JP6965844B2 (en) 2021-11-10

Family

ID=69547640

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018149087A Active JP6965844B2 (en) 2018-08-08 2018-08-08 Control system, analyzer and control method

Country Status (2)

Country Link
JP (1) JP6965844B2 (en)
CN (1) CN110815208B (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113146586A (en) * 2021-04-29 2021-07-23 上海鑫燕隆汽车装备制造有限公司 Multi-vehicle-type reference flexible switching system
JP2022043130A (en) * 2020-05-14 2022-03-15 ダイキン工業株式会社 Information processing method, information processing device, program, and information processing system

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03224580A (en) * 1990-01-31 1991-10-03 Fuji Electric Co Ltd Processing method of moving image
JP2004174662A (en) * 2002-11-27 2004-06-24 Fanuc Ltd Operation state analysis device for robot
JP2007011978A (en) * 2005-07-04 2007-01-18 Toyota Motor Corp Motion controller for robot
JPWO2006022201A1 (en) * 2004-08-25 2008-05-08 株式会社安川電機 Robot evaluation system and evaluation method
JP2015221485A (en) * 2014-05-23 2015-12-10 セイコーエプソン株式会社 Robot, robot system, control unit and control method
JP2017159429A (en) * 2016-03-11 2017-09-14 セイコーエプソン株式会社 Robot control device, information processing device, and robot system

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103426186B (en) * 2013-09-05 2016-03-02 山东大学 A kind of SURF fast matching method of improvement
JP6352016B2 (en) * 2014-03-27 2018-07-04 日本電産サンキョー株式会社 Industrial robot
JP6504180B2 (en) * 2014-11-19 2019-04-24 富士通株式会社 Anomaly detection device, anomaly detection method and anomaly detection program

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03224580A (en) * 1990-01-31 1991-10-03 Fuji Electric Co Ltd Processing method of moving image
JP2004174662A (en) * 2002-11-27 2004-06-24 Fanuc Ltd Operation state analysis device for robot
JPWO2006022201A1 (en) * 2004-08-25 2008-05-08 株式会社安川電機 Robot evaluation system and evaluation method
JP2007011978A (en) * 2005-07-04 2007-01-18 Toyota Motor Corp Motion controller for robot
JP2015221485A (en) * 2014-05-23 2015-12-10 セイコーエプソン株式会社 Robot, robot system, control unit and control method
JP2017159429A (en) * 2016-03-11 2017-09-14 セイコーエプソン株式会社 Robot control device, information processing device, and robot system

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022043130A (en) * 2020-05-14 2022-03-15 ダイキン工業株式会社 Information processing method, information processing device, program, and information processing system
JP7389423B2 (en) 2020-05-14 2023-11-30 ダイキン工業株式会社 Information processing method, information processing device, program, and information processing system
CN113146586A (en) * 2021-04-29 2021-07-23 上海鑫燕隆汽车装备制造有限公司 Multi-vehicle-type reference flexible switching system
CN113146586B (en) * 2021-04-29 2023-03-14 上海鑫燕隆汽车装备制造有限公司 Multi-vehicle-type reference flexible switching system

Also Published As

Publication number Publication date
CN110815208A (en) 2020-02-21
JP6965844B2 (en) 2021-11-10
CN110815208B (en) 2023-04-28

Similar Documents

Publication Publication Date Title
JP7115096B2 (en) Control system, control method and program
JP2012254518A (en) Robot control system, robot system and program
CN101733755A (en) Robot system, robot control device and method for controlling robot
JP2015071206A (en) Control device, robot, teaching data generation method, and program
CN104802186A (en) Robot programming apparatus for creating robot program for capturing image of workpiece
JP2002018754A (en) Robot device and its control method
JP2016187846A (en) Robot, robot controller and robot system
JP6965844B2 (en) Control system, analyzer and control method
CN104002297A (en) Teaching system, teaching method and robot system
JP2021016922A (en) Three-dimensional data generator and robot control system
JP2014029664A (en) Image comparison range generation method, positional orientation detection method, image comparison range generation device, positional orientation detection device, robot, robot system, image comparison range generation program and positional orientation detection program
CN114670189B (en) Storage medium, and method and system for generating control program of robot
JP6390088B2 (en) Robot control system, robot, program, and robot control method
JP4781298B2 (en) How to create parts library data
WO2020022040A1 (en) Control system, control method, and program
JP2020179441A (en) Control system, information processing device and control method
CN110861076A (en) Hand eye calibration device of mechanical arm
JP2021026599A (en) Image processing system
JP2021024052A (en) Image processing device, image processing method and program
JP6375441B2 (en) Assembly teaching apparatus and assembly teaching method
JPWO2018096669A1 (en) Laser processing apparatus, laser processing method, and laser processing program
US11577400B2 (en) Method and apparatus for managing robot system
TWI696529B (en) Automatic positioning method and automatic control apparatus
CN116133801A (en) Robot control system, robot control device, robot control method, and program
JP2012236266A (en) Robot control system, robot system, and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201211

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210831

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211004

R150 Certificate of patent or registration of utility model

Ref document number: 6965844

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150