JP6773243B1 - Controls, methods and programs - Google Patents

Controls, methods and programs Download PDF

Info

Publication number
JP6773243B1
JP6773243B1 JP2020042344A JP2020042344A JP6773243B1 JP 6773243 B1 JP6773243 B1 JP 6773243B1 JP 2020042344 A JP2020042344 A JP 2020042344A JP 2020042344 A JP2020042344 A JP 2020042344A JP 6773243 B1 JP6773243 B1 JP 6773243B1
Authority
JP
Japan
Prior art keywords
point
head
locus
movement cost
current point
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2020042344A
Other languages
Japanese (ja)
Other versions
JP2021144444A (en
Inventor
宏次 森野
宏次 森野
優大 小林
優大 小林
晃一 坂田
晃一 坂田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Omron Corp
Original Assignee
Omron Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Omron Corp filed Critical Omron Corp
Priority to JP2020042344A priority Critical patent/JP6773243B1/en
Application granted granted Critical
Publication of JP6773243B1 publication Critical patent/JP6773243B1/en
Priority to CN202110147312.5A priority patent/CN113473836A/en
Publication of JP2021144444A publication Critical patent/JP2021144444A/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H05ELECTRIC TECHNIQUES NOT OTHERWISE PROVIDED FOR
    • H05KPRINTED CIRCUITS; CASINGS OR CONSTRUCTIONAL DETAILS OF ELECTRIC APPARATUS; MANUFACTURE OF ASSEMBLAGES OF ELECTRICAL COMPONENTS
    • H05K13/00Apparatus or processes specially adapted for manufacturing or adjusting assemblages of electric components
    • H05K13/08Monitoring manufacture of assemblages
    • H05K13/0882Control systems for mounting machines or assembly lines, e.g. centralized control, remote links, programming of apparatus and processes as such

Abstract

【課題】制御装置のモーターの負荷を抑制するようにヘッドによる各ポイントの通過順序を決定する。【解決手段】制御装置100は、ワークを設置するための台座105と、台座の上を移動するヘッド110と、ヘッドを台座の第1の軸方向に移動させるための第1の駆動機構と、ヘッドを台座の第2の軸方向に移動させるための第2の駆動機構と、第1の駆動機構および第2の駆動機構を制御する制御部とを備える。制御部は、ヘッドが、ワークの複数のポイントを通過する場合において、ヘッドが現在のポイントCから次のポイントN1,N2,N3まで曲線軌跡を描く動作で通過したときの移動コストを計算し、移動コストが最少になるようにヘッドの次の移動先のポイントを選定する。【選択図】図1PROBLEM TO BE SOLVED: To determine a passing order of each point by a head so as to suppress a load of a motor of a control device. SOLUTION: A control device 100 includes a pedestal 105 for installing a work, a head 110 for moving on the pedestal, and a first drive mechanism for moving the head in a first axial direction of the pedestal. It includes a second drive mechanism for moving the head in the second axial direction of the pedestal, and a control unit for controlling the first drive mechanism and the second drive mechanism. When the head passes through a plurality of points of the work, the control unit calculates the movement cost when the head passes from the current point C to the next points N1, N2, N3 by drawing a curved locus. Select the point to move next to the head so that the movement cost is minimized. [Selection diagram] Fig. 1

Description

本開示は、制御装置に関し、より特定的には、制御装置のヘッドによるワーク上の各ポイントの通過順序の決定に関する。 The present disclosure relates to the control device, and more specifically to the determination of the passing order of each point on the work by the head of the control device.

ロボットアーム、検査装置、ピックアップ装置およびハンダ付け装置等の制御装置において、各装置に取り付けられたヘッドは、作業台またはワーク上の複数のポイントを通過することで一つの作業を完了することがある。その際、制御装置の作業効率を向上させるために、ヘッドによる各ポイントの最適な通過順序を求めることが重要になる。ここでの「通過順序」とは、ワーク上の複数のポイントの各々を通過する順序を意味する。 In control devices such as robot arms, inspection devices, pickup devices, and soldering devices, the head attached to each device may complete one task by passing through multiple points on the workbench or workpiece. .. At that time, in order to improve the work efficiency of the control device, it is important to obtain the optimum passage order of each point by the head. The "passing order" here means the order of passing through each of a plurality of points on the work.

制御装置のヘッドによるワーク上の各ポイントの通過順序の決定に関し、例えば、特開2017−181188号公報(特許文献1)は、「前記基板の表面側に設定された複数の検査範囲に対応する位置へ前記表面側照射手段及び前記表面側撮像手段を予め定めた検査順序に基づき順次移動させ、当該複数の検査範囲に係る画像取得処理を順次実行すると共に、前記基板の裏面側に設定された複数の検査範囲に対応する位置へ前記裏面側照射手段及び前記裏面側撮像手段を予め定めた検査順序に基づき順次移動させ、当該複数の検査範囲に係る画像取得処理を順次実行する構成であって、前記基板の表面側について、前記表面側照射手段及び前記表面側撮像手段が移動する経路が所定の起点からの最短経路となるよう前記検査順序が設定され、及び/又は、前記基板の裏面側について、前記裏面側照射手段及び前記裏面側撮像手段が移動する経路が所定の起点からの最短経路となるよう前記検査順序が設定されていることを特徴とする」基板検査装置を開示している(段落[0025]参照)。 Regarding the determination of the passing order of each point on the work by the head of the control device, for example, Japanese Patent Application Laid-Open No. 2017-181188 (Patent Document 1) states that "corresponding to a plurality of inspection ranges set on the surface side of the substrate. The front surface side irradiation means and the front surface side imaging means are sequentially moved to a position based on a predetermined inspection order, image acquisition processes related to the plurality of inspection ranges are sequentially executed, and the surface side irradiation means and the front surface side imaging means are set on the back surface side of the substrate. The back surface irradiation means and the back surface imaging means are sequentially moved to positions corresponding to a plurality of inspection ranges based on a predetermined inspection order, and image acquisition processing related to the plurality of inspection ranges is sequentially executed. With respect to the front surface side of the substrate, the inspection order is set so that the path through which the surface side irradiation means and the surface side imaging means move is the shortest path from a predetermined starting point, and / or the back surface side of the substrate. The substrate inspection apparatus is disclosed, wherein the inspection order is set so that the path through which the backside irradiation means and the backside imaging means move is the shortest path from a predetermined starting point. " (See paragraph [0025]).

特開2017−181188号公報Japanese Unexamined Patent Publication No. 2017-181188

特許文献1に開示された技術によると、制御装置のモーターの負荷を抑制するようにヘッドによる各ポイントの通過順序を決定することができない。したがって、制御装置のモーターの負荷を抑制するようにヘッドによる各ポイントの通過順序を決定する技術が必要とされている。 According to the technique disclosed in Patent Document 1, it is not possible to determine the passing order of each point by the head so as to suppress the load on the motor of the control device. Therefore, there is a need for a technique for determining the passing order of each point by the head so as to suppress the load on the motor of the control device.

本開示は、上記のような背景に鑑みてなされたものであって、ある局面における目的は、制御装置のモーターの負荷を抑制するようにヘッドによる各ポイントの通過順序を決定する技術を提供することにある。 The present disclosure has been made in view of the above background, and an object in a certain aspect is to provide a technique for determining the passing order of each point by the head so as to suppress the load on the motor of the control device. There is.

本開示の一例では、制御装置が提供される。当該制御装置は、ワークを設置するための台座と、台座の上を移動するヘッドと、ヘッドを台座の第1の軸方向に移動させるための第1の駆動機構と、ヘッドを台座の第2の軸方向に移動させるための第2の駆動機構と、第1の駆動機構および第2の駆動機構を制御する制御部とを備える。制御部は、ヘッドが、ワークの複数のポイントを通過する場合において、ヘッドが現在のポイントから次のポイントまで曲線軌跡を描く動作で通過したときの移動コストを計算し、移動コストが最少になるようにヘッドの次の移動先のポイントを選定する。 In one example of the present disclosure, a control device is provided. The control device includes a pedestal for installing a work, a head for moving on the pedestal, a first drive mechanism for moving the head in the first axial direction of the pedestal, and a second head on the pedestal. A second drive mechanism for moving in the axial direction of the above, and a control unit for controlling the first drive mechanism and the second drive mechanism are provided. When the head passes through multiple points of the work, the control unit calculates the movement cost when the head passes by the operation of drawing a curved locus from the current point to the next point, and the movement cost is minimized. Select the point to move next to the head so as to.

上記の開示によれば、制御装置は、ヘッドが各ポイントを曲線の軌跡を描いて通過するのに適した各ポイントの通過順序を求めることができる。 According to the above disclosure, the control device can determine the passing order of each point suitable for the head to pass each point in a curved trajectory.

上記の開示において、曲線軌跡は、ヘッドの直前のポイントと、現在のポイントと、次のポイントとに接する円上を通過する軌跡である。 In the above disclosure, the curved locus is a locus that passes on a circle tangent to the point immediately before the head, the current point, and the next point.

上記の開示によれば、制御装置は、ヘッドの直前のポイントと、現在のポイントと、次のポイントに基づいて、現在のポイントから次のポイントまでの曲線軌跡における移動コストを算出することができる。 According to the above disclosure, the control device can calculate the movement cost in the curve trajectory from the current point to the next point based on the point immediately before the head, the current point, and the next point. ..

上記の開示において、制御部は、ヘッドの直前のポイントと、現在のポイントとを通過する線分上にあるポイントPを求める。ポイントPから現在のポイントまでの距離と、現在のポイントから次のポイントまでの距離とは等しく、曲線軌跡は、ポイントPと、現在のポイントと、次のポイントとに接する円上を通過する軌跡である。 In the above disclosure, the control unit obtains a point P on a line segment passing through the point immediately before the head and the current point. The distance from point P to the current point is equal to the distance from the current point to the next point, and the curve locus is the locus that passes on the point P, the current point, and the circle tangent to the next point. Is.

上記の開示によれば、制御装置は、ポイントPを使用することで、現在のポイントから次のポイントまでの曲線軌跡における移動コストと、実際の制御装置の移動距離との誤差を小さくすることができる。 According to the above disclosure, the control device can reduce the error between the movement cost in the curve trajectory from the current point to the next point and the movement distance of the actual control device by using the point P. it can.

上記の開示において、制御部は、直前のポイントと、現在のポイントと、次のポイントとが直線上に並ぶか否かを判定し、直前のポイントと、現在のポイントと、次のポイントとが直線上に並ぶ場合、ヘッドが現在のポイントから次のポイントまでを直線軌跡を描く動作で通過したときの移動コストを計算し、直前のポイントと、現在のポイントと、次のポイントとが直線上に並ばない場合、ヘッドが現在のポイントから次のポイントまでを曲線軌跡を描く動作で通過したときの移動コストを計算する。 In the above disclosure, the control unit determines whether or not the immediately preceding point, the current point, and the next point are aligned on a straight line, and the immediately preceding point, the current point, and the next point are determined. When lining up on a straight line, the movement cost when the head passes from the current point to the next point by drawing a straight trajectory is calculated, and the previous point, the current point, and the next point are on the straight line. If the heads do not line up with, the movement cost when the head passes from the current point to the next point by drawing a curved locus is calculated.

上記の開示によれば、制御装置は、直前のポイントと、現在のポイントと、次のポイントとの位置関係に基づいて、適切な計算方法で移動コストを計算することができる。 According to the above disclosure, the control device can calculate the movement cost by an appropriate calculation method based on the positional relationship between the immediately preceding point, the current point, and the next point.

上記の開示において、制御部は、ヘッドのポイントの通過順序の決定後に、ヘッドが各ポイントを通過するときの通過経路がヘッドの最小旋回半径以上となるように、ヘッドの通過経路を決定する。 In the above disclosure, after determining the passing order of the points of the head, the control unit determines the passing path of the head so that the passing path when the head passes each point is equal to or larger than the minimum turning radius of the head.

上記の開示によれば、制御装置は、ヘッドを駆動する駆動部にかかる負荷を抑制しつつ、決定した通過順序に基づいてヘッドを移動させることができる。 According to the above disclosure, the control device can move the head based on the determined passage order while suppressing the load applied to the drive unit that drives the head.

上記の開示において、制御部は、ヘッドが曲線軌跡を描く動作で通過したときの移動コストに基づいて、ヘッドのポイントの通過順序を決定した後に、2−opt法によりヘッドのポイントの通過順序を変更する。 In the above disclosure, the control unit determines the passing order of the points of the head based on the movement cost when the head passes by the motion of drawing a curved locus, and then determines the passing order of the points of the head by the 2-opt method. change.

上記の開示によれば、制御装置は、2−opt法により通過順序を変更することで、ヘッドの移動距離を削減することができる。 According to the above disclosure, the control device can reduce the moving distance of the head by changing the passing order by the 2-opt method.

上記の開示において、制御部は、ヘッドが曲線軌跡を描く動作で通過したときの移動コストの計算方法と、ヘッドが直線軌跡を描く動作で通過したときの移動コストの計算方法との選択の入力を受け付ける。ヘッドが直線を描く動作で通過したときの移動コストの計算方法は、現在のポイントから次のポイントまでの距離の誤差許容値が0より大きいとき、現在のポイントを頂点としたときの、直前のポイントおよび現在のポイントを結ぶ線分と、現在のポイントおよび次のポイントを結ぶ線分との角度が180度から小さくなるほど移動コストが増加する。 In the above disclosure, the control unit inputs a selection between a method of calculating the movement cost when the head passes by the operation of drawing a curved locus and a method of calculating the movement cost when the head passes by the operation of drawing a straight line locus. Accept. The calculation method of the movement cost when the head passes in a straight line is when the error tolerance of the distance from the current point to the next point is greater than 0, and when the current point is set as the apex, immediately before. The movement cost increases as the angle between the line segment connecting the point and the current point and the line segment connecting the current point and the next point decreases from 180 degrees.

上記の開示によれば、制御部は、直線軌跡を描く動作で通過したときの移動コストの計算方法において、ヘッドの進行ルートに近いポイントを優先して選択することができる。 According to the above disclosure, the control unit can preferentially select a point close to the traveling route of the head in the calculation method of the movement cost when passing by the operation of drawing a straight line locus.

本開示の他の例では、制御装置におけるヘッドのワーク上の各ポイントの通過順序を求める方法が提供される。当該方法は、ヘッドが、ワーク上の複数のポイントを通過する場合において、ヘッドが現在のポイントから次のポイントまで曲線軌跡を描く動作で通過したときの移動コストを計算するステップと、移動コストが最少になるようにヘッドの次の移動先のポイントを選定するステップとを含む。 Another example of the present disclosure provides a method of determining the passing order of each point on the work of the head in the control device. In this method, when the head passes through multiple points on the work, the step of calculating the movement cost when the head passes by the operation of drawing a curved locus from the current point to the next point, and the movement cost are It includes a step of selecting the next destination point of the head so as to be the minimum.

上記の開示によれば、ヘッドが各ポイントを曲線の軌跡を描いて通過するのに適した各ポイントの通過順序を求めることができる。 According to the above disclosure, it is possible to determine the passing order of each point suitable for the head to pass through each point in a curved trajectory.

上記の開示において、曲線軌跡は、ヘッドの直前のポイントと、現在のポイントと、次のポイントとに接する円上を通過する軌跡である。 In the above disclosure, the curved locus is a locus that passes on a circle tangent to the point immediately before the head, the current point, and the next point.

上記の開示によれば、ヘッドの直前のポイントと、現在のポイントと、次のポイントに基づいて、現在のポイントから次のポイントまでの曲線軌跡における移動コストを算出することができる。 According to the above disclosure, the movement cost in the curve trajectory from the current point to the next point can be calculated based on the point immediately before the head, the current point, and the next point.

上記の開示において、方法は、ヘッドの直前のポイントと、現在のポイントとを通過する線分上にあるポイントPを求めるステップをさらに含む。ポイントPから現在のポイントまでの距離と、現在のポイントから次のポイントまでの距離とは等しく、曲線軌跡は、ポイントPと、現在のポイントと、次のポイントとに接する円上を通過する軌跡である。 In the above disclosure, the method further comprises the step of finding the point P on the line segment passing through the point immediately preceding the head and the current point. The distance from point P to the current point is equal to the distance from the current point to the next point, and the curve locus is the locus that passes on the point P, the current point, and the circle tangent to the next point. Is.

上記の開示によれば、ポイントPを使用することで、現在のポイントから次のポイントまでの曲線軌跡における移動コストと、実際の制御装置の移動距離との誤差を小さくすることができる。 According to the above disclosure, by using the point P, it is possible to reduce the error between the movement cost in the curve locus from the current point to the next point and the movement distance of the actual control device.

上記の開示において、方法は、直前のポイントと、現在のポイントと、次のポイントとが直線上に並ぶか否かを判定するステップと、直前のポイントと、現在のポイントと、次のポイントとが直線上に並ぶ場合、ヘッドが現在のポイントから次のポイントまでを直線軌跡を描く動作で通過したときの移動コストを計算するステップと、直前のポイントと、現在のポイントと、次のポイントとが直線上に並ばない場合、ヘッドが現在のポイントから次のポイントまでを曲線軌跡を描く動作で通過したときの移動コストを計算するステップとをさらに含む。 In the above disclosure, the method is a step of determining whether the previous point, the current point, and the next point are aligned on a straight line, the previous point, the current point, and the next point. When are lined up on a straight line, the step to calculate the movement cost when the head passes from the current point to the next point by drawing a straight trajectory, the previous point, the current point, and the next point Further includes a step of calculating the movement cost when the head passes from the current point to the next point in a curved locus when the heads do not line up on a straight line.

上記の開示によれば、直前のポイントと、現在のポイントと、次のポイントとの位置関係に基づいて、適切な計算方法で移動コストを計算することができる。 According to the above disclosure, the movement cost can be calculated by an appropriate calculation method based on the positional relationship between the immediately preceding point, the current point, and the next point.

上記の開示において、方法は、ヘッドのポイントの通過順序の決定後に、ヘッドが各ポイントを通過するときの通過経路がヘッドの最小旋回半径以上となるように、ヘッドの通過経路を決定するステップをさらに含む。 In the above disclosure, the method determines the passage path of the head so that the passage path when the head passes each point is equal to or larger than the minimum turning radius of the head after the passage order of the points of the head is determined. Including further.

上記の開示によれば、制御装置は、ヘッドを駆動する駆動部にかかる負荷を抑制しつつ、決定した通過順序に基づいてヘッドを移動させることができる。 According to the above disclosure, the control device can move the head based on the determined passage order while suppressing the load applied to the drive unit that drives the head.

上記の開示において、方法は、ヘッドが曲線軌跡を描く動作で通過したときの移動コストに基づいて、ヘッドのポイントの通過順序を決定した後に、2−opt法によりヘッドのポイントの通過順序を変更するステップをさらに含む。 In the above disclosure, the method determines the passing order of the head points based on the movement cost when the head passes in a curved locus, and then changes the passing order of the head points by the 2-opt method. Including additional steps to do.

上記の開示によれば、2−opt法により通過順序を変更することで、ヘッドの移動距離を削減することができる。 According to the above disclosure, the moving distance of the head can be reduced by changing the passing order by the 2-opt method.

上記の開示において、方法は、ヘッドが曲線軌跡を描く動作で通過したときの移動コストの計算方法と、ヘッドが直線軌跡を描く動作で通過したときの移動コストの計算方法との選択の入力を受け付けるステップをさらに含む。ヘッドが直線を描く動作で通過したときの移動コストの計算方法は、現在のポイントから次のポイントまでの距離の誤差許容値が0より大きいとき、現在のポイントを頂点としたときの、直前のポイントおよび現在のポイントを結ぶ線分と、現在のポイントおよび次のポイントを結ぶ線分との角度が180度から小さくなるほど移動コストが増加する。 In the above disclosure, the method inputs a selection of a method of calculating the movement cost when the head passes by the motion of drawing a curved locus and a method of calculating the movement cost when the head passes by the motion of drawing a linear locus. Includes additional accepting steps. The calculation method of the movement cost when the head passes in a straight line is when the error tolerance of the distance from the current point to the next point is greater than 0, and when the current point is set as the apex, immediately before. The movement cost increases as the angle between the line segment connecting the point and the current point and the line segment connecting the current point and the next point decreases from 180 degrees.

上記の開示によれば、直線軌跡を描く動作で通過したときの移動コストの計算方法において、ヘッドの進行ルートに近いポイントを優先して選択することができる。 According to the above disclosure, in the calculation method of the movement cost when passing by the operation of drawing a straight line locus, the point close to the traveling route of the head can be preferentially selected.

本開示の他の例では、上記のいずれかの方法を制御装置に実行させるためのプログラムが提供される。 In another example of the present disclosure, a program is provided for causing the control device to perform any of the above methods.

上記の開示によれば、上記のいずれかに記載の方法を制御装置に実行させることができる。 According to the above disclosure, the control device can be made to perform the method described in any of the above.

ある実施の形態に従うと、制御装置のモーターの負荷を抑制するようにヘッドによる各ポイントの通過順序を決定することが可能である。 According to certain embodiments, it is possible to determine the order of passage of each point by the head so as to reduce the load on the motor of the control device.

この開示内容の上記および他の目的、特徴、局面および利点は、添付の図面と関連して理解されるこの本開示に関する次の詳細な説明から明らかとなるであろう。 The above and other objectives, features, aspects and advantages of this disclosure will become apparent from the following detailed description of this disclosure, which is understood in connection with the accompanying drawings.

ある実施の形態に従うヘッド110による各ポイントの通過順序の決定方法の一例を示す図である。It is a figure which shows an example of the method of determining the passing order of each point by a head 110 according to a certain embodiment. 制御装置100の駆動機構の一例を示す図である。It is a figure which shows an example of the drive mechanism of the control device 100. ある実施形態に係る制御装置100の制御系の構成の一例を模式的に示す図である。It is a figure which shows typically an example of the structure of the control system of the control device 100 which concerns on a certain embodiment. 制御装置100が備える機能モジュールの一例を示す模式図である。It is a schematic diagram which shows an example of the function module included in the control device 100. ワーク500上を通過するヘッド110の通過経路の一例を示す図である。It is a figure which shows an example of the passage path of the head 110 passing over a work 500. 軌跡角度θTに基づく直線軌跡の移動コストの変化量の一例を示す図である。It is a figure which shows an example of the change amount of the movement cost of a linear locus based on a locus angle θT. 軌跡角度θTに基づく曲線軌跡の移動コストの変化量の一例を示す図である。It is a figure which shows an example of the change amount of the movement cost of a curved locus based on a locus angle θT. 距離(P,C)および距離(C,N)に基づく、第1の計算方法によって求められる移動コストの変化量の一例を示す図である。It is a figure which shows an example of the amount of change of the movement cost obtained by the 1st calculation method based on a distance (P, C) and a distance (C, N). 第2の計算方法の前提となるポイントP’の一例を説明するための図である。It is a figure for demonstrating an example of the point P'which is the premise of the 2nd calculation method. 第2の計算方法の概要の一例を説明するための図である。It is a figure for demonstrating an example of the outline of the 2nd calculation method. ヘッド110の通過経路の第1の例である。This is the first example of the passage path of the head 110. ヘッド110の通過経路の第2の例である。This is a second example of the passage path of the head 110. ヘッド110の通過経路の第3の例である。This is a third example of the passage path of the head 110. 第1の計算方法および第2の計算方法と、ヘッド110の通過経路の距離(実際の移動距離)との誤差の一例を示す図である。It is a figure which shows an example of the error between the 1st calculation method and the 2nd calculation method, and the distance (actual movement distance) of the passage path of a head 110. 直線軌跡モードの通過経路および曲線軌跡モードの通過経路の第1の例を示す図である。It is a figure which shows the 1st example of the passing path of a linear locus mode and the passing path of a curved locus mode. 図15に示す各々のモードの通過経路の総移動距離およびモーターに対する負荷の一例を示す図である。It is a figure which shows an example of the total travel distance of the passage path of each mode shown in FIG. 15 and the load on a motor. 直線軌跡モードの通過経路および曲線軌跡モードの通過経路の第2の例を示す図である。It is a figure which shows the 2nd example of the passing path of a linear locus mode and the passing path of a curved locus mode. 図17に示す各々の通過経路ごとの移動距離およびモーターに対する負荷の一例を示す図である。It is a figure which shows an example of the moving distance for each passing path and the load on a motor shown in FIG. 第3の計算方法の一例を示す模式図である。It is a schematic diagram which shows an example of the 3rd calculation method. 制御装置100が第3の計算方法を用いて決定した通過順序の一例を示す。An example of the passing order determined by the control device 100 using the third calculation method is shown. 制御装置100の移動コスト算出の手順の一例を示す図である。It is a figure which shows an example of the procedure of the movement cost calculation of a control device 100.

以下、図面を参照しつつ、本開示に係る技術思想の実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。 Hereinafter, embodiments of the technical concept according to the present disclosure will be described with reference to the drawings. In the following description, the same parts are designated by the same reference numerals. Their names and functions are the same. Therefore, the detailed description of them will not be repeated.

<A.適用例> <A. Application example>

図1は、本実施の形態に従うヘッド110による各ポイントの通過順序の決定方法の一例を示す図である。図1を参照して、本発明が適用される場面の一例について説明する。なお、これ以降の説明において、通過順序とは、ヘッド110のワーク上の各ポイントの通過順序を意味する。 FIG. 1 is a diagram showing an example of a method of determining the passing order of each point by the head 110 according to the present embodiment. An example of a situation in which the present invention is applied will be described with reference to FIG. In the following description, the passing order means the passing order of each point on the work of the head 110.

(A−1.装置構成) (A-1. Device configuration)

本実施の形態に従うヘッド110における各ポイントの通過順序の決定方法は、図1に例示される制御装置100に好適に適用可能である。制御装置100は、少なくとも2軸(X軸,Y軸)の駆動機構によって移動するヘッド110と、台座105とを備える。 The method of determining the passing order of each point in the head 110 according to the present embodiment is suitably applicable to the control device 100 illustrated in FIG. The control device 100 includes a head 110 that is moved by a drive mechanism of at least two axes (X-axis and Y-axis), and a pedestal 105.

ヘッド110は、台座105の上を移動する。ここでのヘッド110とは、ロボットアームの先端、検査装置のカメラまたはセンサー、およびピックアップ装置の把持部等の任意の構成を含む。また、制御装置100は、ヘッド110の台座105からの距離(Z軸)を調節するための駆動機構を備えてもよい。 The head 110 moves on the pedestal 105. The head 110 here includes an arbitrary configuration such as a tip of a robot arm, a camera or sensor of an inspection device, and a grip portion of a pickup device. Further, the control device 100 may include a drive mechanism for adjusting the distance (Z-axis) of the head 110 from the pedestal 105.

駆動機構は、例えば、CNC(Computerized Numerical Control)工作機等の直動機構であってもよいし、ロボットアームまたはスカラー装置等の複数のモーターを組み合わせた関節を含む機構であってもよい。ある局面において、制御装置100は、複数のモーターを組み合わせて2軸(X軸,Y軸)を同時に調整する機構を備えていてもよい。 The drive mechanism may be, for example, a linear motion mechanism such as a CNC (Computerized Numerical Control) machine tool, or a mechanism including joints in which a plurality of motors such as a robot arm or a scalar device are combined. In a certain aspect, the control device 100 may include a mechanism for simultaneously adjusting two axes (X-axis and Y-axis) by combining a plurality of motors.

ある局面において、制御装置100は、液晶パネル等のリペア装置、CNC工作機、ロボットアーム、検査装置、ピックアップ装置、組立装置、ハンダ付け装置等の任意の軸数の駆動機構と、ヘッドとを備える装置であってもよい。 In a certain aspect, the control device 100 includes a drive mechanism having an arbitrary number of axes such as a repair device such as a liquid crystal panel, a CNC machine tool, a robot arm, an inspection device, a pickup device, an assembly device, and a soldering device, and a head. It may be a device.

(A−2.通過順序の選択基準) (A-2. Selection criteria for passing order)

ヘッド110は、その用途に応じて、台座105上の複数のポイントを移動する。例えば、制御装置100が基板の検査装置であり、検査対象の基板(以下、台座105上に設置されるものを「ワーク」と表す)に検査箇所が4つあるとする。その場合、ヘッド110は、台座105上の複数のポイント(検査箇所)(A)〜(D)を通過する経路120上を移動する。制御装置100は、ヘッド110のポイント(A)〜(D)における通過順序を決定するために、例えば、最近傍法等のアルゴリズムを使用し得る。最近傍法等の最短距離を求めるアルゴリズムは、移動コストに基づいて、通過順序を決定する。そのため、当該移動コストが、通過順序の選択基準であるともいえる。 The head 110 moves a plurality of points on the pedestal 105 according to its use. For example, assume that the control device 100 is a substrate inspection device, and that the substrate to be inspected (hereinafter, the one installed on the pedestal 105 is referred to as a "work") has four inspection points. In that case, the head 110 moves on the path 120 passing through the plurality of points (inspection points) (A) to (D) on the pedestal 105. The control device 100 may use an algorithm such as the nearest neighbor method to determine the passing order at points (A) to (D) of the head 110. An algorithm for finding the shortest distance, such as the nearest neighbor method, determines the passing order based on the movement cost. Therefore, it can be said that the movement cost is a criterion for selecting the passing order.

制御装置100の作業効率を向上させるためには、ヘッド110の移動距離が最少になる経路を求め、ヘッド110にその経路を通過させればよい。図1の例では、ヘッド110がポイント(A)〜(D)を直線で結ぶ最短経路を通過すれば、制御装置100の作業効率は最大になる。言い換えれば、各ポイント間の直線距離を移動コストとして、通過順序を決定すればよいことになる。 In order to improve the work efficiency of the control device 100, a route that minimizes the moving distance of the head 110 may be obtained, and the head 110 may pass the route. In the example of FIG. 1, if the head 110 passes through the shortest path connecting the points (A) to (D) with a straight line, the work efficiency of the control device 100 is maximized. In other words, the passage order may be determined by using the straight line distance between each point as the movement cost.

しかし、上記の直線移動での最短距離は、駆動機構を駆動させるモーターに大きな負荷を与えるため、機械の寿命を考慮すると好ましくない。そのため、ヘッド110は、モーターの負荷を減らすために、緩やかな円弧の軌跡を描きながら移動することが望ましい。 However, the shortest distance in the linear movement gives a large load to the motor that drives the drive mechanism, which is not preferable in consideration of the life of the machine. Therefore, it is desirable that the head 110 moves while drawing a gentle arc locus in order to reduce the load on the motor.

そこで、本実施の形態に従うヘッド110による各ポイントの通過順序の決定方法は、ヘッド110が、現在のポイントから次のポイントまで曲線軌跡を描いて移動することを前提に、曲線での移動距離が最少になる通過順序を決定する。ここでの「ポイント」とは、台座105上での座標により表現されてもよい。言い換えれば、台座105上の「ポイント(X)」とは、「座標(X)」のことである。なお、これ以降の説明において、「N番目のポイント」とは、ヘッド110がN番目に経由するポイントを意味する。 Therefore, in the method of determining the passing order of each point by the head 110 according to the present embodiment, the moving distance on the curve is based on the premise that the head 110 moves from the current point to the next point in a curved locus. Determine the minimum pass order. The "point" here may be represented by the coordinates on the pedestal 105. In other words, the "point (X)" on the pedestal 105 is the "coordinate (X)". In the following description, the "Nth point" means the point through which the head 110 passes through the Nth point.

(A−3.ポイント間のコスト計算) (A-3. Cost calculation between points)

本実施の形態に従うヘッド110による各ポイントの通過順序の決定方法において、ヘッド110の次の移動先は以下の手順により決定される。なお、制御装置100は、ヘッド110のN番目のポイントまでの通過順序を決定済みであり、次にN+1番目のポイント(N+1番目の移動先)を決定するとする。 In the method of determining the passing order of each point by the head 110 according to the present embodiment, the next destination of the head 110 is determined by the following procedure. It is assumed that the control device 100 has already determined the passing order of the head 110 to the Nth point, and then determines the N + 1th point (N + 1th movement destination).

第1のステップにおいて、制御装置100は、N番目の移動先である現在のポイント(C)と、N−1番目の移動先である直前のポイント(P)との座標を記憶する。第2のステップにおいて、制御装置100は、N+1番目の動作先の候補である次のポイント(N)を選択する。 In the first step, the control device 100 stores the coordinates of the current point (C), which is the Nth movement destination, and the point (P) immediately before, which is the N-1th movement destination. In the second step, the control device 100 selects the next point (N) which is a candidate for the N + 1th operation destination.

第3のステップにおいて、制御装置100は、直前のポイント(P)と、現在のポイント(C)と、次のポイント(N)とを通過する円の大きさに基づいて、現在のポイント(C)から次のポイント(N)までの移動コストを計算する。より具体的には、制御装置100は、ポイント(C)からポイント(N)までの円弧の距離により、現在のポイント(C)から次のポイント(N)までの移動コストを計算する。移動コストは、図1の軌跡角度θが大きくなるほど増加する。軌跡角度θは、線分PCに対する角度である。言い換えれば、ポイント(C)を頂点とした場合の線分(PC)と、線分(CN)とからなる角度が鋭角になるほど移動コストは増加する。 In the third step, the controller 100 determines the current point (C) based on the size of the circle passing the previous point (P), the current point (C), and the next point (N). ) To the next point (N) is calculated. More specifically, the control device 100 calculates the movement cost from the current point (C) to the next point (N) based on the distance of the arc from the point (C) to the point (N). The movement cost increases as the locus angle θ T in FIG. 1 increases. The locus angle θ T is an angle with respect to the line segment PC. In other words, the movement cost increases as the angle between the line segment (PC) and the line segment (CN) when the point (C) is the apex becomes acute.

図1の例において、現在のポイント(C)から同距離のポイント(N1)〜(N3)までのそれぞれの移動コストは、軌跡角度θに基づいて、「移動コスト(ポイント(C)−ポイント(N1))<移動コスト(ポイント(C)−ポイント(N2))<移動コスト(ポイント(C)−ポイント(N3))」になる。よって、制御装置100は、次の移動先として、ポイント(N1)を選択する。制御装置100は、全てのポイントの通過順序を決定し終わるまで、第1のステップ〜第3のステップまでの処理を繰り返す。詳細な計算コストの計算方法については、後述する。 In the example of FIG. 1, each movement cost from the current point (C) to the points (N1) to (N3) at the same distance is "movement cost (point (C) -point" based on the locus angle θ T. (N1)) <Movement cost (point (C) -point (N2)) <Movement cost (point (C) -point (N3)) ". Therefore, the control device 100 selects the point (N1) as the next movement destination. The control device 100 repeats the processes from the first step to the third step until the passing order of all the points is determined. The detailed calculation method of the calculation cost will be described later.

なお、1番目の移動先を選択する場合、直前のポイント(P)が存在し得ないため、制御装置100は、ヘッドの初期位置から最も近いポイントを最初の移動先に設定してもよい。ある局面において、制御装置100は、移動コストに基づいてヘッド110による各ポイントの通過順序を決定した後に、さらに、2−opt法等を用いて、当該通過順序を修正してもよい。 When selecting the first movement destination, since the immediately preceding point (P) cannot exist, the control device 100 may set the point closest to the initial position of the head as the first movement destination. In a certain aspect, the control device 100 may determine the passing order of each point by the head 110 based on the movement cost, and then further modify the passing order by using a 2-opt method or the like.

(A−4.ヘッド110の動作) (A-4. Operation of head 110)

制御装置100は、ヘッド110による各ポイントの通過順序の決定後、確定した通過順序に沿って、ヘッド110に各ポイントを通過させる。その際、ヘッド110は、ヘッド110が移動可能な最小旋回半径以上の曲線軌跡を描きながら各ポイント間を移動する。ヘッド110が移動可能な最小旋回半径は、ヘッド110を駆動させるモーターおよび駆動機構により決定される。なお、これ以降は、区別のために、ヘッド110が通過する各ポイントの順番を「通過順序」と呼ぶ。これに対して、ヘッド110が各ポイントを通過するときに描く経路を「通過経路」と呼ぶ。 After the head 110 determines the passing order of each point, the control device 100 causes the head 110 to pass each point in accordance with the determined passing order. At that time, the head 110 moves between each point while drawing a curved locus equal to or larger than the minimum turning radius that the head 110 can move. The minimum turning radius that the head 110 can move is determined by the motor and the drive mechanism that drive the head 110. From this point onward, for the sake of distinction, the order of points through which the head 110 passes is referred to as a “passing order”. On the other hand, the path drawn when the head 110 passes each point is called a "passing path".

ヘッド110は、上記のコスト計算時に求めた円弧の軌跡を描いて移動する必要はなく、決定された通過順序に従って各ポイントをある程度の曲線的な動きで通過すればよい。上述した移動コストは、あくまでヘッド110が曲線軌跡で各ポイントを通過するときの移動コストの近似値であり、ヘッド110の実際の通過経路の距離は、移動コスト(円弧の距離)と一致する必要はない。 The head 110 does not need to move by drawing the locus of the arc obtained at the time of the cost calculation, and may pass through each point with a certain degree of curvilinear movement according to the determined passing order. The above-mentioned movement cost is only an approximate value of the movement cost when the head 110 passes through each point on the curved locus, and the distance of the actual passage path of the head 110 needs to match the movement cost (distance of the arc). There is no.

上記のように、本実施の形態に従う制御装置100は、ヘッド110が曲線軌跡を描いて移動する場合の移動コストに基づいて、ヘッド110による各ポイントの通過順序を決定する。当該処理により、制御装置100は、ヘッド110を駆動させるモーターおよび駆動機構にかかる負担を抑制すると共に、ヘッド110を効率的に移動させて、制御装置100の作業効率を向上させることができる。 As described above, the control device 100 according to the present embodiment determines the passing order of each point by the head 110 based on the movement cost when the head 110 moves in a curved locus. By this process, the control device 100 can suppress the load on the motor and the drive mechanism for driving the head 110, and can efficiently move the head 110 to improve the work efficiency of the control device 100.

本実施の形態に従うヘッド110による各ポイントの通過順序の決定方法は、ヘッド110が巡回するポイントが予め決まっている装置(液晶パネルのリペア装置、ネジ締め装置またはハンダ付け装置等)に対して、好適に適用することができる。 The method of determining the passing order of each point by the head 110 according to the present embodiment is as follows for a device (liquid crystal panel repair device, screw tightening device, soldering device, etc.) in which the points to be circulated by the head 110 are predetermined. It can be preferably applied.

<B.ハードウェア構成> <B. Hardware configuration>

次に図2〜図4を参照して、本実施の形態に従う通過経路の決定方法を適用可能な制御装置100のハードウェア構成について説明する。これ以降の説明では、制御装置100は、3軸の直動機構を備える装置として説明するが、制御装置100の構成はこれに限られるものではない。ある局面において、制御装置100は、ロボットアーム、スカラー装置等を含む任意の駆動軸を備える装置であってもよい。 Next, with reference to FIGS. 2 to 4, the hardware configuration of the control device 100 to which the method of determining the passage route according to the present embodiment can be applied will be described. In the following description, the control device 100 will be described as a device including a three-axis linear motion mechanism, but the configuration of the control device 100 is not limited to this. In a certain aspect, the control device 100 may be a device including an arbitrary drive shaft including a robot arm, a scalar device, and the like.

図2は、制御装置100の駆動機構の一例を示す図である。制御装置100は、X軸の駆動機構201Xと、Y軸の駆動機構201Yと、Z軸の駆動機構201Zと、台座105と、ヘッド110とを備える。各駆動機構を総称する場合は、「駆動機構201」と表すこともある。制御装置100は、駆動機構201X〜201Zを組み合わせて駆動させることで、ヘッド110を3次元空間上で移動させ得る。 FIG. 2 is a diagram showing an example of a drive mechanism of the control device 100. The control device 100 includes an X-axis drive mechanism 201X, a Y-axis drive mechanism 201Y, a Z-axis drive mechanism 201Z, a pedestal 105, and a head 110. When each drive mechanism is generically referred to, it may be expressed as "drive mechanism 201". The control device 100 can move the head 110 in a three-dimensional space by driving the drive mechanisms 201X to 201Z in combination.

駆動機構201は、ヘッド110を移動させる駆動機構であり、サーボモーター、ステッピングモーター等の任意のモーターによって駆動される。駆動機構201は、モーターの動力をボールネジ、ベルト、リンク機構等の動力伝達部品を介してヘッド110またはヘッド110を取り付けられた筐体部分に伝達する。 The drive mechanism 201 is a drive mechanism for moving the head 110, and is driven by an arbitrary motor such as a servo motor or a stepping motor. The drive mechanism 201 transmits the power of the motor to the head 110 or the housing portion to which the head 110 is attached via a power transmission component such as a ball screw, a belt, or a link mechanism.

図1に示す例では、ヘッド110は、Z軸の駆動機構201Zに動力伝達部品を介して接続されている。駆動機構201Zが駆動することにより、ヘッド110のZ方向の位置が調整される。また、駆動機構201Zは、Y軸の駆動機構201Yに動力伝達部品を介して接続されている。駆動機構201Yが駆動することにより、駆動機構201Zおよびヘッド110のY軸方向の位置が調整される。さらに、駆動機構201Yは、X軸の駆動機構201Xに動力伝達部品を介して接続されている。駆動機構201Xが駆動することにより、駆動機構201Y、駆動機構201Zおよびヘッド110のX方向の位置が調整される。 In the example shown in FIG. 1, the head 110 is connected to the Z-axis drive mechanism 201Z via a power transmission component. By driving the drive mechanism 201Z, the position of the head 110 in the Z direction is adjusted. Further, the drive mechanism 201Z is connected to the Y-axis drive mechanism 201Y via a power transmission component. By driving the drive mechanism 201Y, the positions of the drive mechanism 201Z and the head 110 in the Y-axis direction are adjusted. Further, the drive mechanism 201Y is connected to the X-axis drive mechanism 201X via a power transmission component. By driving the drive mechanism 201X, the positions of the drive mechanism 201Y, the drive mechanism 201Z, and the head 110 in the X direction are adjusted.

台座105は、ワークを設置するための場所であり、ワークを固定するためのネジ穴、治具またはクランプ等が設けられることがある。台座105は、一般的に長方形であり、台座105の四隅の角のいずれかが、ヘッド110のXY軸の座標(0,0)となる。制御装置100は、ヘッド110の位置を当該座標で指定し得る。 The pedestal 105 is a place for installing the work, and may be provided with screw holes, jigs, clamps, or the like for fixing the work. The pedestal 105 is generally rectangular, and one of the four corners of the pedestal 105 is the coordinate (0,0) of the XY axis of the head 110. The control device 100 can specify the position of the head 110 in the coordinates.

ヘッド110は、なんらかの作業ツールを取り付けられる。一例として、ヘッド110には、切削ツール、検査用カメラ、ピックアップ用のアーム、ハンダごてまたは電動ドライバー等の任意のツールをセットされ得る。ヘッド110は、駆動機構201によって位置を調整され、ワークに対して何らかの作業(検査、ネジ締め等)を実行する。 The head 110 can be attached with some work tool. As an example, the head 110 may be set with any tool such as a cutting tool, an inspection camera, a pickup arm, a soldering iron or an electric screwdriver. The position of the head 110 is adjusted by the drive mechanism 201, and some work (inspection, screw tightening, etc.) is executed on the work.

図3は、本実施形態に係る制御装置100の制御系の構成の一例を模式的に示す図である。制御装置100は、駆動機構201と、ヘッド110と、制御部301と、通信部302と、記憶部303と、入力部304と、出力部305とを備える。 FIG. 3 is a diagram schematically showing an example of the configuration of the control system of the control device 100 according to the present embodiment. The control device 100 includes a drive mechanism 201, a head 110, a control unit 301, a communication unit 302, a storage unit 303, an input unit 304, and an output unit 305.

駆動機構201は、駆動機構201を駆動させる動力源であるモーターと、当該モーターを制御するモータードライバーとを備える。より具体的には、駆動機構201Xには、モーター(Mx)と、モータードライバー(Dx)とが設けられている。駆動機構201Yには、モーター(My)と、モータードライバー(Dy)とが設けられている。駆動機構201Zには、モーター(Mz)と、モータードライバー(Dz)とが設けられている。ある局面において、各モーターおよびモータードライバーは、駆動機構201に内蔵されていてもよい。他の局面において、各モーターおよびモータードライバーは、駆動機構201の外部に設置されていてもよい。 The drive mechanism 201 includes a motor that is a power source for driving the drive mechanism 201, and a motor driver that controls the motor. More specifically, the drive mechanism 201X is provided with a motor (Mx) and a motor driver (Dx). The drive mechanism 201Y is provided with a motor (My) and a motor driver (Dy). The drive mechanism 201Z is provided with a motor (Mz) and a motor driver (Dz). In certain aspects, each motor and motor driver may be built into drive mechanism 201. In other aspects, each motor and motor driver may be installed outside the drive mechanism 201.

ヘッド110は、ヘッド110の先端に取り付けられるツールを制御するツール制御部310と、ツール320とを備える。ツール320は、着脱可能であってもよい。ある局面において、ツール320は、切削ツール、検査用カメラ、ピックアップ用のアーム、ハンダごてまたは電動ドライバー等の任意のツールであってもよい。ツール制御部310は、制御部301からの指令に基づいて、ツール320の動作を制御する。ある局面において、ツール制御部310は、ツール320に含まれていてもよい。 The head 110 includes a tool control unit 310 for controlling a tool attached to the tip of the head 110, and a tool 320. The tool 320 may be removable. In some aspects, the tool 320 may be any tool such as a cutting tool, an inspection camera, a pickup arm, a soldering iron or an electric screwdriver. The tool control unit 310 controls the operation of the tool 320 based on a command from the control unit 301. In some aspects, the tool control unit 310 may be included in the tool 320.

制御部301は、制御装置100全体を制御する。制御部301は、CPU(Central Processing Unit)と、RAM(Random Access Memory)と、ROM(Read Only Memory)とを含み得る。ある局面において、RAMおよび/またはROMは、制御部301の外部に設けられてもよい。 The control unit 301 controls the entire control device 100. The control unit 301 may include a CPU (Central Processing Unit), a RAM (Random Access Memory), and a ROM (Read Only Memory). In certain aspects, the RAM and / or ROM may be provided outside the control unit 301.

CPUは、RAMに読み込まれた各種プログラムおよびデータを実行または参照する。ある局面において、CPUは、組み込みCPUであってもよいし、FPGA(Field-Programmable Gate Array)であってもよいし、またはこれらの組み合わせ等によって構成されてもよい。 The CPU executes or refers to various programs and data read into the RAM. In a certain aspect, the CPU may be an embedded CPU, an FPGA (Field-Programmable Gate Array), or a combination thereof or the like.

RAMは、CPUによって実行されるプログラムと、CPUによって参照されるデータとを格納する。ある局面において、RAMは、DRAM(Dynamic Random Access Memory)またはSRAM(Static Random Access Memory)によって実現されてもよい。 The RAM stores a program executed by the CPU and data referenced by the CPU. In some aspects, the RAM may be realized by DRAM (Dynamic Random Access Memory) or SRAM (Static Random Access Memory).

ROMは、不揮発性メモリーであり、CPUによって実行されるプログラムを格納してもよい。その場合、CPUは、ROMからRAMに読み出されたプログラムを実行する。ある局面において、ROMは、EPROM(Erasable Programmable Read Only Memory)、EEPROM(Electrically Erasable Programmable Read-Only Memory)またはフラッシュメモリーによって実現されてもよい。 The ROM is a non-volatile memory and may store a program executed by the CPU. In that case, the CPU executes the program read from the ROM into the RAM. In some aspects, the ROM may be implemented by an EPROM (Erasable Programmable Read Only Memory), an EEPROM (Electrically Erasable Programmable Read-Only Memory) or a flash memory.

通信部302は、駆動機構201およびヘッド110に対する通信インターフェイスである。制御部301は、通信部302を介して、モータードライバーおよびツール制御部310の各々に制御信号を送信する。また、通信部302は、モータードライバーおよびツール制御部310の各々からモーターの回転数等の各種情報を受信し得る。 The communication unit 302 is a communication interface for the drive mechanism 201 and the head 110. The control unit 301 transmits a control signal to each of the motor driver and the tool control unit 310 via the communication unit 302. Further, the communication unit 302 can receive various information such as the rotation speed of the motor from each of the motor driver and the tool control unit 310.

記憶部303は、不揮発性メモリーであり、制御装置100の電源が切れた状態でもデータを保存しておくことができる。記憶部303は、CPUが実行または参照する任意のプログラムおよびデータを保存し得る。ある局面において、記憶部303は、HDD(Hard Disk Drive)またはSSD(Solid State Drive)によって実現されてもよい。CPUは、必要に応じて各種プログラムを記憶部303からRAMに読み込み、当該読み込まれたプログラムを実行することができる。 The storage unit 303 is a non-volatile memory, and can store data even when the power of the control device 100 is turned off. The storage unit 303 may store any program and data executed or referenced by the CPU. In a certain aspect, the storage unit 303 may be realized by an HDD (Hard Disk Drive) or an SSD (Solid State Drive). The CPU can read various programs from the storage unit 303 into the RAM as needed and execute the read programs.

入力部304は、外部からの各種入力操作を受け付けるためのインターフェイスである。入力部304は、キーボード、マウス、タッチパッドまたはゲームパッド等の任意の入力装置に接続され得る。ある局面において、入力部304は、通信ポートであってもよく、外部のコンピューター等から指令を受信し得る。制御部301は、当該指令に基づいて、駆動機構201およびヘッド110を制御し得る。他の局面において、入力部304は、緊急停止ボタンであってもよい。緊急停止ボタンが押されると、制御装置100は、駆動機構201およびヘッド110の動作を強制停止する。 The input unit 304 is an interface for receiving various input operations from the outside. The input unit 304 may be connected to any input device such as a keyboard, mouse, touchpad or gamepad. In a certain aspect, the input unit 304 may be a communication port and may receive a command from an external computer or the like. The control unit 301 can control the drive mechanism 201 and the head 110 based on the command. In another aspect, the input unit 304 may be an emergency stop button. When the emergency stop button is pressed, the control device 100 forcibly stops the operation of the drive mechanism 201 and the head 110.

出力部305は、外部に何らかの情報を出力するためのインターフェイスである。出力部305は、ブラウン管ディスプレイ、液晶ディスプレイまたは有機EL(electro-luminescence)ディスプレイ等の任意の出力装置に接続され得る。ある局面において、出力インターフェイス306は、USB端子、D−sub端子、DVI(Digital Visual Interface)端子およびHDMI(登録商標)(High-Definition Multimedia Interface)端子等によって実現されてもよい。他の局面において、出力部305は、外部のコンピューターに対して、信号を送信してもよい。 The output unit 305 is an interface for outputting some information to the outside. The output unit 305 may be connected to any output device such as a cathode ray tube display, a liquid crystal display or an organic EL (electro-luminescence) display. In a certain aspect, the output interface 306 may be realized by a USB terminal, a D-sub terminal, a DVI (Digital Visual Interface) terminal, an HDMI (registered trademark) (High-Definition Multimedia Interface) terminal, and the like. In another aspect, the output unit 305 may transmit a signal to an external computer.

図4は、制御装置100が備える機能モジュールの一例を示す模式図である。図4に示される機能モジュールは、ソフトウェアとして実現されてもよく、これらの機能モジュールは、制御部301によって実行され得る。 FIG. 4 is a schematic view showing an example of a functional module included in the control device 100. The functional modules shown in FIG. 4 may be realized as software, and these functional modules may be executed by the control unit 301.

制御装置100は、機能モジュールとして、モーター指令制御部400と、予測同期計算部430と、トリガー指令制御部450とを備える。モーター指令制御部400は、モーター司令部生成部401と、モーター指令補正部402と、モーター司令部403とを含む。トリガー指令制御部450は、トリガー指令生成部451と、トリガー指令補正部452と、トリガー司令部453とを含む。 The control device 100 includes a motor command control unit 400, a prediction synchronization calculation unit 430, and a trigger command control unit 450 as functional modules. The motor command control unit 400 includes a motor command unit generation unit 401, a motor command correction unit 402, and a motor command unit 403. The trigger command control unit 450 includes a trigger command generation unit 451, a trigger command correction unit 452, and a trigger command unit 453.

モーター司令部生成部401は、ヘッド110の目標位置の座標(Px,Py,Pz)を生成し、その目標位置に基づく位置指令をモーター指令補正部402に出力する。制御部301は、本実施の形態に基づく経路選択によって決定された各ポイントの通過順序に基づいてヘッド110の目標軌跡を計算する。 The motor command unit generation unit 401 generates coordinates (Px, Py, Pz) of the target position of the head 110, and outputs a position command based on the target position to the motor command correction unit 402. The control unit 301 calculates the target locus of the head 110 based on the passing order of each point determined by the route selection based on the present embodiment.

モーター指令補正部402は、X軸位置補正部、Y軸位置補正部、及びZ軸位置補正部を有しており、目標位置のX座標(Px)に対応するX軸指令位置がX軸位置補正部に入力され、目標位置のY座標(Py)に対応するY軸指令位置がY軸位置補正部に入力され、目標位置のZ座標(Pz)に対応するZ軸指令位置がZ軸位置補正部に入力される。 The motor command correction unit 402 has an X-axis position correction unit, a Y-axis position correction unit, and a Z-axis position correction unit, and the X-axis command position corresponding to the X coordinate (Px) of the target position is the X-axis position. The Y-axis command position that is input to the correction unit and corresponds to the Y coordinate (Py) of the target position is input to the Y-axis position correction unit, and the Z-axis command position that corresponds to the Z coordinate (Pz) of the target position is the Z-axis position. It is input to the correction unit.

モーター司令部403は、モーター指令補正部402の出力に基づいて、モータードライバーDx,DyおよびDzに対して指令を送信する。ある局面において、各モータードライバーに送信される指令は、モーターに出力するパルスまたは電流量、モーターの回転量、モーターのステップ数、または任意のモーターに対する指令であってもよい。 The motor command unit 403 transmits a command to the motor drivers Dx, Dy and Dz based on the output of the motor command correction unit 402. In one aspect, the command transmitted to each motor driver may be the amount of pulse or current output to the motor, the amount of rotation of the motor, the number of steps of the motor, or a command to any motor.

予測同期計算部430は、モータードライバーDx,DyおよびDzから駆動パラメーター(各軸の位置ループゲイン等のパラメーター)を読み出して取得する。また、予測同期計算部430は、モータードライバーDx,DyおよびDzのそれぞれの応答遅れ時間を取得する。予測同期計算部430は、これらの取得した情報に基づいて、応答遅れ時間を含む予測位置同期補正パラメーターを計算し、予測位置同期補正パラメーターをモーター指令補正部402に出力する。モーター指令補正部402は、取得した予測位置同期補正パラメーターに基づいて、モータードライバーへの指令を補正する。 The prediction synchronization calculation unit 430 reads and acquires drive parameters (parameters such as position loop gain of each axis) from the motor drivers Dx, Dy, and Dz. Further, the prediction synchronization calculation unit 430 acquires the response delay times of the motor drivers Dx, Dy and Dz, respectively. The prediction synchronization calculation unit 430 calculates the prediction position synchronization correction parameter including the response delay time based on the acquired information, and outputs the prediction position synchronization correction parameter to the motor command correction unit 402. The motor command correction unit 402 corrects the command to the motor driver based on the acquired predicted position synchronization correction parameter.

トリガー指令生成部451は、モーター指令補正部402によって補正されたX軸指令位置、Y軸指令位置、および、Z軸指令位置に基づく位置指令Cx,Cy,Czに各軸のモーターが同期して応答する時刻Tを計算する。また、トリガー指令生成部451は、その時刻Tにおいてツール320を動作させるためのトリガー指令を生成し、当該トリガー指令をトリガー指令補正部452に出力する。 The trigger command generation unit 451 synchronizes the motors of each axis with the position commands Cx, Cy, and Cz based on the X-axis command position, the Y-axis command position, and the Z-axis command position corrected by the motor command correction unit 402. Calculate the response time T. Further, the trigger command generation unit 451 generates a trigger command for operating the tool 320 at that time T, and outputs the trigger command to the trigger command correction unit 452.

トリガー指令補正部452は、各軸のモーターが同期して応答する時刻T、および、各軸のモーターの機械的な所定の反応時間に基づいて、ワークの一部の部品等の作業対象物がツール320の作業位置へ到達する時刻T2を計算する。また、トリガー指令補正部452は、その時刻T2に予測位置同期補正パラメーターを加味して、トリガー指令の補正を行う。 In the trigger command correction unit 452, the work object such as a part of the work is set based on the time T in which the motors of each axis respond in synchronization and the mechanically predetermined reaction time of the motors of each axis. The time T2 at which the working position of the tool 320 is reached is calculated. Further, the trigger command correction unit 452 corrects the trigger command by adding the predicted position synchronization correction parameter to the time T2.

トリガー司令部453は、トリガー指令補正部452から出力されたトリガー指令に基づいて、時刻T1にツール320が応答するように、ツール制御部310に対して補正後のトリガー指令を送信する。 Based on the trigger command output from the trigger command correction unit 452, the trigger command unit 453 transmits the corrected trigger command to the tool control unit 310 so that the tool 320 responds to the time T1.

<C.移動コストの計算方法> <C. How to calculate travel costs>

次に、図5〜図10を参照して、本実施の形態に従うヘッド110による各ポイント間の移動コストの第1の計算方法について詳細に説明する。図5は、ワーク500上を通過するヘッド110の通過経路の一例を示す図である。ワーク500は、部品を実装された基板であり、ポイント501〜508は、ヘッド110に備え付けられたカメラが検査すべきポイントであるとする。制御装置100は、各ポイントの通過順序を移動コストの計算に基づいて決定する。移動コストの計算方法は、直線軌跡の移動コストの計算方法と、曲線軌跡の移動コストの計算方法とを含む。ある局面において、移動コストの計算方法は、曲線軌跡の移動コストの計算方法のみを含んでもよい。 Next, with reference to FIGS. 5 to 10, the first calculation method of the movement cost between each point by the head 110 according to the present embodiment will be described in detail. FIG. 5 is a diagram showing an example of a passage path of the head 110 passing over the work 500. It is assumed that the work 500 is a substrate on which components are mounted, and points 501 to 508 are points to be inspected by a camera mounted on the head 110. The control device 100 determines the passing order of each point based on the calculation of the movement cost. The method of calculating the movement cost includes a method of calculating the movement cost of the straight locus and a method of calculating the movement cost of the curved locus. In one aspect, the method of calculating the movement cost may include only the method of calculating the movement cost of the curve locus.

図6は、軌跡角度θに基づく直線軌跡の移動コストの変化量の一例を示す図である。図6に示される例において、制御装置100は、ヘッド110の通過順序として「直前のポイントP→現在のポイントC」を決定済みである。制御装置100は、ポイントCから次の移動先の候補であるポイントN1〜N3(総称する場合は、「ポイントN」と表す)までの移動コストを計算する。 FIG. 6 is a diagram showing an example of the amount of change in the movement cost of the linear locus based on the locus angle θ T. In the example shown in FIG. 6, the control device 100 has already determined “immediately preceding point P → current point C” as the passing order of the head 110. The control device 100 calculates the movement cost from the point C to the points N1 to N3 (collectively referred to as "point N") which are candidates for the next movement destination.

直線軌跡の場合、ポイントCからポイントN1〜N3の各々までの距離が等しい場合、軌跡角度θに関係なく、ポイントCから次のポイントN1〜N3の各々までの直線軌跡の移動コストの計算式は以下の式で表される。

Figure 0006773243

また、グラフ600に示されるように、ポイントCから次のポイントNまでの直線軌跡の移動コストは、軌跡角度θに関係なく一定となる。そのため、制御装置100は、次の移動先としてポイントN1〜N3のいずれを選択してもよいことになる。 In the case of a straight locus, if the distances from point C to each of points N1 to N3 are equal, the calculation formula for the movement cost of the straight locus from point C to each of the next points N1 to N3 regardless of the locus angle θ T. Is expressed by the following formula.
Figure 0006773243

Further, as shown in the graph 600, the moving cost of the linear locus from the point C to the next point N is constant regardless of the locus angle θ T. Therefore, the control device 100 may select any of the points N1 to N3 as the next movement destination.

図7は、軌跡角度θに基づく曲線軌跡の移動コストの変化量の一例を示す図である。図7に示される例において、制御装置100は、ヘッド110の通過順序として「直前のポイントP→現在のポイントC」を決定済みである。制御装置100は、ポイントCから次の移動先の候補であるポイントN1〜N3までの移動コストを計算する。 FIG. 7 is a diagram showing an example of the amount of change in the movement cost of the curved locus based on the locus angle θ T. In the example shown in FIG. 7, the control device 100 has already determined “immediately preceding point P → current point C” as the passing order of the head 110. The control device 100 calculates the movement cost from the point C to the points N1 to N3 which are candidates for the next movement destination.

曲線軌跡の場合、ポイントCからポイントN1〜N3の各々までの距離が等しい場合、軌跡角度θに比例して移動コストが増大する。なぜならば、軌跡角度θの増加に伴い、ポイントP,C,Nを通過する円の円周の長さも増加するためである。ポイントCから次のポイントN1〜N3の各々までの曲線軌跡の移動コストの計算式は以下の式で表される。

Figure 0006773243

また、グラフ700に示されるように、ポイントCから次のポイントNまでの曲線軌跡の移動コストは、軌跡角度θに比例して増加する。そのため、制御装置100は、次の移動先として、最も軌跡角度θが小さいポイントN1を選択すべきことがわかる。 In the case of a curved locus, if the distances from the points C to each of the points N1 to N3 are equal, the movement cost increases in proportion to the locus angle θ T. This is because as the trajectory angle θ T increases, the circumference of the circle passing through the points P, C, and N also increases. The calculation formula of the movement cost of the curve locus from the point C to each of the following points N1 to N3 is expressed by the following formula.
Figure 0006773243

Further, as shown in the graph 700, the moving cost of the curved locus from the point C to the next point N increases in proportion to the locus angle θ T. Therefore, it can be seen that the control device 100 should select the point N1 having the smallest locus angle θ T as the next movement destination.

本実施の形態に従う制御装置100は、直線軌跡の移動コストの計算式と、曲線軌跡の移動コストの計算式とを組み合わせて使用し得る。より具体的には、直前のポイントP、現在のポイントC、および次のポイントNが直線上に並んでいる場合(軌跡角度θ=0の場合)には、制御装置100は、直線軌跡の移動コストの計算式により、ポイントCからポイントNまでの移動コストを計算する。逆に、直前のポイントP、現在のポイントC、および次のポイントNが直線上に並んでいない場合(軌跡角度θ≠0の場合)には、制御装置100は、曲線軌跡の移動コストの計算式により、ポイントCからポイントNまでの移動コストを計算する。 The control device 100 according to the present embodiment can use the calculation formula of the movement cost of the straight locus and the calculation formula of the movement cost of the curved locus in combination. More specifically, when the immediately preceding point P, the current point C, and the next point N are aligned on a straight line (when the locus angle θ T = 0), the control device 100 determines the linear locus. The movement cost from point C to point N is calculated by the movement cost calculation formula. On the contrary, when the immediately preceding point P, the current point C, and the next point N are not aligned on a straight line (when the locus angle θ T ≠ 0), the control device 100 determines the moving cost of the curved locus. The movement cost from point C to point N is calculated by the calculation formula.

当該処理により、制御装置100は、決定後のヘッド110による各ポイントの通過順序に基づいて、ヘッド110による各ポイントの通過経路(直線移動および曲線移動のみの経路)を生成し得る。当該通過経路は、ヘッド110を駆動させる駆動機構201およびモーターにかかる負荷を抑制する経路になる。 By this process, the control device 100 can generate a passage path (a path only for linear movement and curved movement) of each point by the head 110 based on the passing order of each point by the head 110 after the determination. The passage path is a path that suppresses the load applied to the drive mechanism 201 that drives the head 110 and the motor.

また、生成された通過経路は、最近傍法および2−opt法等のアルゴリズムによって求められており、駆動機構201およびモーターにかかる負荷を抑制しつつ、可能な限り距離の短い通過経路となる。 Further, the generated passage path is obtained by algorithms such as the nearest neighbor method and the 2-opt method, and the passage path is as short as possible while suppressing the load applied to the drive mechanism 201 and the motor.

<D.曲線軌跡の移動コストの計算方法の改良> <D. Improvement of calculation method of movement cost of curve locus>

次に、図8〜図14を参照して、曲線軌跡の移動コストの第2の計算方法について説明する。第2の計算方法は、第1の計算方法と比較して、計算によって求められる移動コストと、ヘッド110の実際の移動距離との誤差がより小さくなる点で異なる。第1の計算方法は、直前のポイントPから現在のポイントCまでの距離(以降、2点間の距離を例えば「距離(P,C)」と表す)と、現在のポイントCから次のポイントNまでの距離(C,N)との組み合わせによって、移動コストの誤差が大きく変化することがある。これに対して、第2の計算方法は、距離(P,C)および距離(C,N)との組み合わせが変化したとしても、移動コストの誤差はわずかしか変化しない。 Next, a second calculation method of the movement cost of the curve locus will be described with reference to FIGS. 8 to 14. The second calculation method differs from the first calculation method in that the error between the movement cost obtained by the calculation and the actual movement distance of the head 110 is smaller. The first calculation method is the distance from the immediately preceding point P to the current point C (hereinafter, the distance between the two points is expressed as, for example, "distance (P, C)") and the next point from the current point C. Depending on the combination with the distance to N (C, N), the error in travel cost may change significantly. On the other hand, in the second calculation method, even if the combination of the distance (P, C) and the distance (C, N) changes, the error of the travel cost changes only slightly.

図8は、距離(P,C)および距離(C,N)に基づく、第1の計算方法によって求められる移動コストの変化量の一例を示す図である。距離(P,C)および距離(N,C)の組み合わせパターンは、以下のパターン(1)〜(3)に分けられる。 FIG. 8 is a diagram showing an example of the amount of change in the travel cost obtained by the first calculation method based on the distance (P, C) and the distance (C, N). The combination pattern of the distance (P, C) and the distance (N, C) is divided into the following patterns (1) to (3).

パターン(1)は、距離(P,C)と距離(C,N)とが等しい場合である。この場合、グラフ810が示すように、移動コストは、軌跡角度θに比例して増加する。パターン(2)は、距離(P,C)が距離(C,N)よりも長い場合である。この場合、グラフ820が示すように、移動コストは、一旦、軌跡角度θに比例して増加した後に減少する。パターン(3)は、距離(P,C)が距離(C,N)よりも短い場合である。この場合、グラフ830が示すように、移動コストは、ある程度まで軌跡角度θに関係なくほとんど増加せず、軌跡角度θが一定以上の角度になると急激に増加する。 Pattern (1) is a case where the distance (P, C) and the distance (C, N) are equal. In this case, as shown in Graph 810, the movement cost increases in proportion to the locus angle θ T. Pattern (2) is the case where the distance (P, C) is longer than the distance (C, N). In this case, as shown in Graph 820, the movement cost once increases in proportion to the locus angle θ T and then decreases. Pattern (3) is the case where the distance (P, C) is shorter than the distance (C, N). In this case, as shown by graph 830, the movement cost is not increased almost regardless trajectory angle theta T to some extent, rapidly increases when the trajectory angle theta T is constant over the angle.

これに対して、ヘッド110の実際の移動距離は、グラフ810の示す移動コストに最も近い値となる。ヘッド110は、駆動機構201およびモーターへの負荷を抑制するため、曲線軌跡で移動する。そのため、ポイントP,C,Nが作る角度が鋭角になればなるほど、ヘッド110は大きく旋回し、最小ルートの直線から大きく離れていく。そのため、ヘッド110の実際の移動距離は、軌跡角度θに比例して増加する。 On the other hand, the actual moving distance of the head 110 is the value closest to the moving cost shown in the graph 810. The head 110 moves in a curved locus in order to suppress the load on the drive mechanism 201 and the motor. Therefore, the sharper the angle formed by the points P, C, and N, the larger the head 110 turns and the farther away from the straight line of the minimum route. Therefore, the actual moving distance of the head 110 increases in proportion to the locus angle θ T.

しかし、距離(P,C)および距離(C,N)の組み合わせによっては、グラフ820または830が示すように、移動コストが軌跡角度θに正確に比例しない場合がある。そのため、制御装置100の計算による移動コストと、ヘッド110の実際の移動距離との誤差が増大することがある。そこで、第2の計算方法は、この誤差を抑制する方法を提供する。 However, depending on the combination of the distance (P, C) and the distance (C, N), the movement cost may not be exactly proportional to the locus angle θ T , as shown by the graph 820 or 830. Therefore, the error between the calculated movement cost of the control device 100 and the actual movement distance of the head 110 may increase. Therefore, the second calculation method provides a method of suppressing this error.

図9は、第2の計算方法の前提となるポイントP’の一例を説明するための図である。制御装置100は、ヘッド110の通過順序として「直前のポイントP→現在のポイントC」を決定済みである。制御装置100は、ポイントCから次の移動先の候補であるポイントNまでの移動コストを計算する。また、距離(P,C)と距離(C,N)とは異なるものとする。 FIG. 9 is a diagram for explaining an example of the point P'which is a premise of the second calculation method. The control device 100 has already determined "previous point P-> current point C" as the passing order of the head 110. The control device 100 calculates the movement cost from the point C to the point N, which is a candidate for the next movement destination. Further, it is assumed that the distance (P, C) and the distance (C, N) are different.

この場合、制御装置100は、第2の計算方法を使用するために、線分PC上のポイントP’を選択する。このときの距離(P’,C)および距離(C,N)は等しくなる。次に制御装置100は、ポイントP’,C,Nに接する円の中心点を求める。制御装置100は、ポイントP’、およびポイントP’,C,Nに接する円に基づいて、ポイントCからポイントNまでの移動コストを計算する。 In this case, the control device 100 selects the point P'on the line segment PC in order to use the second calculation method. At this time, the distance (P', C) and the distance (C, N) are equal. Next, the control device 100 finds the center point of the circle tangent to the points P', C, and N. The control device 100 calculates the movement cost from the point C to the point N based on the points P'and the circles tangent to the points P', C, and N.

図10は、第2の計算方法の概要の一例を説明するための図である。制御装置100は、ポイントP,C,Nが一直線上に並んでいない場合、図9に示すように、ポイントP’を求める。次に、制御装置100は、ポイントP’,C,Nに接する円におけるポイントCからポイントNまでの円弧(以下、「円弧(CN)」と表す)の長さをポイントCからポイントNまでの移動コストとして計算する。円弧(CN)の移動コストの計算式は(数2)の式で表される。但し、Rは、ポイントP’,C,Nに接する円の半径である。制御装置100は、ポイントP,C,Nが一直線上に並んでいる場合、ポイントCからポイントNまでの移動コストを(数1)の計算式を用いて計算する。 FIG. 10 is a diagram for explaining an example of an outline of the second calculation method. When the points P, C, and N are not aligned in a straight line, the control device 100 obtains the point P'as shown in FIG. Next, the control device 100 sets the length of the arc from point C to point N (hereinafter referred to as “arc (CN)”) in the circle tangent to points P', C, and N from point C to point N. Calculated as travel cost. The formula for calculating the movement cost of the arc (CN) is expressed by the formula (Equation 2). However, R is the radius of the circle tangent to the points P', C, and N. When the points P, C, and N are aligned in a straight line, the control device 100 calculates the movement cost from the point C to the point N using the formula (Equation 1).

次に、図11〜図14を参照して、第1の計算方法によって計算された移動コスト、および第2の計算方法によって計算された移動コストの各々が、実際のヘッド110の通過経路に対してどの程度の誤差を有するのかを説明する。 Next, with reference to FIGS. 11 to 14, each of the movement cost calculated by the first calculation method and the movement cost calculated by the second calculation method is relative to the passage path of the actual head 110. Explain how much error there is.

図11は、ヘッド110の通過経路の第1の例である。ヘッド110は、Startを出発し、ポイント(P1)〜(P3)およびEndの順番にワーク1101上を移動する。距離(P1,P2)は、距離(P2,P3)に対して長いことがわかる。これは、図8のパターン(2)に相当する。ヘッド110は、一例として、通過経路1102上を移動するものとする。 FIG. 11 is a first example of a passage path of the head 110. The head 110 departs from Start and moves on the work 1101 in the order of points (P1) to (P3) and End. It can be seen that the distances (P1, P2) are longer than the distances (P2, P3). This corresponds to the pattern (2) in FIG. As an example, the head 110 is assumed to move on the passing path 1102.

図12は、ヘッド110の通過経路の第2の例である。ヘッド110は、Startを出発し、ポイント(P1)〜(P4)およびEndの順番にワーク1201上を移動する。距離(P2,P3)は、距離(P3,P4)と近い長さである。これは、図8のパターン(1)に相当する。ヘッド110は、一例として、通過経路1202上を移動するものとする。 FIG. 12 is a second example of the passage path of the head 110. The head 110 departs from Start and moves on the work 1201 in the order of points (P1) to (P4) and End. The distance (P2, P3) is a length close to the distance (P3, P4). This corresponds to the pattern (1) in FIG. As an example, the head 110 is assumed to move on the passage path 1202.

図13は、ヘッド110の通過経路の第3の例である。ヘッド110は、Startを出発し、ポイント(P1)〜(P5)およびEndの順番にワーク1301上を移動する。距離(P3,P4)は、距離(P4,P5)に対して短いことがわかる。これは、図8のパターン(3)に相当する。ヘッド110は、一例として、通過経路1302上を移動するものとする。 FIG. 13 is a third example of the passage path of the head 110. The head 110 departs from Start and moves on the work 1301 in the order of points (P1) to (P5) and End. It can be seen that the distance (P3, P4) is shorter than the distance (P4, P5). This corresponds to the pattern (3) in FIG. As an example, the head 110 is assumed to move on the passage path 1302.

図14は、第1の計算方法および第2の計算方法と、ヘッド110の通過経路の距離(実際の移動距離)との誤差の一例を示す図である。グラフ1404Aは、図11に示した経路における、第1の計算方法による移動コストと、ヘッド110の通過経路の距離との差分を示す。グラフ1404Bは、図12に示した経路における、第1の計算方法による移動コストと、ヘッド110の通過経路の距離との差分を示す。グラフ1404Cは、図13に示した経路における、第1の計算方法による移動コストと、ヘッド110の通過経路の距離との差分を示す。 FIG. 14 is a diagram showing an example of an error between the first calculation method and the second calculation method and the distance (actual movement distance) of the passage path of the head 110. Graph 1404A shows the difference between the movement cost according to the first calculation method and the distance of the passage path of the head 110 in the route shown in FIG. Graph 1404B shows the difference between the movement cost according to the first calculation method and the distance of the passage path of the head 110 in the route shown in FIG. Graph 1404C shows the difference between the movement cost according to the first calculation method and the distance of the passage path of the head 110 in the route shown in FIG.

グラフ1405Aは、図11に示した経路における、第2の計算方法による移動コストと、ヘッド110の通過経路の距離との差分を示す。グラフ1405Bは、図12に示した経路における、第2の計算方法による移動コストと、ヘッド110の通過経路の距離との差分を示す。グラフ1405Cは、図13に示した経路における、第2の計算方法による移動コストと、ヘッド110の通過経路の距離との差分を示す。ここでの差分とは、ヘッド110の通過経路の距離に対する移動コストの誤差であるともいえる。 Graph 1405A shows the difference between the movement cost according to the second calculation method and the distance of the passage path of the head 110 in the route shown in FIG. Graph 1405B shows the difference between the movement cost by the second calculation method and the distance of the passage path of the head 110 in the route shown in FIG. Graph 1405C shows the difference between the movement cost by the second calculation method and the distance of the passage path of the head 110 in the route shown in FIG. It can be said that the difference here is an error in the travel cost with respect to the distance of the passage path of the head 110.

上記のグラフ1404A〜1404Cを参照すると、制御装置100が第1の計算方法を使用した場合、図8のパターン(2),(3)を含む通過順序において、移動コストの誤差は増大することがわかる。 With reference to the above graphs 1404A to 1404C, when the control device 100 uses the first calculation method, the error of the movement cost may increase in the passage order including the patterns (2) and (3) of FIG. Recognize.

これに対して、上記のグラフ1405A〜1405Cを参照すると、制御装置100が第2の計算方法を使用した場合、いずれの通過経路についても移動コストの誤差はおおよそ一定であることがわかる。 On the other hand, referring to the graphs 1405A to 1405C described above, it can be seen that when the control device 100 uses the second calculation method, the error of the travel cost is substantially constant for all the passage routes.

グラフ1401は、ヘッド110の通過経路の距離を示す。グラフ1402は、第1の計算方法を使用した場合の移動コストの誤差を示す。グラフ1403は、第2の計算方法を使用した場合の移動コストの誤差を示す。グラフ1401〜1403からも明らかなように、制御装置100は、第2の計算方法を使用することで、ヘッド110によるワーク上の各ポイント間の移動コストを高い精度で計算することができる。 Graph 1401 shows the distance of the passage path of the head 110. Graph 1402 shows the error in travel cost when the first calculation method is used. Graph 1403 shows the error in travel cost when the second calculation method is used. As is clear from the graphs 1401 to 1403, the control device 100 can calculate the movement cost between the points on the work by the head 110 with high accuracy by using the second calculation method.

なお、制御装置100は、第1の計算方法および第2の計算方法を制御部301に実行させるためのプログラムを記憶部303に記憶しているものとする。制御装置100は、必要に応じて、これらのプログラムを記憶部303からRAMに読み込んで実行し得る。 It is assumed that the control device 100 stores in the storage unit 303 a program for causing the control unit 301 to execute the first calculation method and the second calculation method. The control device 100 can read these programs from the storage unit 303 into the RAM and execute them, if necessary.

<E.移動コストの計算方法によるモーターの負荷の変化> <E. Changes in motor load due to movement cost calculation method>

次に、図15〜図18を用いて、曲線軌跡の移動コストの計算を使用することで、モーターにかかる負荷がどのように変化のかを説明する。これ以降の説明では、直線軌跡の移動コストの計算によって求めた通過順序に基づく経路を、「直線軌跡モードの通過経路」と呼ぶ。曲線軌跡の移動コストの計算によって求めた通過順序に基づく経路を、「曲線軌跡モードの通過経路」と呼ぶ。 Next, with reference to FIGS. 15 to 18, how the load applied to the motor changes by using the calculation of the movement cost of the curved locus will be described. In the following description, a route based on the passage order obtained by calculating the movement cost of the linear locus is referred to as a "passage route in the linear locus mode". A route based on the passage order obtained by calculating the movement cost of the curve locus is called a "curve locus mode passage route".

図15は、直線軌跡モードの通過経路および曲線軌跡モードの通過経路の第1の例を示す図である。図15に示される例では、ヘッド110は、ワーク1501上のポイント(1)〜(7)を通過する。 FIG. 15 is a diagram showing a first example of a passage path in the linear locus mode and a passage path in the curved locus mode. In the example shown in FIG. 15, the head 110 passes through points (1)-(7) on the work 1501.

通過経路1502Aは、直線軌跡モードの通過経路である。通過経路1502Bは、曲線軌跡モードの通過経路である。通過経路1502Bは、通過経路1502Aに対して、比較的緩やかな曲線を描いていることがわかる。そのため、ヘッド110が、緩やか曲線で移動しており、駆動機構201を駆動するモーターへの負荷が抑制される。 The passage path 1502A is a passage route in the linear locus mode. The passage path 1502B is a passage path in the curve locus mode. It can be seen that the passage path 1502B draws a relatively gentle curve with respect to the passage route 1502A. Therefore, the head 110 moves in a gentle curve, and the load on the motor that drives the drive mechanism 201 is suppressed.

図16は、図15に示す各々のモードの通過経路の総移動距離およびモーターに対する負荷の一例を示す図である。図16を参照すると、曲線軌道モードの通過経路におけるヘッド110の総移動距離は、直線軌道モードの通過経路におけるヘッド110の総移動距離と比較して、わずかに増加している。 FIG. 16 is a diagram showing an example of the total travel distance of the passage path of each mode shown in FIG. 15 and the load on the motor. Referring to FIG. 16, the total movement distance of the head 110 in the passage path in the curved trajectory mode is slightly increased as compared with the total movement distance of the head 110 in the passage path in the straight trajectory mode.

また、曲線軌道モードの通過経路におけるヘッド110の最大加速度は、直線軌道モードの通過経路におけるヘッド110の最大加速度よりも大幅に減少している。このことから、曲線軌跡モードの通過経路は、直線軌跡モードの通過経路よりもなめらかで効率的な経路であることがわかる。 Further, the maximum acceleration of the head 110 in the passing path in the curved trajectory mode is significantly smaller than the maximum acceleration of the head 110 in the passing path in the linear trajectory mode. From this, it can be seen that the passing path in the curved locus mode is a smoother and more efficient path than the passing path in the straight locus mode.

図17は、直線軌跡モードの通過経路および曲線軌跡モードの通過経路の第2の例を示す図である。図15に示される例では、ヘッド110は、ワーク1501上のポイント(1)〜(21)を通過する。 FIG. 17 is a diagram showing a second example of a passage path in the linear locus mode and a passage path in the curved locus mode. In the example shown in FIG. 15, the head 110 passes through points (1)-(21) on the work 1501.

通過経路1702Aは、直線軌跡モードの通過経路である。通過経路1702Bは、曲線軌跡モードの通過経路である。通過経路1702Bは、通過経路1702Aに対して、比較的緩やかな曲線を描いていることがわかる。そのため、ヘッド110が、緩やか曲線で移動しており、駆動機構201を駆動するモーターへの負荷が抑制される。 The passage path 1702A is a passage route in the linear locus mode. The passage path 1702B is a passage route in the curved locus mode. It can be seen that the passage path 1702B draws a relatively gentle curve with respect to the passage route 1702A. Therefore, the head 110 moves in a gentle curve, and the load on the motor that drives the drive mechanism 201 is suppressed.

図18は、図17に示す各々の通過経路ごとの移動距離およびモーターに対する負荷の一例を示す図である。図18を参照すると、曲線軌道モードの通過経路におけるヘッド110の総移動距離は、直線軌道モードの通過経路におけるヘッド110の総移動距離と比較して、減少している。 FIG. 18 is a diagram showing an example of the moving distance and the load on the motor for each passing path shown in FIG. Referring to FIG. 18, the total moving distance of the head 110 in the passing path in the curved orbit mode is smaller than the total moving distance of the head 110 in the passing path in the straight orbit mode.

また、曲線軌道モードの通過経路におけるヘッド110の最大加速度は、直線軌道モードの通過経路におけるヘッド110の最大加速度よりも大幅に減少している。このことから、曲線軌跡モードの通過経路は、直線軌跡モードの通過経路よりもなめらかで効率的な経路であることがわかる。 Further, the maximum acceleration of the head 110 in the passing path in the curved trajectory mode is significantly smaller than the maximum acceleration of the head 110 in the passing path in the linear trajectory mode. From this, it can be seen that the passing path in the curved locus mode is a smoother and more efficient path than the passing path in the straight locus mode.

上記の図16および図18の比較結果からわかるように、制御装置100は、曲線軌道モードの通過経路を使用することで、駆動機構201を駆動させるモーターにかかる負荷を大幅に減少させることができる。また、制御装置100は、曲線軌道モードの通過経路を使用することで、ワーク上のポイントの場所および数によっては、総移動距離を減少させることもできる。 As can be seen from the comparison results of FIGS. 16 and 18 above, the control device 100 can significantly reduce the load applied to the motor that drives the drive mechanism 201 by using the passage path in the curved trajectory mode. .. In addition, the control device 100 can reduce the total movement distance depending on the location and number of points on the work by using the passage path in the curved trajectory mode.

<F.直線軌跡の経路選択の改良> <F. Improvement of route selection of straight trajectory>

次に、図19〜図21を参照して、改良された直線軌跡の移動コストの第3の計算方法について説明する。第3の計算方法は、各ポイント間の移動コストを直線軌跡および軌跡角度θによって定義する点で、第1および第2の計算方法とは異なる。 Next, a third calculation method of the improved movement cost of the linear locus will be described with reference to FIGS. 19 to 21. The third calculation method is different from the first and second calculation methods in that the movement cost between each point is defined by the linear locus and the locus angle θ T.

図19は、第3の計算方法の一例を示す模式図である。図19の例では、制御装置100は、ポイントP,Cまでの通過経路を決定済みであり、次にポイントCからポイントN1またはN2までの移動コストを算出する。第3の計算方法は、例えば、ワーク上に格子状に通過すべきポイントが整列しているような場合に効率のよく通過経路を決定することができる。第3の計算方法における移動コストの計算式は以下の式で表される。

Figure 0006773243

誤差許容値は、ポイントC,N間の誤差の許容値である。例えば、あるワーク上に通過すべきポイントが均等に格子状に並んでいるとする。しかし、製造誤差等により、各ポイント間の距離がわずかに変化することがある。誤差許容値は、このポイント間の距離の誤差の許容範囲を示す。図19の例では、「誤差許容値=0.55」である。 FIG. 19 is a schematic diagram showing an example of the third calculation method. In the example of FIG. 19, the control device 100 has already determined the passage route to the points P and C, and then calculates the movement cost from the point C to the point N1 or N2. In the third calculation method, for example, when the points to be passed in a grid pattern are aligned on the work, the passing route can be efficiently determined. The calculation formula of the movement cost in the third calculation method is expressed by the following formula.
Figure 0006773243

The error tolerance is an error tolerance between points C and N. For example, suppose that the points to be passed on a certain work are evenly arranged in a grid pattern. However, the distance between each point may change slightly due to manufacturing errors and the like. The error tolerance indicates the tolerance of the error of the distance between these points. In the example of FIG. 19, “error tolerance = 0.55”.

(数3)に示されるように、第3の計算方法は、軌跡角度θが増加するほど、移動コストが増加する。すなわち、Cを頂点としたときの線分(PC)および線分(PN)によって作られる角度が鋭角になるほど、移動コストは増加する。 As shown in (Equation 3), in the third calculation method, the movement cost increases as the locus angle θ T increases. That is, the sharper the angle created by the line segment (PC) and the line segment (PN) when C is the apex, the higher the movement cost.

図19の例では、「距離(C,N1)=40、ポイントP,C,N1における軌跡角度=0」、「距離(C,N2)=39.5、ポイントP,C,N2における軌跡角度=90」になる。そのため、ポイントN2は、ポイントN1よりもポイントCに近いことがわかる。しかし、ポイントP,C,N2における軌跡角度は、ポイントP,C,N1における軌跡角度よりも大きいため、第3の計算方法においては、ポイントCからポイントN1までの移動コストは、ポイントCからポイントN2までの移動コストよりも小さくなる。制御装置100は、第3の計算方法に基づいて、移動コストを計算することで、ヘッド110が移動時に曲がらないポイントを優先的に選択することができる。 In the example of FIG. 19, "distance (C, N1) = 40, locus angle at points P, C, N1 = 0", "distance (C, N2) = 39.5, locus angle at points P, C, N2". = 90 ". Therefore, it can be seen that the point N2 is closer to the point C than the point N1. However, since the locus angle at points P, C, and N2 is larger than the locus angle at points P, C, and N1, in the third calculation method, the movement cost from point C to point N1 is from point C to point. It is smaller than the travel cost to N2. By calculating the movement cost based on the third calculation method, the control device 100 can preferentially select a point at which the head 110 does not bend when moving.

図20は、制御装置100が第3の計算方法を用いて決定した通過順序の一例を示す。図20の例において、制御装置100は、ワーク2001上のポイント(1)〜(25)上を通過する。通過経路2002Aは、制御装置100が第3の計算方法によって求められる移動コストを用いて最近傍法により決定した通過順序に基づいて生成される。制御装置100は、可能な限り、ヘッド110を直線上に移動できるように通過順序を決定していることがわかる。通過経路2002Bは、制御装置100が2−opt法を通過経路2002Aに適用した結果である。 FIG. 20 shows an example of the passage order determined by the control device 100 using the third calculation method. In the example of FIG. 20, the control device 100 passes over the points (1) to (25) on the work 2001. The passage path 2002A is generated based on the passage order determined by the control device 100 by the nearest neighbor method using the movement cost obtained by the third calculation method. It can be seen that the control device 100 determines the passing order so that the head 110 can be moved in a straight line as much as possible. The passage path 2002B is the result of the control device 100 applying the 2-opt method to the passage path 2002A.

上記のように、本実施の形態に従う制御装置100は、第1〜第3の計算方法のいずれかを用いてワーク上の各ポイント間の移動コストを算出する。制御装置100は、当該移動コストに基づいて、最近傍法、2−opt法等のアルゴリズムにより、ヘッド110の各ポイントの通過順序を決定する。 As described above, the control device 100 according to the present embodiment calculates the movement cost between each point on the work by using any of the first to third calculation methods. Based on the movement cost, the control device 100 determines the passing order of each point of the head 110 by an algorithm such as the nearest neighbor method or the 2-opt method.

<G.制御装置100の内部処理> <G. Internal processing of control device 100>

図21は、制御装置100の移動コスト算出の手順の一例を示す図である。ある局面において、制御部301は、図21の処理を行うためのプログラムを記憶部303からRAMに読み込んで、当該プログラムを実行してもよい。他の局面において、当該処理の一部または全部は、当該処理を実行するように構成された回路素子の組み合わせとしても実現され得る。 FIG. 21 is a diagram showing an example of a procedure for calculating the movement cost of the control device 100. In a certain aspect, the control unit 301 may read the program for performing the process of FIG. 21 into the RAM from the storage unit 303 and execute the program. In other aspects, some or all of the processing may also be realized as a combination of circuit elements configured to perform the processing.

ステップS2105において、制御部301は、移動コストの算出方法を選択する。プログラムにおけるユーザーの入力等により直線軌跡の算出方法が選択されていた場合、制御部301は、制御をステップS2110に移す。または、制御部301が直前のポイントP,現在のポイントC,および次のポイントNの位置関係に基づいて直線軌跡の算出方法を選択した場合、制御部301は、制御をステップS2110に移す。そうでない場合(プログラムにおけるユーザーの入力等により曲線軌跡の算出方法が選択されていた場合、または制御部301がポイントP,C,Nの位置関係に基づいて曲線軌跡の算出方法を選択した場合)、制御部301は、制御をステップS2120に移す。 In step S2105, the control unit 301 selects a method for calculating the movement cost. When the method of calculating the linear locus is selected by the user's input in the program, the control unit 301 shifts the control to step S2110. Alternatively, when the control unit 301 selects the method of calculating the linear locus based on the positional relationship between the immediately preceding point P, the current point C, and the next point N, the control unit 301 shifts the control to step S2110. Otherwise (when the curve locus calculation method is selected by the user's input in the program, or when the control unit 301 selects the curve locus calculation method based on the positional relationship of points P, C, N). , The control unit 301 shifts the control to step S2120.

ステップS2110において、制御部301は、ポイントP,C,Nにおける軌跡角度を算出する。ステップS2115において、制御部301は、第3の計算方法における(数3)の式(6)を使用して、ポイントCからポイントNまでの移動コストを算出する。 In step S2110, the control unit 301 calculates the locus angles at points P, C, and N. In step S2115, the control unit 301 calculates the movement cost from the point C to the point N by using the equation (6) of (Equation 3) in the third calculation method.

ステップS2120において、制御部301は、ポイントP,C,Nにおける軌跡角度を算出する。ステップS2125において、制御部301は、「軌跡角度≠0」であるか否か、すなわちポイントP,C,Nが一直線上に存在しないか否かを判定する。制御部301は、「軌跡角度≠0」であると判定した場合(ステップS2125にてYES)、制御をステップS2130に移す。そうでない場合(ステップS2125にてNO)、制御部301は、制御をステップS2135に移す。 In step S2120, the control unit 301 calculates the locus angles at points P, C, and N. In step S2125, the control unit 301 determines whether or not “trajectory angle ≠ 0”, that is, whether or not points P, C, and N do not exist in a straight line. When the control unit 301 determines that “trajectory angle ≠ 0” (YES in step S2125), the control unit 301 shifts control to step S2130. If not (NO in step S2125), the control unit 301 shifts control to step S2135.

ステップS2130において、制御部301は、(数2)の式(2)により、ポイントCからポイントNまでの移動コストを算出する。ある局面において、制御部301は、ポイントP,C,Nに基づいて、第1の計算方法によりポイントCからポイントNまでの移動コストを算出してもよい。また、他の局面において、制御部301は、ポイントP’,C,Nに基づいて、第2の計算方法によりポイントCからポイントNまでの移動コストを算出してもよい。ステップS2135において、制御部301は、(数1)の式(1)により、ポイントCからポイントNまでの移動コストを算出する。 In step S2130, the control unit 301 calculates the movement cost from the point C to the point N by the equation (2) of (Equation 2). In a certain aspect, the control unit 301 may calculate the movement cost from the point C to the point N by the first calculation method based on the points P, C, and N. Further, in another aspect, the control unit 301 may calculate the movement cost from the point C to the point N by the second calculation method based on the points P', C, and N. In step S2135, the control unit 301 calculates the movement cost from the point C to the point N by the equation (1) of (Equation 1).

以上説明したように、本実施の形態に従う制御装置100は、直線軌跡の移動コストの計算式と、曲線軌跡の移動コストの計算式とを組み合わせて使用することで、ワーク上の各ポイント間の移動コストを算出する。制御装置100は、この移動コストに基づいて、最近傍法、2−opt法等のアルゴリズムにより、ヘッド110の各ポイントの通過順序を決定する。当該処理により、制御装置100は、ヘッド110を駆動させるための駆動機構201およびモーターにかかる負荷を抑制しつつ、効率のよりポイントの通過順序を決定し得る。 As described above, the control device 100 according to the present embodiment uses the calculation formula of the movement cost of the linear locus and the calculation formula of the movement cost of the curved locus in combination to be used between the points on the work. Calculate the travel cost. Based on this movement cost, the control device 100 determines the passing order of each point of the head 110 by an algorithm such as the nearest neighbor method or the 2-opt method. By this process, the control device 100 can determine the passing order of more points of efficiency while suppressing the load applied to the drive mechanism 201 and the motor for driving the head 110.

<H.付記> <H. Addendum>

上述したような本実施の形態は、以下のような技術思想を含む。
[構成1]
ワークを設置するための台座(105)と、
前記台座の上を移動するヘッド(110)と、
前記ヘッドを前記台座の第1の軸方向に移動させるための第1の駆動機構(201X)と、
前記ヘッドを前記台座の第2の軸方向に移動させるための第2の駆動機構(201Y)と、
前記第1の駆動機構および前記第2の駆動機構を制御する制御部(301)とを備え、
前記制御部は、
前記ヘッドが、前記ワークの複数のポイントを通過する場合において、前記ヘッドが現在のポイント(C)から次のポイント(N)まで曲線軌跡を描く動作で通過したときの移動コストを計算し、
前記移動コストが最少になるように前記ヘッドの次の移動先のポイントを選定する、制御装置。
[構成2]
前記曲線軌跡は、前記ヘッドの直前のポイント(P)と、前記現在のポイントと、前記次のポイントとに接する円上を通過する軌跡である、構成1に記載の制御装置。
[構成3]
前記制御部は、前記ヘッドの直前のポイントと、前記現在のポイントとを通過する線分上にあるポイントP(P’)を求め、
前記ポイントPから前記現在のポイントまでの距離と、前記現在のポイントから前記次のポイントまでの距離とは等しく、
前記曲線軌跡は、前記ポイントPと、前記現在のポイントと、前記次のポイントとに接する円上を通過する軌跡である、構成1に記載の制御装置。
[構成4]
前記制御部は、
前記直前のポイントと、前記現在のポイントと、前記次のポイントとが直線上に並ぶか否かを判定し、
前記直前のポイントと、前記現在のポイントと、前記次のポイントとが直線上に並ぶ場合、前記ヘッドが前記現在のポイントから前記次のポイントまでを直線軌跡を描く動作で通過したときの移動コストを計算し、
前記直前のポイントと、前記現在のポイントと、前記次のポイントとが直線上に並ばない場合、前記ヘッドが前記現在のポイントから前記次のポイントまでを前記曲線軌跡を描く動作で通過したときの移動コストを計算する、構成2または3に記載の制御装置。
[構成5]
前記制御部は、
前記ヘッドのポイントの通過順序の決定後に、前記ヘッドが各ポイントを通過するときの通過経路が前記ヘッドの最小旋回半径以上となるように、前記ヘッドの通過経路を決定する、構成1〜4のいずれかに記載の制御装置。
[構成6]
前記制御部は、
前記ヘッドが前記曲線軌跡を描く動作で通過したときの移動コストに基づいて、前記ヘッドのポイントの通過順序を決定した後に、2−opt法により前記ヘッドのポイントの通過順序を変更する、構成1〜5のいずれかに記載の制御装置。
[構成7]
前記制御部は、
前記ヘッドが曲線軌跡を描く動作で通過したときの移動コストの計算方法と、前記ヘッドが直線軌跡を描く動作で通過したときの移動コストの計算方法との選択の入力を受け付け、
前記ヘッドが直線を描く動作で通過したときの移動コストの計算方法は、前記現在のポイントから前記次のポイントまでの距離の誤差許容値が0より大きいとき、前記現在のポイントを頂点としたときの、前記直前のポイントおよび前記現在のポイントを結ぶ線分と、前記現在のポイントおよび前記次のポイントを結ぶ線分との角度が180度から小さくなるほど移動コストが増加する、構成2または3に記載の制御装置。
[構成8]
制御装置におけるヘッドのワーク上の各ポイントの通過順序を求める方法であって、
ヘッドが、前記ワーク上の複数のポイントを通過する場合において、前記ヘッドが現在のポイントから次のポイントまで曲線軌跡を描く動作で通過したときの移動コストを計算するステップと、
前記移動コストが最少になるように前記ヘッドの次の移動先のポイントを選定するステップとを含む、方法。
[構成9]
前記曲線軌跡は、前記ヘッドの直前のポイントと、前記現在のポイントと、前記次のポイントとに接する円上を通過する軌跡である、構成8に記載の方法。
[構成10]
前記方法は、前記ヘッドの直前のポイントと、前記現在のポイントとを通過する線分上にあるポイントPを求めるステップをさらに含み、
前記ポイントPから前記現在のポイントまでの距離と、前記現在のポイントから前記次のポイントまでの距離とは等しく、
前記曲線軌跡は、前記ポイントPと、前記現在のポイントと、前記次のポイントとに接する円上を通過する軌跡である、構成8に記載の方法。
[構成11]
前記直前のポイントと、前記現在のポイントと、前記次のポイントとが直線上に並ぶか否かを判定するステップと、
前記直前のポイントと、前記現在のポイントと、前記次のポイントとが直線上に並ぶ場合、前記ヘッドが前記現在のポイントから前記次のポイントまでを直線軌跡を描く動作で通過したときの移動コストを計算するステップと、
前記直前のポイントと、前記現在のポイントと、前記次のポイントとが直線上に並ばない場合、前記ヘッドが前記現在のポイントから前記次のポイントまでを前記曲線軌跡を描く動作で通過したときの移動コストを計算するステップとをさらに含む、構成9または10に記載の方法。
[構成12]
前記ヘッドのポイントの通過順序の決定後に、前記ヘッドが各ポイントを通過するときの通過経路が前記ヘッドの最小旋回半径以上となるように、前記ヘッドの通過経路を決定するステップをさらに含む、構成8〜11のいずれかに記載の方法。
[構成13]
前記ヘッドが前記曲線軌跡を描く動作で通過したときの移動コストに基づいて、前記ヘッドのポイントの通過順序を決定した後に、2−opt法により前記ヘッドのポイントの通過順序を変更するステップをさらに含む、構成8〜12のいずれかに記載の方法。
[構成14]
前記方法は、前記ヘッドが曲線軌跡を描く動作で通過したときの移動コストの計算方法と、前記ヘッドが直線軌跡を描く動作で通過したときの移動コストの計算方法との選択の入力を受け付けるステップをさらに含み、
前記ヘッドが直線を描く動作で通過したときの移動コストの計算方法は、前記現在のポイントから前記次のポイントまでの距離の誤差許容値が0より大きいとき、前記現在のポイントを頂点としたときの、前記直前のポイントおよび前記現在のポイントを結ぶ線分と、前記現在のポイントおよび前記次のポイントを結ぶ線分との角度が180度から小さくなるほど移動コストが増加する、構成9または10に記載の方法。
[構成15]
構成8〜14のいずれかに記載の方法を制御装置に実行させるためのプログラム。
The present embodiment as described above includes the following technical ideas.
[Structure 1]
A pedestal (105) for installing the work and
A head (110) that moves on the pedestal and
A first drive mechanism (201X) for moving the head in the first axial direction of the pedestal, and
A second drive mechanism (201Y) for moving the head in the second axial direction of the pedestal, and
A control unit (301) that controls the first drive mechanism and the second drive mechanism is provided.
The control unit
When the head passes through a plurality of points of the work, the movement cost when the head passes by the operation of drawing a curved locus from the current point (C) to the next point (N) is calculated.
A control device that selects a point to move next to the head so that the movement cost is minimized.
[Structure 2]
The control device according to configuration 1, wherein the curved locus is a locus that passes on a circle in contact with a point (P) immediately before the head, the current point, and the next point.
[Structure 3]
The control unit obtains a point P (P') on a line segment passing through the point immediately before the head and the current point.
The distance from the point P to the current point is equal to the distance from the current point to the next point.
The control device according to configuration 1, wherein the curved locus is a locus that passes on a circle in contact with the point P, the current point, and the next point.
[Structure 4]
The control unit
It is determined whether or not the immediately preceding point, the current point, and the next point are aligned on a straight line.
When the immediately preceding point, the current point, and the next point are aligned on a straight line, the movement cost when the head passes from the current point to the next point in a straight line locus. Calculate and
When the immediately preceding point, the current point, and the next point are not aligned on a straight line, when the head passes from the current point to the next point in an operation of drawing a curved locus. The control device according to configuration 2 or 3, which calculates the travel cost.
[Structure 5]
The control unit
After determining the passing order of the points of the head, the passing path of the head is determined so that the passing path when the head passes each point is equal to or larger than the minimum turning radius of the head. The control device according to any one.
[Structure 6]
The control unit
After determining the passing order of the points of the head based on the movement cost when the head passes by the operation of drawing the curved locus, the passing order of the points of the head is changed by the 2-opt method. The control device according to any one of.
[Structure 7]
The control unit
The input of selection between the calculation method of the movement cost when the head passes by the operation of drawing a curved locus and the calculation method of the movement cost when the head passes by the operation of drawing a straight line locus is accepted.
The method of calculating the movement cost when the head passes in a straight line is when the error tolerance of the distance from the current point to the next point is larger than 0 and the current point is set as the apex. The movement cost increases as the angle between the line segment connecting the immediately preceding point and the current point and the line segment connecting the current point and the next point decreases from 180 degrees, according to the configuration 2 or 3. The control device described.
[Structure 8]
It is a method of finding the passing order of each point on the work of the head in the control device.
When the head passes through a plurality of points on the work, the step of calculating the movement cost when the head passes by the operation of drawing a curved locus from the current point to the next point, and
A method comprising the step of selecting the next destination point of the head so that the movement cost is minimized.
[Structure 9]
The method according to configuration 8, wherein the curved locus is a locus that passes on a circle in contact with the point immediately before the head, the current point, and the next point.
[Structure 10]
The method further comprises the step of finding a point P on a line segment passing through the point immediately preceding the head and the current point.
The distance from the point P to the current point is equal to the distance from the current point to the next point.
The method according to configuration 8, wherein the curved locus is a locus that passes on a circle in contact with the point P, the current point, and the next point.
[Structure 11]
A step of determining whether or not the immediately preceding point, the current point, and the next point are aligned on a straight line.
When the immediately preceding point, the current point, and the next point are aligned on a straight line, the movement cost when the head passes from the current point to the next point in a straight line locus. And the steps to calculate
When the immediately preceding point, the current point, and the next point are not aligned on a straight line, when the head passes from the current point to the next point in an operation of drawing a curved locus. 9. The method of configuration 9 or 10, further comprising calculating the cost of travel.
[Structure 12]
After determining the passing order of the points of the head, the configuration further includes a step of determining the passing path of the head so that the passing path when the head passes each point is equal to or larger than the minimum turning radius of the head. The method according to any one of 8 to 11.
[Structure 13]
After determining the passing order of the points of the head based on the movement cost when the head passes by the motion of drawing the curved locus, a step of changing the passing order of the points of the head by the 2-opt method is further added. The method according to any of configurations 8-12, comprising.
[Structure 14]
The method is a step of accepting input for selection between a method of calculating the movement cost when the head passes by the operation of drawing a curved locus and a method of calculating the movement cost when the head passes by the operation of drawing a linear locus. Including
The method of calculating the movement cost when the head passes in a straight line is when the error tolerance of the distance from the current point to the next point is larger than 0 and the current point is set as the apex. In configuration 9 or 10, the movement cost increases as the angle between the line segment connecting the immediately preceding point and the current point and the line segment connecting the current point and the next point decreases from 180 degrees. The method described.
[Structure 15]
A program for causing a control device to execute the method according to any one of configurations 8 to 14.

今回開示された実施の形態は全ての点で例示であって制限的なものではないと考えられるべきである。本開示の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内で全ての変更が含まれることが意図される。また、実施の形態および各変形例において説明された開示内容は、可能な限り、単独でも、組合わせても、実施することが意図される。 It should be considered that the embodiments disclosed this time are exemplary in all respects and not restrictive. The scope of the present disclosure is shown by the scope of claims rather than the above description, and it is intended that all modifications are included in the meaning and scope equivalent to the scope of claims. In addition, the disclosure contents described in the embodiments and the respective modifications are intended to be implemented alone or in combination as much as possible.

100 制御装置、105 台座、110 ヘッド、120 経路、201 駆動機構、301 制御部、302 通信部、303 記憶部、304 入力部、305 出力部、306 出力インターフェイス、310 ツール制御部、320 ツール、400 モーター指令制御部、401 モーター司令部生成部、402 モーター指令補正部、403 モーター司令部、430 予測同期計算部、450 トリガー指令制御部、451 トリガー指令生成部、452 トリガー指令補正部、453 トリガー司令部。 100 control device, 105 pedestal, 110 head, 120 paths, 201 drive mechanism, 301 control unit, 302 communication unit, 303 storage unit, 304 input unit, 305 output unit, 306 output interface, 310 tool control unit, 320 tool, 400 Motor command control unit, 401 motor command generation unit, 402 motor command correction unit, 403 motor command unit, 430 prediction synchronization calculation unit, 450 trigger command control unit, 451 trigger command generation unit, 452 trigger command correction unit, 453 trigger command Department.

Claims (13)

ワークを設置するための台座と、
前記台座の上を移動するヘッドと、
前記ヘッドを前記台座の第1の軸方向に移動させるための第1の駆動機構と、
前記ヘッドを前記台座の第2の軸方向に移動させるための第2の駆動機構と、
前記第1の駆動機構および前記第2の駆動機構を制御する制御部とを備え、
前記制御部は、
前記ヘッドが、前記ワークの複数のポイントを通過する場合において、前記ヘッドが現在のポイントから次のポイントまで曲線軌跡を描く動作で通過したときの移動コストを計算し、
前記移動コストが最少になるように前記ヘッドの次の移動先のポイントを選定
前記曲線軌跡は、前記ヘッドの直前のポイントと、前記現在のポイントと、前記次のポイントとに接する円上を通過する軌跡である、制御装置。
A pedestal for installing the work and
A head that moves on the pedestal and
A first drive mechanism for moving the head in the first axial direction of the pedestal, and
A second drive mechanism for moving the head in the second axial direction of the pedestal, and
A control unit that controls the first drive mechanism and the second drive mechanism is provided.
The control unit
When the head passes through a plurality of points of the work, the movement cost when the head passes by the operation of drawing a curved locus from the current point to the next point is calculated.
The movement cost is selected point of the next destination of the head so as to minimize
The curve locus is a locus that passes on a circle in contact with a point immediately before the head, the current point, and the next point .
ワークを設置するための台座と、
前記台座の上を移動するヘッドと、
前記ヘッドを前記台座の第1の軸方向に移動させるための第1の駆動機構と、
前記ヘッドを前記台座の第2の軸方向に移動させるための第2の駆動機構と、
前記第1の駆動機構および前記第2の駆動機構を制御する制御部とを備え、
前記制御部は、
前記ヘッドが、前記ワークの複数のポイントを通過する場合において、前記ヘッドの直前のポイントと、現在のポイントとを通過する直線上にあるポイントPを求め、
前記ヘッドが前記現在のポイントから次のポイントまで曲線軌跡を描く動作で通過したときの移動コストを計算し、
前記移動コストが最少になるように前記ヘッドの次の移動先のポイントを選定し、
前記ポイントPから前記現在のポイントまでの距離と、前記現在のポイントから前記次のポイントまでの距離とは等しく、
前記曲線軌跡は、前記ポイントPと、前記現在のポイントと、前記次のポイントとに接する円上を通過する軌跡である、制御装置。
A pedestal for installing the work and
A head that moves on the pedestal and
A first drive mechanism for moving the head in the first axial direction of the pedestal, and
A second drive mechanism for moving the head in the second axial direction of the pedestal, and
A control unit that controls the first drive mechanism and the second drive mechanism is provided.
The control unit
When the head passes through a plurality of points of the work, a point P on a straight line passing through the point immediately before the head and the current point is obtained.
The movement cost when the head passes through the motion of drawing a curved locus from the current point to the next point is calculated.
Select the next destination point of the head so that the movement cost is minimized.
The distance from the point P to the current point is equal to the distance from the current point to the next point.
The curved locus is a locus that passes on a circle in contact with the point P, the current point, and the next point.
前記制御部は、
前記直前のポイントと、前記現在のポイントと、前記次のポイントとが直線上に並ぶか否かを判定し、
前記直前のポイントと、前記現在のポイントと、前記次のポイントとが直線上に並ぶ場合、前記ヘッドが前記現在のポイントから前記次のポイントまでを直線軌跡を描く動作で通過したときの移動コストを計算し、
前記直前のポイントと、前記現在のポイントと、前記次のポイントとが直線上に並ばない場合、前記ヘッドが前記現在のポイントから前記次のポイントまでを前記曲線軌跡を描く動作で通過したときの移動コストを計算する、請求項1または2に記載の制御装置。
The control unit
It is determined whether or not the immediately preceding point, the current point, and the next point are aligned on a straight line.
When the immediately preceding point, the current point, and the next point are aligned on a straight line, the movement cost when the head passes from the current point to the next point in a straight line locus. Calculate and
When the immediately preceding point, the current point, and the next point are not aligned on a straight line, when the head passes from the current point to the next point in an operation of drawing a curved locus. The control device according to claim 1 or 2 , which calculates a travel cost.
前記制御部は、
前記ヘッドのポイントの通過順序の決定後に、前記ヘッドが各ポイントを通過するときの通過経路が前記ヘッドの最小旋回半径以上となるように、前記ヘッドの通過経路を決定する、請求項1〜3のいずれかに記載の制御装置。
The control unit
After the determination of the path sequence of points of the head, the head is such that passage path as it passes through each point becomes a minimum turning radius than the head, which determines the passage path of the head, according to claim 1 to 3 The control device according to any one of.
前記制御部は、
前記ヘッドが前記曲線軌跡を描く動作で通過したときの移動コストに基づいて、前記ヘッドのポイントの通過順序を決定した後に、2−opt法により前記ヘッドのポイントの通過順序を変更する、請求項1〜のいずれかに記載の制御装置。
The control unit
The claim that the passing order of the points of the head is changed by the 2-opt method after the passing order of the points of the head is determined based on the moving cost when the head passes by the operation of drawing the curved locus. The control device according to any one of 1 to 4 .
前記制御部は、
前記ヘッドが曲線軌跡を描く動作で通過したときの移動コストの計算方法と、前記ヘッドが直線軌跡を描く動作で通過したときの移動コストの計算方法との選択の入力を受け付け、
前記ヘッドが直線を描く動作で通過したときの移動コストの計算方法は、前記現在のポイントから前記次のポイントまでの距離の誤差許容値が0より大きいとき、前記現在のポイントを頂点としたときの、前記直前のポイントおよび前記現在のポイントを結ぶ線分と、前記現在のポイントおよび前記次のポイントを結ぶ線分との角度が180度から小さくなるほど移動コストが増加する、請求項1または2に記載の制御装置。
The control unit
The input of selection between the calculation method of the movement cost when the head passes by the operation of drawing a curved locus and the calculation method of the movement cost when the head passes by the operation of drawing a straight line locus is accepted.
The method of calculating the movement cost when the head passes in a straight line is when the error tolerance of the distance from the current point to the next point is larger than 0 and the current point is set as the apex. The movement cost increases as the angle between the line segment connecting the immediately preceding point and the current point and the line segment connecting the current point and the next point decreases from 180 degrees, according to claim 1 or 2. The control device described in.
制御装置におけるヘッドのワーク上の各ポイントの通過順序を求める方法であって、
ヘッドが、前記ワーク上の複数のポイントを通過する場合において、前記ヘッドが現在のポイントから次のポイントまで曲線軌跡を描く動作で通過したときの移動コストを計算するステップと、
前記移動コストが最少になるように前記ヘッドの次の移動先のポイントを選定するステップとを含
前記曲線軌跡は、前記ヘッドの直前のポイントと、前記現在のポイントと、前記次のポイントとに接する円上を通過する軌跡である、方法。
It is a method of finding the passing order of each point on the work of the head in the control device.
When the head passes through a plurality of points on the work, the step of calculating the movement cost when the head passes by the operation of drawing a curved locus from the current point to the next point, and
Look including the step of the movement cost is selected points of the next destination of the head so as to minimize
A method in which the curved locus is a locus that passes on a circle in contact with a point immediately before the head, the current point, and the next point .
制御装置におけるヘッドのワーク上の各ポイントの通過順序を求める方法であって、
ヘッドが、前記ワーク上の複数のポイントを通過する場合において、前記ヘッドの直前のポイントと、現在のポイントとを通過する直線上にあるポイントPを求めるステップと、
前記ヘッドが前記現在のポイントから次のポイントまで曲線軌跡を描く動作で通過したときの移動コストを計算するステップと、
前記移動コストが最少になるように前記ヘッドの次の移動先のポイントを選定するステップとを含み、
前記ポイントPから前記現在のポイントまでの距離と、前記現在のポイントから前記次のポイントまでの距離とは等しく、
前記曲線軌跡は、前記ポイントPと、前記現在のポイントと、前記次のポイントとに接する円上を通過する軌跡である、方法。
It is a method of finding the passing order of each point on the work of the head in the control device.
When the head passes through a plurality of points on the work, a step of finding a point P on a straight line passing through the point immediately before the head and the current point, and
A step of calculating the movement cost when the head passes by the operation of drawing a curved locus from the current point to the next point, and
Including the step of selecting the next destination point of the head so as to minimize the movement cost.
The distance from the point P to the current point is equal to the distance from the current point to the next point.
The method, wherein the curved locus is a locus that passes on a circle tangent to the point P, the current point, and the next point.
前記直前のポイントと、前記現在のポイントと、前記次のポイントとが直線上に並ぶか否かを判定するステップと、
前記直前のポイントと、前記現在のポイントと、前記次のポイントとが直線上に並ぶ場合、前記ヘッドが前記現在のポイントから前記次のポイントまでを直線軌跡を描く動作で通過したときの移動コストを計算するステップと、
前記直前のポイントと、前記現在のポイントと、前記次のポイントとが直線上に並ばない場合、前記ヘッドが前記現在のポイントから前記次のポイントまでを前記曲線軌跡を描く動作で通過したときの移動コストを計算するステップとをさらに含む、請求項7または8に記載の方法。
A step of determining whether or not the immediately preceding point, the current point, and the next point are aligned on a straight line.
When the immediately preceding point, the current point, and the next point are aligned on a straight line, the movement cost when the head passes from the current point to the next point in a straight line locus. And the steps to calculate
When the immediately preceding point, the current point, and the next point are not aligned on a straight line, when the head passes from the current point to the next point in an operation of drawing a curved locus. The method of claim 7 or 8 , further comprising the step of calculating the transfer cost.
前記ヘッドのポイントの通過順序の決定後に、前記ヘッドが各ポイントを通過するときの通過経路が前記ヘッドの最小旋回半径以上となるように、前記ヘッドの通過経路を決定するステップをさらに含む、請求項7〜9のいずれかに記載の方法。 After determining the passing order of the points of the head, the claim further includes a step of determining the passing path of the head so that the passing path when the head passes each point is equal to or larger than the minimum turning radius of the head. Item 8. The method according to any one of Items 7 to 9 . 前記ヘッドが前記曲線軌跡を描く動作で通過したときの移動コストに基づいて、前記ヘッドのポイントの通過順序を決定した後に、2−opt法により前記ヘッドのポイントの通過順序を変更するステップをさらに含む、請求項7〜10のいずれかに記載の方法。 After determining the passing order of the points of the head based on the movement cost when the head passes by the motion of drawing the curved locus, a step of changing the passing order of the points of the head by the 2-opt method is further added. The method according to any one of claims 7 to 10 , including. 前記方法は、前記ヘッドが曲線軌跡を描く動作で通過したときの移動コストの計算方法と、前記ヘッドが直線軌跡を描く動作で通過したときの移動コストの計算方法との選択の入力を受け付けるステップをさらに含み、
前記ヘッドが直線を描く動作で通過したときの移動コストの計算方法は、前記現在のポイントから前記次のポイントまでの距離の誤差許容値が0より大きいとき、前記現在のポイントを頂点としたときの、前記直前のポイントおよび前記現在のポイントを結ぶ線分と、前記現在のポイントおよび前記次のポイントを結ぶ線分との角度が180度から小さくなるほど移動コストが増加する、請求項7または8に記載の方法。
The method is a step of accepting input for selection between a method of calculating the movement cost when the head passes by the operation of drawing a curved locus and a method of calculating the movement cost when the head passes by the operation of drawing a linear locus. Including
The method of calculating the movement cost when the head passes in a straight line is when the error tolerance of the distance from the current point to the next point is larger than 0 and the current point is set as the apex. The movement cost increases as the angle between the line segment connecting the immediately preceding point and the current point and the line segment connecting the current point and the next point decreases from 180 degrees, according to claim 7 or 8. The method described in.
請求項7〜12のいずれかに記載の方法を制御装置に実行させるためのプログラム。 A program for causing a control device to execute the method according to any one of claims 7 to 12 .
JP2020042344A 2020-03-11 2020-03-11 Controls, methods and programs Active JP6773243B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2020042344A JP6773243B1 (en) 2020-03-11 2020-03-11 Controls, methods and programs
CN202110147312.5A CN113473836A (en) 2020-03-11 2021-02-03 Control device, control method, and computer-readable recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020042344A JP6773243B1 (en) 2020-03-11 2020-03-11 Controls, methods and programs

Publications (2)

Publication Number Publication Date
JP6773243B1 true JP6773243B1 (en) 2020-10-21
JP2021144444A JP2021144444A (en) 2021-09-24

Family

ID=72829263

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020042344A Active JP6773243B1 (en) 2020-03-11 2020-03-11 Controls, methods and programs

Country Status (2)

Country Link
JP (1) JP6773243B1 (en)
CN (1) CN113473836A (en)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0630010B2 (en) * 1985-10-11 1994-04-20 株式会社日立製作所 Electronic component insertion order determination method
US5426722A (en) * 1993-09-09 1995-06-20 Stratasys, Inc. Method for optimizing the motion of a multi-axis robot
SG160423A1 (en) * 2005-03-23 2010-04-29 Hurco Co Inc Method of tolerance-based trajectory planning and control

Also Published As

Publication number Publication date
JP2021144444A (en) 2021-09-24
CN113473836A (en) 2021-10-01

Similar Documents

Publication Publication Date Title
US9424646B2 (en) Control system and control method
US20140217076A1 (en) Robot system and method for controlling the robot system
US20160354929A1 (en) Robot, robot control device, and robot system
EP2375298A2 (en) Programming method for a robot, programming apparatus for a robot, and robot control system
JP2016027951A (en) Robot device control method and robot device
JPWO2004085120A1 (en) Robot simulation apparatus and simulation program
US11833687B2 (en) Robot apparatus, control method for the robot apparatus, assembly method using the robot apparatus, and recording medium
US11338442B2 (en) Robot apparatus, control method for robot apparatus, article manufacturing method using robot apparatus, and storage medium
US20060037951A1 (en) Laser processing apparatus
US10994422B2 (en) Robot system for adjusting operation parameters
Kotlarski et al. Experimental validation of the influence of kinematic redundancy on the pose accuracy of parallel kinematic machines
JP6773243B1 (en) Controls, methods and programs
US11345026B2 (en) Robot program generation apparatus
KR20150086161A (en) Robot, robot control method and robot control program
JP2018064019A (en) Device for optimizing attachment processing
US20240051138A1 (en) Device, robot system, and method for determining position of recessed portion to be formed by scraping
KR102474838B1 (en) Apparatus, method and system for teaching robot
JP5961077B2 (en) Robot control apparatus and robot control method
KR102199554B1 (en) Calculating method of maximum rectangular prism working volume for multi-axis machine
KR102543213B1 (en) Method for calibrating coordinate system of robot
CN109843504B (en) Numerical control device
JP2001025985A (en) Installation condition detecting method of working robot
WO2022186054A1 (en) Teaching point generation device that generates teaching points on basis of output of sensor, and teaching point generation method
JP2005090983A (en) Linear moving device and stage moving device
US20240075625A1 (en) Assembling apparatus, assembling method and computer readable storage medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200417

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20200417

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20200612

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200623

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200806

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200914

R150 Certificate of patent or registration of utility model

Ref document number: 6773243

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150