JP7040567B2 - Control device, control method of control device, information processing program, and recording medium - Google Patents
Control device, control method of control device, information processing program, and recording medium Download PDFInfo
- Publication number
- JP7040567B2 JP7040567B2 JP2020138199A JP2020138199A JP7040567B2 JP 7040567 B2 JP7040567 B2 JP 7040567B2 JP 2020138199 A JP2020138199 A JP 2020138199A JP 2020138199 A JP2020138199 A JP 2020138199A JP 7040567 B2 JP7040567 B2 JP 7040567B2
- Authority
- JP
- Japan
- Prior art keywords
- detection
- control system
- time
- work
- control device
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/404—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by control arrangements for compensation, e.g. for backlash, overshoot, tool offset, tool wear, temperature, machine construction errors, load, inertia
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D3/00—Control of position or direction
- G05D3/12—Control of position or direction using feedback
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J15/00—Gripping heads and other end effectors
- B25J15/02—Gripping heads and other end effectors servo-actuated
- B25J15/0206—Gripping heads and other end effectors servo-actuated comprising articulated grippers
- B25J15/022—Gripping heads and other end effectors servo-actuated comprising articulated grippers actuated by articulated links
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/10—Programme-controlled manipulators characterised by positioning means for manipulator elements
- B25J9/12—Programme-controlled manipulators characterised by positioning means for manipulator elements electric
- B25J9/126—Rotary actuators
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1628—Programme controls characterised by the control loop
- B25J9/1641—Programme controls characterised by the control loop compensation for backlash, friction, compliance, elasticity in the joints
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1679—Programme controls characterised by the tasks executed
- B25J9/1692—Calibration of manipulator
-
- H—ELECTRICITY
- H02—GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
- H02P—CONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
- H02P5/00—Arrangements specially adapted for regulating or controlling the speed or torque of two or more electric motors
- H02P5/46—Arrangements specially adapted for regulating or controlling the speed or torque of two or more electric motors for speed regulation of two or more dynamo-electric motors in relation to one another
- H02P5/50—Arrangements specially adapted for regulating or controlling the speed or torque of two or more electric motors for speed regulation of two or more dynamo-electric motors in relation to one another by comparing electrical values representing the speeds
Description
本発明は、目標軌道から演算した指令値をサーボ制御系に出力する制御装置等に関する。 The present invention relates to a control device or the like that outputs a command value calculated from a target trajectory to a servo control system.
従来、目標軌道から生成した指令値をサーボ制御系へと制御周期ごとに出力して、前記サーボ制御系を制御する制御装置について、前記サーボ制御系の応答遅れ時間を考慮することにより、前記サーボ制御系による制御を高精度化しようとする試みが知られている。 Conventionally, the command value generated from the target trajectory is output to the servo control system for each control cycle, and the servo is controlled by considering the response delay time of the servo control system for the control device that controls the servo control system. Attempts to improve the accuracy of control by control systems are known.
例えば、下掲の特許文献1には、複数軸(複数のサーボモータ)間の応答遅れ時間のばらつきに起因する軌跡ずれを抑制するために、以下の処理を実行する制御装置が開示されている。すなわち、各サーボモータの応答遅れ時間に応じて、各サーボドライバへの指令タイミングを調整する制御装置が開示されている。
For example,
しかしながら、前記サーボ制御系の応答遅れ時間を考慮したとしても、前記サーボ制御系自体の位置と、前記サーボ制御系によって位置を制御されるワークの位置とにはずれが発生し得る。 However, even if the response delay time of the servo control system is taken into consideration, a gap may occur between the position of the servo control system itself and the position of the work whose position is controlled by the servo control system.
本発明の一態様は、前記サーボ制御系自体の位置と、前記サーボ制御系によって位置を制御されるワークの位置とのずれを考慮することにより、前記ワークの位置制御の高精度化を実現することを目的とする。 One aspect of the present invention realizes high accuracy in position control of the work by considering the deviation between the position of the servo control system itself and the position of the work whose position is controlled by the servo control system. The purpose is.
上記の課題を解決するために、本発明の一態様に係る制御装置は、目標軌道から演算した指令値をサーボ制御系に出力する制御装置であって、前記サーボ制御系の応答遅れ時間を考慮して前記目標軌道から算出される目標位置が、検出装置が検出対象を検出する位置である検出位置に一致する時刻である検出時刻における、前記検出装置の検出結果から、前記サーボ制御系によって位置を制御されるワークの位置の、前記検出位置からのずれ量である第一ずれ量を算出する第一ずれ量算出部と、前記サーボ制御系の、前記検出時刻におけるフィードバック位置と、前記検出時刻における、前記応答遅れ時間を考慮して算出された前記目標位置とのずれ量である第二ずれ量を算出する第二ずれ量算出部と、前記目標軌道から算出される目標位置を前記第一ずれ量と前記第二ずれ量とによって補正した補正後目標位置と、前記応答遅れ時間とから、前記指令値を生成する指令値生成部とを備えている。 In order to solve the above problems, the control device according to one aspect of the present invention is a control device that outputs a command value calculated from a target trajectory to the servo control system, and considers the response delay time of the servo control system. Then, from the detection result of the detection device at the detection time, which is the time when the target position calculated from the target trajectory coincides with the detection position, which is the position where the detection device detects the detection target, the position is determined by the servo control system. The first deviation amount calculation unit that calculates the first deviation amount, which is the deviation amount of the position of the work to be controlled from the detection position, the feedback position of the servo control system at the detection time, and the detection time. The second deviation amount calculation unit that calculates the second deviation amount, which is the deviation amount from the target position calculated in consideration of the response delay time, and the target position calculated from the target trajectory are the first. It is provided with a command value generation unit that generates the command value from the corrected target position corrected by the deviation amount and the second deviation amount and the response delay time.
前記の構成によれば、前記制御装置は、前記目標位置を前記第一ずれ量と前記第二ずれ量とによって補正した前記補正後目標位置と、前記応答遅れ時間とによって、前記サーボ制御系に出力する前記指令値を生成する。 According to the above configuration, the control device may use the servo control system according to the corrected target position obtained by correcting the target position by the first deviation amount and the second deviation amount, and the response delay time. Generate the command value to be output.
ここで、前記検出時刻において、前記フィードバック位置と「前記サーボ制御系の応答遅れ時間を考慮した前記目標位置」とが完全に一致する場合、前記検出時刻において、前記フィードバック位置は、前記検出位置に完全に一致することになる。そのため、前記検出時刻において、前記フィードバック位置と「前記サーボ制御系の応答遅れ時間を考慮した前記目標位置」とが完全に一致する場合、前記ワークの位置の、前記フィードバック位置からのずれ量は、前記第一ずれ量のみから特定することができる。 Here, when the feedback position and the "target position considering the response delay time of the servo control system" completely match at the detection time, the feedback position is set to the detection position at the detection time. It will be an exact match. Therefore, when the feedback position and the "target position considering the response delay time of the servo control system" completely match at the detection time, the amount of deviation of the work position from the feedback position is determined. It can be specified only from the first deviation amount.
しかしながら、実際には、前記検出時刻において、前記フィードバック位置と「前記サーボ制御系の応答遅れ時間を考慮した前記目標位置」とは、完全には一致しないことがある。 However, in reality, at the detection time, the feedback position and the "target position in consideration of the response delay time of the servo control system" may not completely match.
そこで、前記制御装置は、前記第一ずれ量に加えて、前記第二ずれ量をも考慮することによって、前記検出時刻における、「前記ワークの位置の、前記フィードバック位置からのずれ量」を高精度に特定する。そして、前記制御装置は、特定した「前記ワークの位置の、前記フィードバック位置からのずれ量」によって「前記目標軌道から算出される目標位置」を補正した前記補正後目標位置と、前記サーボ制御系の前記応答遅れ時間とから、前記指令値を生成する。 Therefore, the control device increases the "deviation amount of the position of the work from the feedback position" at the detection time by considering the second deviation amount in addition to the first deviation amount. Specify for accuracy. Then, the control device has the corrected target position corrected by the specified "deviation amount of the work position from the feedback position" and the "target position calculated from the target trajectory", and the servo control system. The command value is generated from the response delay time of.
したがって、前記制御装置は、前記サーボ制御系の位置(フィードバック位置)と、前記サーボ制御系によって位置を制御される前記ワークの位置とのずれを考慮することにより、前記ワークの位置制御を高精度化することができるとの効果を奏する。 Therefore, the control device can control the position of the work with high accuracy by considering the deviation between the position of the servo control system (feedback position) and the position of the work whose position is controlled by the servo control system. It has the effect of being able to be transformed.
また、前記制御装置は、「前記応答遅れ時間を考慮して算出された前記目標位置が、前記検出位置に一致する」検出時刻における前記検出結果から、前記第一ずれ量を算出する。そのため、前記制御装置は、前記第一ずれ量を算出するために、前記サーボ制御系による前記ワークの移動を停止する必要がない。 Further, the control device calculates the first deviation amount from the detection result at the detection time when "the target position calculated in consideration of the response delay time matches the detection position". Therefore, the control device does not need to stop the movement of the work by the servo control system in order to calculate the first deviation amount.
したがって、前記制御装置は、前記ワークに対する高精度な位置制御を、高速に実行することができ、言い換えれば、前記ワークの高速かつ高精度な位置制御を実現することができるとの効果を奏する。 Therefore, the control device can perform high-speed position control on the work at high speed, in other words, can realize high-speed and high-precision position control on the work.
本発明の一態様に係る制御装置は、前記検出装置の応答遅れ時間を考慮して前記検出時刻を補正した検出指示時刻を、前記検出装置による検出動作を制御する検出制御装置と通信する通信制御装置へと制御周期ごとに送信する制御信号において指定し、前記通信制御装置に、前記検出制御装置への検出指示の出力を、前記検出指示時刻において実行させることによって、前記検出装置に、前記検出時刻において、前記検出対象を検出させてもよい。 The control device according to one aspect of the present invention is a communication control that communicates the detection instruction time corrected for the detection time with the detection control device that controls the detection operation by the detection device in consideration of the response delay time of the detection device. The detection is specified by the control signal transmitted to the device for each control cycle, and the communication control device is made to execute the output of the detection instruction to the detection control device at the detection instruction time. The detection target may be detected at the time.
前記の構成によれば、前記制御装置は、「前記サーボ制御系の応答遅れ時間を考慮して前記目標軌道から算出される目標位置が、前記検出位置に一致する時刻」である検出時刻を前記検出装置の応答遅れ時間によって補正した時刻である前記検出指示時刻を算出する。そして、前記制御装置は、前記通信制御装置に対して制御周期ごとに出力する前記制御信号において、前記検出指示時刻を指定する。 According to the above configuration, the control device sets a detection time, which is "a time when the target position calculated from the target trajectory in consideration of the response delay time of the servo control system coincides with the detection position". The detection instruction time, which is the time corrected by the response delay time of the detection device, is calculated. Then, the control device designates the detection instruction time in the control signal output to the communication control device for each control cycle.
前記制御信号を受信した前記通信制御装置は、前記検出指示時刻において、前記検出指示を前記検出制御装置へと送信し、前記検出指示を受信した前記検出制御装置は、前記検出装置に、前記検出対象を検出させる。そのため、前記検出装置が、前記検出対象を検出する時刻は、前記検出装置の応答遅れ時間の分だけ前記検出指示時刻から遅れた時刻となり、つまり、前記検出時刻となる。 The communication control device that received the control signal transmits the detection instruction to the detection control device at the detection instruction time, and the detection control device that receives the detection instruction causes the detection to the detection device. Have the target detected. Therefore, the time at which the detection device detects the detection target is a time delayed from the detection instruction time by the response delay time of the detection device, that is, the detection time.
ここで、前記検出装置の応答遅れ時間を考慮せずに、前記検出装置に検出を実行させようとした場合、前記検出装置が実際に検出を実行する時刻は、前記検出装置に検出の実行を指示した時刻から、前記検出装置の応答遅れ時間の分だけ遅れることになる。 Here, when the detection device tries to execute the detection without considering the response delay time of the detection device, the detection device executes the detection at the time when the detection device actually executes the detection. It will be delayed by the response delay time of the detection device from the instructed time.
そこで、前記制御装置は、前記検出時刻を前記検出装置の応答遅れ時間によって補正した時刻である前記検出指示時刻を算出する。そして、前記制御装置は、前記検出装置に検出の実行を指示する時刻として前記検出指示時刻を指定する。 Therefore, the control device calculates the detection instruction time, which is the time obtained by correcting the detection time by the response delay time of the detection device. Then, the control device designates the detection instruction time as the time for instructing the detection device to execute the detection.
したがって、前記制御装置は、前記検出装置に検出の実行を指示する時刻として、前記検出装置の応答遅れ時間を考慮した前記検出指示時刻を指定することによって、前記検出装置に、前記検出時刻において検出を実行させることができるとの効果を奏する。 Therefore, the control device detects the detection device at the detection time by designating the detection instruction time in consideration of the response delay time of the detection device as the time for instructing the detection device to execute the detection. It has the effect of being able to execute.
また、前記制御装置は、前記制御周期ごとに送信する前記制御信号において前記検出指示時刻を指定し、例えば、前記制御装置は、前記検出指示時刻を、前記検出指示時刻よりも前の制御周期における前記制御信号において指定する。 Further, the control device specifies the detection instruction time in the control signal transmitted for each control cycle. For example, the control device sets the detection instruction time in a control cycle before the detection instruction time. It is specified in the control signal.
したがって、前記制御装置は、前記制御信号において前記検出指示時刻を指定することで、前記検出指示時刻が、前記通信制御装置との通信周期である前記制御周期の整数倍でない場合であっても、前記検出時刻において前記検出対象を検出できるとの効果を奏する。 Therefore, by designating the detection instruction time in the control signal, the control device may specify the detection instruction time even when the detection instruction time is not an integral multiple of the control cycle which is the communication cycle with the communication control device. It has the effect of being able to detect the detection target at the detection time.
本発明の一態様に係る制御装置は、前記サーボ制御系と制御周期ごとに通信を実行し、前記サーボ制御系の、前記検出時刻におけるフィードバック位置は、前記サーボ制御系の、前記制御周期ごとのフィードバック位置から、補間計算によって算出されてもよい。 The control device according to one aspect of the present invention executes communication with the servo control system at each control cycle, and the feedback position of the servo control system at the detection time is set at each control cycle of the servo control system. It may be calculated by the interpolation calculation from the feedback position.
前記の構成によれば、前記制御装置は、「前記サーボ制御系の、前記検出時刻におけるフィードバック位置」を、「前記サーボ制御系の、前記制御周期ごとのフィードバック位置」から、補間計算によって算出する。 According to the above configuration, the control device calculates "the feedback position of the servo control system at the detection time" from "the feedback position of the servo control system for each control cycle" by interpolation calculation. ..
例えば、nを「0以上の整数」として、前記検出時刻が「n」回目の制御周期と「n+1」回目の制御周期との間の時刻である場合、前記制御装置は、以下のように、「前記サーボ制御系の、前記検出時刻におけるフィードバック位置」を算出する。すなわち、前記制御装置は、前記サーボ制御系の、「『n』回目の制御周期におけるフィードバック位置」と、「『n+1』回目の制御周期におけるフィードバック位置」とから、「前記サーボ制御系の、前記検出時刻におけるフィードバック位置」を算出する。 For example, when n is an "integer of 0 or more" and the detection time is a time between the "n" th control cycle and the "n + 1" th control cycle, the control device is described as follows. "Feedback position of the servo control system at the detection time" is calculated. That is, from the "feedback position in the" n "th control cycle" and the "feedback position in the" n + 1 "th control cycle" of the servo control system, the control device is "the said of the servo control system. "Feedback position at detection time" is calculated.
したがって、前記制御装置は、前記検出時刻が、前記サーボ制御系との通信周期である前記制御周期の整数倍でない場合であっても、高精度に、「前記サーボ制御系の、前記検出時刻におけるフィードバック位置」を算出することができるとの効果を奏する。 Therefore, the control device can accurately "at the detection time of the servo control system" even when the detection time is not an integral multiple of the control cycle which is the communication cycle with the servo control system. It has the effect of being able to calculate the "feedback position".
本発明の一態様に係る制御装置は、互いに同期した複数のサーボ制御系の各々に、前記複数のサーボ制御系の各々の応答遅れ時間を考慮した指令値を出力してもよい。 The control device according to one aspect of the present invention may output a command value in consideration of the response delay time of each of the plurality of servo control systems to each of the plurality of servo control systems synchronized with each other.
前記の構成によれば、前記制御装置は、互いに同期した複数のサーボ制御系の各々に、前記複数のサーボ制御系の各々の応答遅れ時間を考慮した指令値を出力する。 According to the above configuration, the control device outputs a command value in consideration of the response delay time of each of the plurality of servo control systems to each of the plurality of servo control systems synchronized with each other.
したがって、前記制御装置は、前記複数のサーボ制御系を、互いに同期させた状態で制御して、前記ワークの高精度な位置制御を実現できるとの効果を奏する。 Therefore, the control device has an effect that the plurality of servo control systems can be controlled in a state of being synchronized with each other to realize highly accurate position control of the work.
本発明の一態様に係る制御装置について、前記検出装置は撮像装置であり、前記第一ずれ量算出部は、前記撮像装置が撮像した撮像画像において前記検出位置に対応する基準点と、前記撮像画像における前記ワークの位置とのずれ量によって、前記第一ずれ量を算出してもよい。 Regarding the control device according to one aspect of the present invention, the detection device is an image pickup device, and the first deviation amount calculation unit has a reference point corresponding to the detection position in the image pickup image captured by the image pickup device and the image pickup. The first deviation amount may be calculated from the deviation amount from the position of the work in the image.
前記の構成によれば、前記制御装置は、前記撮像画像における前記基準点(例えば、前記撮像画像の中心位置)と前記ワークの位置とのずれ量によって、前記第一ずれ量を算出する。そして、前記制御装置は、前記目標位置を前記第一ずれ量と前記第二ずれ量とによって補正した前記補正後目標位置と、前記サーボ制御系の前記応答遅れ時間とによって、前記サーボ制御系に出力する前記指令値を生成する。 According to the above configuration, the control device calculates the first deviation amount based on the deviation amount between the reference point (for example, the center position of the captured image) and the position of the work in the captured image. Then, the control device applies to the servo control system by the corrected target position obtained by correcting the target position by the first deviation amount and the second deviation amount and the response delay time of the servo control system. Generate the command value to be output.
ここで、撮像画像中の撮像対象の位置等を高速かつ高精度に特定する画像解析技術が知られている。 Here, there is known an image analysis technique for specifying the position of an image pickup target in a captured image at high speed and with high accuracy.
したがって、前記制御装置は、前記撮像画像から高速かつ高精度に算出した前記第一ずれ量と、前記第二ずれ量とによって、前記ワークの高速かつ高精度な位置制御を実現できるとの効果を奏する。 Therefore, the control device has the effect of being able to realize high-speed and high-precision position control of the work by the first deviation amount calculated from the captured image at high speed and with high accuracy and the second deviation amount. Play.
また、前記の構成によれば、前記制御装置は、前記サーボ制御系の応答遅れ時間を考慮して前記目標軌道から算出される前記目標位置が前記検出位置へと到達する時刻に、前記撮像画像を撮像させる。そのため、前記撮像画像において、前記サーボ制御系の応答遅れ時間を考慮して前記目標軌道から算出される前記目標位置と、前記基準点(例えば、前記撮像画像の中心位置)とは一致する。 Further, according to the above configuration, the control device takes into consideration the response delay time of the servo control system, and at the time when the target position calculated from the target trajectory reaches the detection position, the captured image. Is imaged. Therefore, in the captured image, the target position calculated from the target trajectory in consideration of the response delay time of the servo control system and the reference point (for example, the center position of the captured image) coincide with each other.
ここで、前記検出時刻における「前記サーボ制御系の応答遅れ時間を考慮した前記目標位置」は、前記サーボ制御系の応答遅れ時間を考慮して前記目標軌道から算出されている。そのため、前記検出時刻において、前記フィードバック位置と「前記サーボ制御系の応答遅れ時間を考慮した前記目標位置」とは十分に近くなるはずである。つまり、前記フィードバック位置と前記ワークの位置(例えば、前記ワークの中心位置)とが十分に近い場合、前記検出時刻において、前記ワークの位置は、前記検出位置に十分近くなるはずである。したがって、例えば、前記撮像画像の中心位置を前記基準点とする場合、前記撮像画像において、前記ワークは略中央に配置されることになる。 Here, the "target position in consideration of the response delay time of the servo control system" at the detection time is calculated from the target trajectory in consideration of the response delay time of the servo control system. Therefore, at the detection time, the feedback position and the "target position considering the response delay time of the servo control system" should be sufficiently close to each other. That is, when the feedback position and the position of the work (for example, the center position of the work) are sufficiently close to each other, the position of the work should be sufficiently close to the detection position at the detection time. Therefore, for example, when the center position of the captured image is set as the reference point, the work is arranged substantially in the center of the captured image.
そのため、前記制御装置は、前記撮像画像において前記ワークの位置(例えば、前記ワークの中心位置)を特定するための検査領域を小さくすることができ、画像解析処理の高速化を実現することができる。 Therefore, the control device can reduce the inspection area for specifying the position of the work (for example, the center position of the work) in the captured image, and can realize high-speed image analysis processing. ..
また、前記撮像画像において前記ワークは略中央に配置されるため、前記ワークが略中央に配置されていない撮像画像に比べて、前記ワークの撮像された領域が前記撮像画像の全体に占める割合を大きくでき、つまり、前記ワークを拡大して撮像させることができる。そのため、前記制御装置は、前記ワークが拡大して撮像された前記撮像画像に対して、高精度な画像解析を行うことができる。 Further, since the work is arranged substantially in the center of the captured image, the ratio of the captured region of the work to the entire captured image is larger than that of the captured image in which the work is not arranged substantially in the center. It can be made large, that is, the work can be magnified and imaged. Therefore, the control device can perform high-precision image analysis on the captured image captured by enlarging the work.
したがって、前記制御装置は、前記撮像画像に対する高速かつ高精度な画像解析を実現し、この画像解析の結果を利用することによって、前記ワークの高速かつ高精度な位置制御を実現できるとの効果を奏する。 Therefore, the control device can realize high-speed and high-precision image analysis for the captured image, and by using the result of this image analysis, it is possible to realize high-speed and high-precision position control of the work. Play.
本発明の一態様に係る制御装置について、前記サーボ制御系は、前記ワークの位置を変更可能なマニピュレータの軸を駆動するサーボモータと、前記サーボモータを制御するサーボドライバとを含み、前記目標位置および前記フィードバック位置は、各々、前記マニピュレータの把持部である手先の目標位置およびフィードバック位置であってもよい。 Regarding the control device according to one aspect of the present invention, the servo control system includes a servomotor that drives the axis of a manipulator that can change the position of the work, and a servodriver that controls the servomotor, and the target position. And the feedback position may be the target position and the feedback position of the hand which is the grip portion of the manipulator, respectively.
前記の構成によれば、前記制御装置は、前記検出時刻、つまり、「前記サーボ制御系の応答遅れ時間を考慮して前記目標軌道から算出される、前記手先の目標位置が、前記検出位置に一致する時刻」における、前記検出結果から、前記第一ずれ量を算出する。また、前記制御装置は、前記検出時刻における、前記手先のフィードバック位置と、前記目標位置(すなわち、「前記サーボ制御系の応答遅れ時間を考慮して前記目標軌道から算出される、前記手先の目標位置」)とから、前記第二ずれ量を算出する。 According to the above configuration, in the control device, the detection time, that is, the target position of the hand calculated from the target trajectory in consideration of the response delay time of the servo control system is set to the detection position. The first deviation amount is calculated from the detection result at the "matching time". Further, the control device has the feedback position of the hand at the detection time and the target position (that is, the target of the hand calculated from the target trajectory in consideration of the response delay time of the servo control system. The second deviation amount is calculated from the position ").
そして、前記制御装置は、前記検出結果から算出した前記第一ずれ量と、前記検出時刻における前記手先についての前記第二ずれ量とによって、前記目標位置を補正して、前記補正後目標位置を生成する。前記制御装置は、生成した前記補正後目標位置と、前記サーボ制御系の前記応答遅れ時間とによって、前記サーボ制御系に出力する前記指令値を生成する。 Then, the control device corrects the target position based on the first deviation amount calculated from the detection result and the second deviation amount for the hand at the detection time, and obtains the corrected target position. Generate. The control device generates the command value to be output to the servo control system based on the generated target position after correction and the response delay time of the servo control system.
したがって、前記制御装置は、前記検出時刻における前記第一ずれ量と、前記検出時刻における前記手先についての前記第二ずれ量とを考慮して、前記マニピュレータによる前記ワークの高精度な位置制御を実現できるとの効果を奏する。 Therefore, the control device realizes highly accurate position control of the work by the manipulator in consideration of the first deviation amount at the detection time and the second deviation amount for the hand at the detection time. It has the effect of being able to do it.
本発明の一態様に係る制御装置について、前記マニピュレータは前記ワークのピッキング動作およびプレース動作を実行し、前記第一ずれ量は、前記マニピュレータに把持された前記ワークの位置の、前記検出位置からのずれ量であってもよい。 For the control device according to one aspect of the present invention, the manipulator executes a picking operation and a place operation of the work, and the first deviation amount is the position of the work held by the manipulator from the detection position. It may be a deviation amount.
前記の構成によれば、前記制御装置は、「前記マニピュレータに把持された前記ワークの位置の、前記検出位置からのずれ量」である前記第一ずれ量と、前記第二ずれ量とによって、前記目標位置を補正し、前記補正後目標位置を生成する。そして、前記制御装置は、前記補正後目標位置と、前記サーボ制御系の前記応答遅れ時間とによって、前記サーボ制御系に出力する前記指令値を生成する。 According to the above configuration, the control device is based on the first deviation amount and the second deviation amount, which are "the deviation amount of the position of the work held by the manipulator from the detection position". The target position is corrected, and the corrected target position is generated. Then, the control device generates the command value to be output to the servo control system based on the corrected target position and the response delay time of the servo control system.
ここで、前記フィードバック位置と、前記応答遅れ時間を考慮して算出された前記目標位置とが完全に一致する場合にも、前記マニピュレータに把持された前記ワークの状態によっては、前記検出時刻における前記ワークの位置は、前記検出位置からずれる。例えば、前記マニピュレータが、前記ワークの中心位置よりも右側の位置で、前記ワークを把持した場合、前記検出時刻における前記ワークの中心位置は、前記検出位置に対して左側にずれる。同様に、前記マニピュレータが、前記ワークの中心位置よりも左側の位置で、前記ワークを把持した場合、前記検出時刻における前記ワークの中心位置は、前記検出位置に対して右側にずれる。 Here, even when the feedback position and the target position calculated in consideration of the response delay time completely match, depending on the state of the work gripped by the manipulator, the said at the detection time. The position of the work deviates from the detection position. For example, when the manipulator grips the work at a position on the right side of the center position of the work, the center position of the work at the detection time shifts to the left side with respect to the detection position. Similarly, when the manipulator grips the work at a position on the left side of the center position of the work, the center position of the work at the detection time shifts to the right side with respect to the detection position.
また、ピッキング動作の際に発生した「ワークの位置と手先の位置とのずれ」は、プレース動作に至るまで維持されることが多いと考えられる。 Further, it is considered that the "deviation between the position of the work and the position of the hand" that occurs during the picking operation is often maintained until the place operation.
そこで、前記制御装置は、ピッキング動作の際に発生した「ワークの位置と手先の位置とのずれ」を特定し、特定した「ワークの位置と手先の位置とのずれ」を考慮して、ワークのプレース位置を制御する。 Therefore, the control device identifies the "deviation between the position of the work and the position of the hand" that occurs during the picking operation, and considers the specified "deviation between the position of the work and the position of the hand" and considers the work. Control the place position of.
したがって、前記制御装置は、前記マニピュレータに把持された前記ワークの状態を考慮した、前記ワークの高精度な位置制御を実現できるとの効果を奏する。 Therefore, the control device has the effect of being able to realize highly accurate position control of the work in consideration of the state of the work held by the manipulator.
本発明の一態様に係る制御装置について、前記マニピュレータの手先は、真空吸着または磁気吸引によって前記ピッキング動作を実行してもよい。 For the control device according to one aspect of the present invention, the hand of the manipulator may perform the picking operation by vacuum suction or magnetic suction.
前記の構成によれば、前記制御装置は、真空吸着または磁気吸引を用いて前記手先に把持された前記ワークについての前記第一ずれ量と、前記マニピュレータの手先についての前記第二ずれ量とによって、前記目標位置を補正し、前記補正後目標位置を生成する。そして、前記制御装置は、前記補正後目標位置と、前記サーボ制御系の前記応答遅れ時間とによって、前記サーボ制御系に出力する前記指令値を生成する。 According to the above configuration, the control device is based on the first deviation amount of the work held by the hand using vacuum suction or magnetic suction and the second deviation amount of the manipulator's hand. , The target position is corrected, and the corrected target position is generated. Then, the control device generates the command value to be output to the servo control system based on the corrected target position and the response delay time of the servo control system.
ここで、2本指ないし5本指式のグリッパ(手先)により前記ワークを把持する場合に比べて、真空吸着または磁気吸引を用いて前記ワークを把持する場合は、前記ワークの中心位置からずれた位置で前記ワークを把持してしまう可能性がより大きいと考えられる。 Here, compared to the case where the work is gripped by a two-finger or five-finger type gripper (hand), when the work is gripped by vacuum suction or magnetic suction, the work is displaced from the center position of the work. It is considered that there is a greater possibility that the work will be gripped at a vertical position.
そのため、前記マニピュレータに把持された前記ワークの高精度な位置制御のために、「ワークの位置と手先の位置とのずれ」を考慮する必要性は、真空吸着または磁気吸引を用いて前記ワークを把持する場合に、より大きくなる。 Therefore, in order to control the position of the work held by the manipulator with high accuracy, it is necessary to consider "the deviation between the position of the work and the position of the hand" by using vacuum suction or magnetic suction. Larger when gripped.
したがって、前記制御装置は、真空吸着または磁気吸引によってピッキング動作を実行するマニピュレータを含む前記サーボ制御系を制御して、前記ワークの高速かつ高精度な位置制御を実現できるとの効果を奏する。 Therefore, the control device has an effect that the servo control system including the manipulator that executes the picking operation by vacuum suction or magnetic suction can be controlled to realize high-speed and high-precision position control of the work.
上記の課題を解決するために、本発明の一態様に係る制御方法は、目標軌道から演算した指令値をサーボ制御系に出力する制御装置の制御方法であって、前記サーボ制御系の応答遅れ時間を考慮して前記目標軌道から算出される目標位置が、検出装置が検出対象を検出する位置である検出位置に一致する時刻である検出時刻における、前記検出装置の検出結果から、前記サーボ制御系によって位置を制御されるワークの位置の、前記検出位置からのずれ量である第一ずれ量を算出する第一ずれ量算出ステップと、前記サーボ制御系の、前記検出時刻におけるフィードバック位置と、前記検出時刻における、前記応答遅れ時間を考慮して算出された前記目標位置とのずれ量である第二ずれ量を算出する第二ずれ量算出ステップと、前記目標軌道から算出される目標位置を前記第一ずれ量と前記第二ずれ量とによって補正した補正後目標位置と、前記応答遅れ時間とから、前記指令値を生成する指令値生成ステップとを含んでいる。 In order to solve the above problems, the control method according to one aspect of the present invention is a control method of a control device that outputs a command value calculated from a target trajectory to the servo control system, and the response delay of the servo control system. The servo control is performed from the detection result of the detection device at the detection time when the target position calculated from the target trajectory in consideration of time coincides with the detection position which is the position where the detection device detects the detection target. The first deviation amount calculation step for calculating the first deviation amount, which is the deviation amount from the detection position of the position of the work whose position is controlled by the system, and the feedback position of the servo control system at the detection time. The second deviation amount calculation step for calculating the second deviation amount, which is the deviation amount from the target position calculated in consideration of the response delay time at the detection time, and the target position calculated from the target trajectory. It includes a command value generation step of generating the command value from the corrected target position corrected by the first deviation amount and the second deviation amount and the response delay time.
前記の構成によれば、前記制御方法は、前記目標位置を前記第一ずれ量と前記第二ずれ量とによって補正した前記補正後目標位置と、前記サーボ制御系の前記応答遅れ時間とによって、前記サーボ制御系に出力する前記指令値を生成する。 According to the above configuration, the control method is based on the corrected target position obtained by correcting the target position by the first deviation amount and the second deviation amount, and the response delay time of the servo control system. The command value to be output to the servo control system is generated.
ここで、前記検出時刻において、前記フィードバック位置と「前記サーボ制御系の応答遅れ時間を考慮した前記目標位置」とが完全に一致する場合、前記検出時刻において、前記フィードバック位置は、前記検出位置に完全に一致することになる。そのため、前記検出時刻において、前記フィードバック位置と「前記サーボ制御系の応答遅れ時間を考慮した前記目標位置」とが完全に一致する場合、前記ワークの位置の、前記フィードバック位置からのずれ量は、前記第一ずれ量のみから特定することができる。 Here, when the feedback position and the "target position considering the response delay time of the servo control system" completely match at the detection time, the feedback position is set to the detection position at the detection time. It will be an exact match. Therefore, when the feedback position and the "target position considering the response delay time of the servo control system" completely match at the detection time, the amount of deviation of the work position from the feedback position is determined. It can be specified only from the first deviation amount.
しかしながら、実際には、前記検出時刻において、前記フィードバック位置と「前記サーボ制御系の応答遅れ時間を考慮した前記目標位置」とは、完全には一致しないことがある。 However, in reality, at the detection time, the feedback position and the "target position in consideration of the response delay time of the servo control system" may not completely match.
そこで、前記制御方法は、前記第一ずれ量に加えて、前記第二ずれ量をも考慮することによって、前記検出時刻における、「前記ワークの位置の、前記フィードバック位置からのずれ量」を高精度に特定する。そして、前記制御方法は、特定した「前記ワークの位置の、前記フィードバック位置からのずれ量」によって「前記目標軌道から算出される目標位置」を補正した前記補正後目標位置と、前記サーボ制御系の前記応答遅れ時間とから、前記指令値を生成する。 Therefore, the control method increases the "deviation amount of the position of the work from the feedback position" at the detection time by considering the second deviation amount in addition to the first deviation amount. Specify for accuracy. Then, the control method includes the corrected target position obtained by correcting the "target position calculated from the target trajectory" by the specified "deviation amount of the work position from the feedback position", and the servo control system. The command value is generated from the response delay time of.
したがって、前記制御方法は、前記サーボ制御系の位置(フィードバック位置)と、前記サーボ制御系によって位置を制御される前記ワークの位置とのずれを考慮することにより、前記ワークの位置制御を高精度化することができるとの効果を奏する。 Therefore, the control method can control the position of the work with high accuracy by considering the deviation between the position of the servo control system (feedback position) and the position of the work whose position is controlled by the servo control system. It has the effect of being able to be transformed.
また、前記制御方法は、「前記応答遅れ時間を考慮して算出された前記目標位置が、前記検出位置に一致する」検出時刻における前記検出結果から、前記第一ずれ量を算出する。そのため、前記制御方法は、前記第一ずれ量を算出するために、前記サーボ制御系による前記ワークの移動を停止する必要がない。 Further, the control method calculates the first deviation amount from the detection result at the detection time when "the target position calculated in consideration of the response delay time matches the detection position". Therefore, in the control method, it is not necessary to stop the movement of the work by the servo control system in order to calculate the first deviation amount.
したがって、前記制御方法は、前記ワークに対する高精度な位置制御を、高速に実行することができ、言い換えれば、前記ワークの高速かつ高精度な位置制御を実現することができるとの効果を奏する。 Therefore, the control method has the effect that high-precision position control for the work can be executed at high speed, in other words, high-speed and high-precision position control for the work can be realized.
本発明の一態様によれば、サーボ制御系自体の位置と、前記サーボ制御系によって位置を制御されるワークの位置とのずれを考慮することにより、前記ワークの位置制御の高精度化を実現することができるとの効果を奏する。 According to one aspect of the present invention, high accuracy of position control of the work is realized by considering the deviation between the position of the servo control system itself and the position of the work whose position is controlled by the servo control system. It has the effect of being able to.
〔実施形態1〕
以下、本発明の一側面に係る実施の形態(以下、「本実施形態」とも表記する)を、図面に基づいて説明する。なお、図中同一または相当部分には同一符号を付してその説明は繰返さない。本実施の形態においては、指令値Cmをサーボ制御系20へと出力することによってサーボ制御系20(特に、手先23の位置)を制御する制御装置10を、「目標軌道Ttから演算した指令値Cmをサーボ制御系に出力する制御装置」の典型例として説明を行なう。
[Embodiment 1]
Hereinafter, an embodiment according to one aspect of the present invention (hereinafter, also referred to as “the present embodiment”) will be described with reference to the drawings. The same or corresponding parts in the drawings are designated by the same reference numerals and the description thereof will not be repeated. In the present embodiment, the control device 10 that controls the servo control system 20 (particularly, the position of the hand 23) by outputting the command value Cm to the
以下に詳細を説明する制御装置10は、ワーク40の位置Pwと、ワーク40を移動するサーボ制御系20のフィードバック位置Pf(具体的には、手先23の位置)とが一致しない場合であっても、ワーク40を所望の位置へと移動させることができる。
In the control device 10 described in detail below, the position Pw of the
一般に、サーボ制御系の時刻ごとの実位置(フィードバック位置)と、そのサーボ制御系の時刻ごとの目標位置とを一致させることができたとしても、そのサーボ制御系によって移動されるワークを、所望の位置へと移動することができるとは限らない。ワークの位置と、ワークを移動するサーボ制御系の実位置とがずれる場合、両者のずれの分だけ、そのサーボ制御系によって移動されるワークの位置は、サーボ制御系の実位置からずれることになるためである。 Generally, even if the actual position (feedback position) of the servo control system for each time and the target position for each time of the servo control system can be matched, the work to be moved by the servo control system is desired. It is not always possible to move to the position of. When the position of the work and the actual position of the servo control system that moves the work deviate from each other, the position of the work moved by the servo control system deviates from the actual position of the servo control system by the amount of the deviation between the two. This is to become.
そこで、制御装置10は、ワーク40の位置Pwと、ワーク40を移動するサーボ制御系20の実位置(フィードバック位置Pf)とのずれ量を特定し、このずれ量を考慮してサーボ制御系20を制御することによって、ワーク40を所望の位置へと移動させる。
Therefore, the control device 10 specifies the amount of deviation between the position Pw of the
したがって、制御装置10は、ワーク40を移動しようとする都度、サーボ制御系20によって移動されるワーク40の位置Pwと、サーボ制御系20の実位置(フィードバック位置Pf)とがずれる事例に好適である。例えば、制御装置10は、手先23によってワーク40を把持し(ピッキング動作)、ワーク40を把持した手先23を移動することによって、ワーク40を所望の位置へと載置する(プレース動作)事例に好適である。
Therefore, the control device 10 is suitable for a case where the position Pw of the
上述のような事例では、手先23によってワーク40を把持する都度、「ワーク40の位置Pw(例、ワーク40の中心位置)」と、「手先23の位置(つまり、サーボ制御系20のフィードバック位置Pf)」とには、ずれが発生する可能性がある。そして、「ワーク40の位置Pw」と「手先23の位置」とのずれの大きさ(つまり、ずれ量)は、ワーク40を把持する都度、つまり、ピッキング動作の都度、異なる可能性がある。ただし、「ワーク40を把持した際の、『ワーク40の位置Pw』と『手先23の位置』とのずれ」の大きさ(つまり、ずれ量)がワーク40の移動中に変化する可能性は、低いと考えられる。
In the above cases, each time the
そのため、制御装置10は、手先23によってワーク40を把持する都度、「ワーク40の位置Pw」と「手先23の位置」とのずれの大きさ(つまり、ずれ量)を算出する。そして、制御装置10は、算出したずれ量を考慮してサーボ制御系20を制御することによって、ワーク40を所望の位置へと移動することができる。
Therefore, the control device 10 calculates the magnitude (that is, the amount of deviation) of the deviation between the "position Pw of the
以下の説明においては、「手先23の位置(つまり、サーボ制御系20のフィードバック位置Pf)」と、「手先23の移動に伴って移動する、ワーク40の位置Pw(例、ワーク40の中心位置)」とのずれを、「位置ずれ」とも称する。特に、「手先23の位置」と「手先23に把持された、ワーク40の位置Pw」とのずれを、「把持ずれ」とも称し、つまり、「把持ずれ」は、ワーク40が手先23に把持された場合の「位置ずれ」を指す。
In the following description, "the position of the hand 23 (that is, the feedback position Pf of the servo control system 20)" and "the position Pw of the
制御装置10は、例えば、ピッキング動作の都度、ピッキング動作の際に発生した把持ずれの大きさ(把持ずれ量)を特定し、特定した把持ずれ量を考慮してサーボ制御系20を制御することによって、ワーク40を所望の位置へと高精度に載置する。また、制御装置10は、ピッキング動作の際に発生した把持ずれの大きさを、手先23の移動中に特定することによって、ピッキング動作を完了した手先23の移動を停止させて把持ずれの大きさを特定する場合に比べて、ワーク40の位置制御を高速化する。
For example, the control device 10 specifies the magnitude (grip deviation amount) of the grip deviation generated during the picking operation each time the picking operation is performed, and controls the
以下、ワーク40を所望の位置へと移動させるために、「サーボ制御系20によって移動されるワーク40の位置Pwと、サーボ制御系20の実位置(フィードバック位置Pf)とのずれ」を特定する制御装置10の詳細について説明していく。すなわち、以下では、制御装置10が、「ワーク40の位置Pwと、サーボ制御系20のフィードバック位置Pfとのずれ」、つまり、「位置ずれ」を考慮することによって、ワーク40の位置制御を高精度化する点を中心に説明を行う。特に、制御装置10が、ワーク40が手先23に把持された場合の「位置ずれ」である「把持ずれ」を特定し、特定した「把持ずれ」を考慮することによって、ワーク40を所望の位置へと高精度に載置する例を説明する。
Hereinafter, in order to move the
制御装置10は、「位置ずれ」、つまり、「サーボ制御系20によって移動されるワーク40の位置Pwと、サーボ制御系20の実位置(フィードバック位置Pf)とのずれ」を考慮したサーボ制御系20の制御に加えて、以下の制御を実行してもよい。すなわち、制御装置10は、時刻ごとのサーボ制御系20のフィードバック位置Pfを、時刻ごとのサーボ制御系20の目標位置Ptに一致させる制御をさらに実行してもよい。ただし、時刻ごとのサーボ制御系20のフィードバック位置Pfを、時刻ごとのサーボ制御系20の目標位置Ptに一致させる制御の説明は、本実施形態の目的ではないため、詳細は略記する。
The control device 10 is a servo control system considering "positional deviation", that is, "displacement between the position Pw of the
§1.適用例
(制御システムの概要)
本発明の一態様に係る制御装置10についての理解を容易にするため、先ず、本発明が適用される場面の一例について、具体的には、制御装置10を含む制御システム1の概要について、図2を用いて説明する。
§1. Application example (Overview of control system)
In order to facilitate understanding of the control device 10 according to one aspect of the present invention, first, an example of a situation to which the present invention is applied, specifically, an outline of a
図2は、制御システム1の全体概要を示す図である。制御システム1は、マスタとしての制御装置10と、マスタにネットワークを介して接続される1つ以上のスレーブとしてのサーボ制御系20および検出系30とを含む、マスタスレーブ制御システムである。制御装置10は、制御システム1において、ネットワークを介したデータ伝送を管理しているという意味で「マスタ」と呼ばれ、一方、「スレーブ」は、マスタによって管理され、例えば、工場内に設置される設備のデータ収集および制御を行う。制御システム1において、マスタとしての制御装置10と、スレーブとしてのサーボ制御系20および検出系30とをつなぐネットワークとしては、例えば、EtherCAT(登録商標)を使用することができる。
FIG. 2 is a diagram showing an overall outline of the
なお、「マスタ」および「スレーブ」は、ネットワーク上のデータ伝送の制御機能に着目して定義されるものであり、各装置間でどのような情報が送受信されるかについては、特に限定されない。 The "master" and "slave" are defined by focusing on the control function of data transmission on the network, and what kind of information is transmitted and received between the devices is not particularly limited.
(制御装置)
制御装置10は、マスタとして、サーボ制御系20および検出系30等のスレーブが出力する制御結果(例、制御量および検出結果)を示すデータを、制御周期Ccごとに取得する(受信する)。また、制御装置10は、マスタとして、サーボ制御系20および検出系30等のスレーブへと、指令値Cmおよび検出指示時刻aTdを含む制御信号Cs(制御指示)を、制御周期Ccごとに出力する(送信する)。
(Control device)
As a master, the control device 10 acquires (receives) data indicating control results (eg, control amount and detection result) output by slaves such as the
制御装置10は、例えば、サーボモータ22などの制御機器を制御するためのユーザプログラムを実行するPLC(Programmable Logic Controller)等の産業用の制御装置である。制御システム1において、制御装置10は、下位コントローラとしてのサーボドライバ21に対する上位コントローラである。
The control device 10 is an industrial control device such as a PLC (Programmable Logic Controller) that executes a user program for controlling a control device such as a servomotor 22. In the
具体的には、制御装置10は、目標軌道Ttから制御周期Ccごとに生成した指令値Cmを、サーボドライバ21を含むサーボ制御系20に対して制御周期Ccごとに出力する。サーボ制御系20において、指令値Cmを受信したサーボドライバ21は、制御対象であるサーボモータ22等の出力である制御量を、指令値Cmに追従するようにフィードバック制御を行う。そして、制御装置10は、サーボ制御系20(特に、サーボドライバ21)から、サーボモータ22の出力(制御量。例えば、トルク、速度、および位置など)に係るデータを制御周期Ccごとに取得する。制御装置10は、サーボ制御系20から受信した制御量(例、制御周期Ccごとのフィードバック位置Pf)に基づいてさらにサーボ制御系20に指令値Cmを生成し、生成した指令値Cmをサーボ制御系20へと送信することで、サーボ制御系20を制御する。
Specifically, the control device 10 outputs the command value Cm generated from the target trajectory Tt for each control cycle Cc to the
ここで、制御装置10は、例えば複数のサーボ制御系20を制御し、具体的には、以下のように複数のサーボ制御系20を制御する。すなわち、制御装置10は、複数のサーボ制御系20の各々について、目標軌道Ttからサーボ制御系20ごとの指令軌道Coを生成する。そして、制御装置10は、サーボ制御系20ごとの指令軌道Coから生成した「サーボ制御系20ごとの指令値Cm」を、複数のサーボ制御系20の各々に対する制御周期Ccごとに出力して、複数のサーボ制御系20を協調制御する。制御装置10は、複数のサーボ制御系20の各々の応答遅れ時間Dsを考慮して「サーボ制御系20ごとの指令値Cm」を生成することによって、複数のサーボ制御系20を、動作結果(制御量)のレベルで同期させる。
Here, the control device 10 controls, for example, a plurality of
図2に示す例では、制御装置10は、目標軌道Ttから、サーボ制御系20(A)、20(B)、20(C)、20(D)の各々の指令軌道Co(A)、Co(B)、Co(C)、Co(D)を生成する。制御装置10は、指令軌道Co(A)、Co(B)、Co(C)、Co(D)の各々から、サーボ制御系20(A)、20(B)、20(C)、20(D)の各々の指令値Cm(A)、Cm(B)、Cm(C)、Cm(D)を生成する。特に、制御装置10は、サーボ制御系20(A)、20(B)、20(C)、20(D)の各々の応答遅れ時間Ds(A)、Ds(B)、Ds(C)、Ds(D)を考慮して、指令値Cm(A)、Cm(B)、Cm(C)、Cm(D)を生成する。制御装置10は、指令値Cm(A)、Cm(B)、Cm(C)、Cm(D)を、サーボ制御系20の制御周期Ccごとに出力することによって、サーボ制御系20(A)、20(B)、20(C)、20(D)の各々を協調制御する。
In the example shown in FIG. 2, the control device 10 has command trajectories Co (A) and Co of the servo control systems 20 (A), 20 (B), 20 (C), and 20 (D) from the target orbit Tt, respectively. (B), Co (C), Co (D) are generated. The control device 10 has servo control systems 20 (A), 20 (B), 20 (C), 20 (from each of the command trajectories Co (A), Co (B), Co (C), and Co (D). The respective command values Cm (A), Cm (B), Cm (C), and Cm (D) of D) are generated. In particular, the control device 10 has response delay times Ds (A), Ds (B), Ds (C), respectively, of the servo control systems 20 (A), 20 (B), 20 (C), and 20 (D). The command values Cm (A), Cm (B), Cm (C), and Cm (D) are generated in consideration of Ds (D). The control device 10 outputs the command values Cm (A), Cm (B), Cm (C), and Cm (D) for each control cycle Cc of the
また、制御システム1において、制御装置10は、検出指示時刻aTdを指定した制御信号Csを、例えば制御周期Ccごとに出力する。また、制御装置10は、検出系30から、検出系30の実行した検出動作(例、撮像動作)の結果である検出結果(例、撮像画像Im)を、例えば制御周期Ccごとに、取得する(受信する)。
Further, in the
詳細は後述するが、制御装置10は、「検出系30の応答遅れ時間Dd」によって検出時刻Tdを補正した時刻である検出指示時刻aTdを、制御信号Csにおいて指定する。そして、制御装置10は、検出指示時刻aTdを指定した制御信号Csを検出系30へと出力することによって、検出時刻Tdにおいて、撮像装置33(検出装置)に、検出動作(撮像動作)を実行させる。 Although the details will be described later, the control device 10 designates the detection instruction time aTd, which is the time obtained by correcting the detection time Td by the “response delay time Dd of the detection system 30”, in the control signal Cs. Then, the control device 10 outputs the control signal Cs for which the detection instruction time aTd is specified to the detection system 30, so that the image pickup device 33 (detection device) executes the detection operation (imaging operation) at the detection time Td. Let me.
図2に示す例では、マスタとしての制御装置10に対して、サーボ制御系20(A)、20(B)、20(C)、20(D)という4つのサーボ制御系20と、1つの検出系30とが、スレーブとして接続されている例が示されている。ただし、制御装置10に接続されるサーボ制御系20が4つであることは必須ではなく、制御システム1において、マスタとしての制御装置10に接続されるサーボ制御系20は1つ以上であればよく、例えば、5つであってもよい。
In the example shown in FIG. 2, four servo control systems 20 (A), 20 (B), 20 (C), and 20 (D) and one
以下の説明においては、サーボ制御系20について、複数のサーボ制御系20の各々を区別する必要がある場合には、符号に「(A)」、「(B)」、「(C)」、・・・、「(Z)」等の添え字を付して区別する。例えば、「サーボ制御系20(A)」、「サーボ制御系20(B)」、「サーボ制御系20(C)」、・・・、「サーボ制御系20(Z)」と記載して区別する。複数のサーボ制御系20の各々を特に区別する必要がない場合は単に「サーボ制御系20」と称する。
In the following description, when it is necessary to distinguish each of the plurality of
(サーボ制御系)
サーボ制御系20は、制御装置10からの指令値Cmに従って、サーボ制御系20の出力(例えば、位置)を制御し、具体的には、手先23の位置を制御するフィードバック制御系である。サーボ制御系20は、手先23の位置を制御することによって、例えば、手先23が把持しているワーク40の位置Pwを制御する。サーボ制御系20は、手先23の位置Pwを変更するアクチュエータ(Actuator)としてのサーボモータ22と、サーボモータ22を制御するサーボドライバ21とを含む。
(Servo control system)
The
サーボドライバ21は、サーボモータ22の制御装置であり、制御装置10からの制御信号Cs(具体的には、指令値Cm)を制御周期Ccごとに受信し、受信した制御信号Csに従ってサーボモータ22の駆動を制御する。また、サーボドライバ21は、サーボモータ22の軸に接続されている位置センサおよびトルクセンサなどから、位置、速度、トルクといったサーボモータ22の出力に係る実測値を取得し、これら実測値に係るデータを制御周期Ccごとに制御装置10に出力する。 The servo driver 21 is a control device for the servo motor 22, receives control signals Cs (specifically, command value Cm) from the control device 10 for each control cycle Cc, and receives the received control signals Cs according to the servo motor 22. Control the drive of. Further, the servo driver 21 acquires actual measurement values related to the output of the servo motor 22 such as position, speed, and torque from a position sensor and a torque sensor connected to the shaft of the servo motor 22, and data related to these measured values. Is output to the control device 10 for each control cycle Cc.
サーボモータ22は、サーボドライバ21の制御に従って出力(具体的には、手先23の位置)が制御されるアクチュエータであり、例えば、リニアアクチュエータである。サーボモータ22は、例えば、手先23を備えるマニピュレータの軸を駆動することによって、手先23の位置を変更する。サーボモータ22は、手先23の位置を変更することによってワーク40の位置Pwを変更し、例えば、手先23の位置を変更することによって手先23に把持されたワーク40の位置Pwを変更する。
The servo motor 22 is an actuator whose output (specifically, the position of the hand 23) is controlled according to the control of the servo driver 21, and is, for example, a linear actuator. The servomotor 22 changes the position of the hand 23, for example, by driving the shaft of the manipulator including the hand 23. The servomotor 22 changes the position Pw of the
手先23は、ワーク40を把持する把持部であり、例えば、真空吸着または磁気吸引によって、ワーク40を把持する(ピッキングする)。例えば、真空吸着を実現するために、手先23には真空ポンプが設けられ、真空ポンプの動作が制御されていてもよい。以下の説明において、サーボモータ22の出力に係る実測値としての「サーボ制御系20の出力位置」を、つまり、手先23の位置を、「フィードバック位置Pf」と称することがある。
The hand 23 is a gripping portion that grips the
例えば、サーボモータ22(A)、22(B)、22(C)の各々の出力によって、互いに直行するX軸、Y軸、Z軸の各々における、手先23の位置は決定される。また、サーボモータ22(D)の出力によって、手先23の、Z軸を中心とする回転の回転量が決定される。サーボドライバ21(A)、21(B)、21(C)、21(D)の各々は、サーボモータ22(A)、22(B)、22(C)、22(D)の各々の出力を制御し、つまり、各々の駆動を制御する。 For example, the output of each of the servomotors 22 (A), 22 (B), and 22 (C) determines the position of the hand 23 on each of the X-axis, Y-axis, and Z-axis orthogonal to each other. Further, the output of the servomotor 22 (D) determines the amount of rotation of the hand 23 about the Z axis. Each of the servo drivers 21 (A), 21 (B), 21 (C), and 21 (D) is the output of each of the servo motors 22 (A), 22 (B), 22 (C), and 22 (D). Is controlled, that is, each drive is controlled.
また、サーボドライバ21(A)は、サーボモータ22(A)の出力に係る実測値(制御量)の1つとして、手先23のX軸におけるフィードバック位置Pf(A)を制御装置10に送信する。同様に、サーボドライバ21(B)は、サーボモータ22(B)の制御量の1つとして、手先23のY軸におけるフィードバック位置Pf(B)を制御装置10に送信する。サーボドライバ21(C)は、サーボモータ22(C)の制御量の1つとして、手先23のZ軸におけるフィードバック位置Pf(C)を制御装置10に送信する。サーボドライバ21(D)は、サーボモータ22(D)の制御量の1つとして、手先23の、Z軸を中心とする回転の回転量を、フィードバック位置Pf(D)として、制御装置10に送信する。 Further, the servo driver 21 (A) transmits the feedback position Pf (A) on the X axis of the hand 23 to the control device 10 as one of the actually measured values (control amount) related to the output of the servo motor 22 (A). .. Similarly, the servo driver 21 (B) transmits the feedback position Pf (B) on the Y axis of the hand 23 to the control device 10 as one of the control amounts of the servo motor 22 (B). The servo driver 21 (C) transmits the feedback position Pf (C) on the Z axis of the hand 23 to the control device 10 as one of the control amounts of the servo motor 22 (C). The servo driver 21 (D) uses the rotation amount of the hand 23 around the Z axis as one of the control amounts of the servomotor 22 (D) as the feedback position Pf (D) in the control device 10. Send.
(検出系)
検出系30は、ワーク40を検出した結果である検出結果を生成し、特に、「ワーク40の位置Pwと検出位置Pdとのずれ量」を算出するための情報を検出結果として生成し、生成した検出結果を制御装置10へと通知する(送信する)。図2に例示する検出系30は、検出装置である撮像装置33と、撮像装置33による検出動作(例、撮像動作)を制御する撮像制御装置32と、撮像制御装置32と通信を実行する通信装置31とを含んでいる。
(Detection system)
The detection system 30 generates a detection result that is the result of detecting the
撮像装置33は、撮像制御装置32から検出トリガ(撮像トリガ)を受信すると、検出動作(撮像動作)を実行し、また、実行した検出動作の結果を、例えば、撮像動作の実行によって生成した撮像画像Imを、撮像制御装置32へと出力する(送信する)。 Upon receiving the detection trigger (imaging trigger) from the imaging control device 32, the imaging device 33 executes a detection operation (imaging operation), and the result of the executed detection operation is, for example, an imaging generated by executing the imaging operation. The image Im is output (transmitted) to the image pickup control device 32.
撮像制御装置32は、検出トリガ(撮像トリガ)を撮像装置33へと出力する(送信する)ことにより、撮像装置33に、検出動作(撮像動作)を実行させ、また、撮像装置33から、検出動作の実行結果である検出結果(例、撮像画像Im)を受信する。特に、撮像制御装置32は、撮像装置33への検出トリガ(撮像トリガ)の出力を指示する出力指示(検出指示)を通信装置31から受信すると、撮像装置33へと、検出トリガを送信する。 The image pickup control device 32 outputs (transmits) a detection trigger (imaging trigger) to the image pickup device 33 to cause the image pickup device 33 to execute a detection operation (imaging operation), and the image pickup device 33 detects the image. The detection result (eg, captured image Im) which is the execution result of the operation is received. In particular, when the image pickup control device 32 receives an output instruction (detection instruction) instructing the output of the detection trigger (imaging trigger) to the image pickup device 33 from the communication device 31, the image pickup control device 32 transmits the detection trigger to the image pickup device 33.
撮像制御装置32は、撮像装置33から、検出動作の実行結果である検出結果(例、撮像画像Im)を受信すると、受信した検出結果を、ネットワークを介して、制御装置10へと出力する(送信する)。例えば、撮像制御装置32は、撮像装置33による検出動作の実行結果である検出結果(例、撮像画像Im)を、検出時刻Td以降の或る制御周期Ccにおいて、ネットワークを介して、制御装置10へと出力する(送信する)。 When the image pickup control device 32 receives the detection result (eg, the captured image Im) which is the execution result of the detection operation from the image pickup device 33, the image pickup control device 32 outputs the received detection result to the control device 10 via the network (eg). Send). For example, the image pickup control device 32 controls the detection result (eg, the image pickup image Im), which is the execution result of the detection operation by the image pickup device 33, via the network in a certain control cycle Cc after the detection time Td. Output (send) to.
詳細は後述するが、撮像制御装置32は、撮像装置33から、検出動作の実行結果である検出結果(例、撮像画像Im)を受信すると、受信した検出結果を解析し、解析結果を、ネットワークを介して、制御装置10へと出力してもよい。例えば、撮像制御装置32は、撮像装置33の生成した撮像画像Imに対して画像解析を実行し、画像解析の結果を、検出時刻Td以降の或る制御周期Ccにおいて、ネットワークを介して、制御装置10へと出力してもよい。 Although the details will be described later, when the image pickup control device 32 receives the detection result (eg, the captured image Im) which is the execution result of the detection operation from the image pickup device 33, the image pickup control device 32 analyzes the received detection result and outputs the analysis result to the network. May be output to the control device 10 via. For example, the image pickup control device 32 executes image analysis on the captured image Im generated by the image pickup device 33, and controls the result of the image analysis via a network in a certain control cycle Cc after the detection time Td. It may be output to the device 10.
具体的には、撮像制御装置32は、撮像画像Imに対する画像解析によって、撮像画像Imにおけるワーク40の位置Pw(例、ワーク40の中心位置)と基準点Rbとのずれ量である「画像内での位置ずれ」量を算出してもよい。そして、撮像制御装置32は、算出した「画像内での位置ずれ」量を、ネットワークを介して、制御装置10へと出力してもよく、例えば、算出した「画像内での位置ずれ」量を、検出時刻Td以降の或る制御周期Ccにおいて制御装置10へと送信してもよい。 Specifically, the image pickup control device 32 is the amount of deviation between the position Pw of the work 40 (eg, the center position of the work 40) and the reference point Rb in the image captured image Im by image analysis with respect to the image captured image Im. The amount of "misalignment at" may be calculated. Then, the image pickup control device 32 may output the calculated "positional deviation in the image" amount to the control device 10 via the network, for example, the calculated "positional deviation in the image" amount. May be transmitted to the control device 10 in a certain control cycle Cc after the detection time Td.
通信装置31は、制御装置10から制御周期Ccごとに制御信号Csを受信し、受信した制御信号Csにおいて指定されている検出指示時刻aTdにおいて、出力指示(検出指示)を、撮像制御装置32へと出力する(送信する)。 The communication device 31 receives the control signal Cs from the control device 10 for each control cycle Cc, and sends an output instruction (detection instruction) to the image pickup control device 32 at the detection instruction time aTd specified in the received control signal Cs. Is output (sent).
検出系30において、通信装置31が出力指示を撮像制御装置32へと送信してから、撮像装置33が検出動作を実行するまでには所定時間が必要であり、この所定時間を「検出系30の応答遅れ時間Dd」とも称する。「検出系30の応答遅れ時間Dd」は、「撮像装置33(検出装置)の応答遅れ時間」とも呼ばれる。 In the detection system 30, a predetermined time is required from the communication device 31 transmitting the output instruction to the image pickup control device 32 until the image pickup device 33 executes the detection operation, and this predetermined time is referred to as “detection system 30”. Response delay time Dd ". The “response delay time Dd of the detection system 30” is also referred to as the “response delay time of the image pickup device 33 (detection device)”.
(制御システムの適用例)
図3は、制御システム1の適用例を説明する図であり、具体的には、制御システム1を、ピッキング動作(吸着動作)およびプレース動作を行うロボットアプリケーションに適用した例を説明する図である。すなわち、制御システム1(特に、制御装置10)は、図3に例示するように、例えば「ワーク40を部品パレットから取り出し(ピッキング動作)、取り出したワーク40を所定の位置に実装する(プレース動作)」ピック&プレース工程に適用される。
(Application example of control system)
FIG. 3 is a diagram for explaining an application example of the
図3に示す例では、ワーク40は、1mm以下の微細電子部品であり、例えば、積層セラミックコンデンサ、水晶振動子、ICチップ、その他各種素子である。このような電子部品を基板に載置する作業においては、部品の微細化と回路の微細化とが進み、ピッキング動作およびプレース動作の高精度化が要求され、また、使用部品点数が増加しているため、ピッキング動作およびプレース動作の高速化も必須とされる。
In the example shown in FIG. 3, the
そこで、制御システム1(特に、制御装置10)は、位置ずれ(つまり、ワーク40の位置Pw(例、ワーク40の中心位置)と手先23の位置とのずれ)を考慮することによって、ワーク40を所望の位置へと高精度に移動する。
Therefore, the control system 1 (particularly, the control device 10) considers the positional deviation (that is, the displacement between the position Pw of the work 40 (eg, the center position of the work 40) and the position of the hand 23), so that the
すなわち、ピッキング動作によって手先23に把持されたワーク40を、所望の位置に正確にプレース(載置する)ために、制御システム1(特に、制御装置10)は、位置ずれ(把持ずれ)を考慮して手先23の位置を制御する。例えば、手先23が、ワーク40の中心位置よりも右側の位置で、ワーク40を把持した場合、ワーク40を所望の位置へ載置しようとする制御装置10は、手先23の位置を、当初の目標位置よりも右側にずらす(補正する)。同様に、手先23が、ワーク40の中心位置よりも左側の位置で、ワーク40を把持した場合、ワーク40を所望の位置へ載置しようとする制御装置10は、手先23の位置を、当初の目標位置よりも左側にずらす(補正する)。
That is, in order to accurately place (place) the
また、詳細は後述するが、制御システム1(特に、制御装置10)は、ワーク40の移動を停止させずに、移動中のワーク40を撮像させ、その結果得られた撮像画像Imから、位置ずれ(把持ずれ)を正確に把握する。したがって、制御システム1(特に、制御装置10)は、位置ずれ(把持ずれ)を考慮したワーク40の高精度な位置制御を、高速で実現することができる。
Further, although the details will be described later, the control system 1 (particularly, the control device 10) captures the moving
図3に例示するように、制御システム1において、手先23の位置は、つまり、サーボ制御系20の出力(位置)は、制御装置10によって制御される。すなわち、制御装置10は、サーボドライバ21へと指令値Cmを送信することによって、サーボドライバ21に、サーボモータ22の出力(出力位置)を制御させる。
As illustrated in FIG. 3, in the
例えば、手先23の、互いに直行するX軸、Y軸、Z軸上の各々における位置は、サーボ制御系20(A)、20(B)、20(C)という3つのサーボ制御系20の各々の出力(出力位置)である。また、手先23の、Z軸を中心とする回転の回転量は、サーボ制御系20(D)の出力(出力回転量)である。 For example, the positions of the hand 23 on each of the X-axis, Y-axis, and Z-axis orthogonal to each other are the servo control systems 20 (A), 20 (B), and 20 (C), respectively. Output (output position) of. Further, the rotation amount of the hand 23 around the Z axis is the output (output rotation amount) of the servo control system 20 (D).
具体的には、制御装置10から指令値Cm(A)を受けたサーボドライバ21(A)は、サーボモータ22(A)を制御し、サーボモータ22(A)によって手先23はX軸方向に移動する。また、サーボモータ22(A)の制御結果(出力)は、サーボドライバ21(A)へとフィードバックされる。 Specifically, the servo driver 21 (A) that receives the command value Cm (A) from the control device 10 controls the servo motor 22 (A), and the hand 23 is moved in the X-axis direction by the servo motor 22 (A). Moving. Further, the control result (output) of the servomotor 22 (A) is fed back to the servo driver 21 (A).
同様に、制御装置10から指令値Cm(B)および(C)の各々を受けたサーボドライバ21(B)および21(C)の各々は、サーボモータ22(B)および22(C)の各々を制御する。サーボモータ22(B)および22(C)の各々によって、手先23は、Y軸方向およびZ軸方向の各々に移動する。また、サーボモータ22(B)および22(C)の各々の制御結果は、サーボドライバ21(B)および22(C)の各々にフィードバックされる。 Similarly, each of the servo drivers 21 (B) and 21 (C) that received the command values Cm (B) and (C) from the control device 10 is the servomotors 22 (B) and 22 (C), respectively. To control. Each of the servomotors 22 (B) and 22 (C) causes the hand 23 to move in each of the Y-axis direction and the Z-axis direction. Further, the control results of the servomotors 22 (B) and 22 (C) are fed back to each of the servo drivers 21 (B) and 22 (C).
さらに、制御装置10から指令値Cm(D)を受けたサーボドライバ21(D)は、サーボモータ22(D)を制御し、サーボモータ22(D)によって手先23はZ軸を中心として回転する。また、サーボモータ22(D)の制御結果は、サーボドライバ21(D)にフィードバックされる。 Further, the servo driver 21 (D) that receives the command value Cm (D) from the control device 10 controls the servo motor 22 (D), and the hand 23 is rotated about the Z axis by the servo motor 22 (D). .. Further, the control result of the servomotor 22 (D) is fed back to the servo driver 21 (D).
ピッキング動作によって手先23に把持されたワーク40は、手先23の移動に伴って移動する。制御装置10からの指示(具体的には、検出指示時刻aTd)に従って撮像装置33は、ピッキング動作によって手先23に把持されたワーク40を撮像し、撮像画像Imを生成する。撮像装置33によって生成された撮像画像Imは、制御装置10へと送信される。
The
制御装置10は、撮像画像Imに対する画像解析によって、位置ずれ(つまり、ワーク40の位置Pw(例、ワーク40の中心位置)と手先23の位置とのずれ)を特定する。そして、制御装置10は、特定した位置ずれを考慮して手先23の位置(例、プレース位置)を制御することによって、ワーク40を所望の位置に高速かつ高精度に実装する。
The control device 10 identifies the positional deviation (that is, the displacement between the position Pw of the work 40 (eg, the center position of the work 40) and the position of the hand 23) by image analysis with respect to the captured image Im. Then, the control device 10 mounts the
ただし、撮像画像Imに対する画像解析を制御装置10が実行することは必須ではない。制御装置10は、撮像画像Imにおけるワーク40の位置Pw(例、ワーク40の中心位置)と基準点Rbとのずれ量である「画像内での位置ずれ」量から、ワーク40の位置Pwと検出位置Pdとのずれ量である第一ずれ量Fdを特定することができればよい。撮像画像Imに対する画像解析を実行するのは撮像制御装置32であってもよく、言い換えれば、撮像制御装置32が、撮像画像Imに対する画像解析によって、「画像内での位置ずれ」量を算出してもよい。その場合、制御装置10は、撮像制御装置32から「画像内での位置ずれ」量を取得し、取得した「画像内での位置ずれ」量から、第一ずれ量Fdを特定する(算出する)。
However, it is not essential that the control device 10 performs image analysis on the captured image Im. The control device 10 determines the position Pw of the
(ワークの撮像方法に係る第一の工夫:無停止での撮像画像の生成)
図4は、ワーク40の撮像方法のヴァリエーションを説明する図である。図4の(A)は、位置ずれ(つまり、ワーク40の位置Pw(例、ワーク40の中心位置)と手先23の位置とのずれ)を特定するための撮像画像Imを生成する、従来までの方法を説明する図である。
(First device related to the method of imaging the work: generation of captured images without stopping)
FIG. 4 is a diagram illustrating variations of the imaging method of the
すなわち、従来は、ワーク40を把持している手先23の移動を停止して、手先23に把持されたワーク40を撮像し、撮像画像Imを生成する方法が一般的であった。具体的には、従来の制御システムは、ワーク40を把持した手先23の移動速度(サーボ速度Vs)をいったん「0」にし、手先23等の振動が収まってから、つまり、振動減衰待ち時間が経過してから、検出トリガを出力して、撮像装置に撮像を実行させていた。
That is, conventionally, a method has been generally used in which the movement of the hand 23 holding the
「ワーク40を把持した手先23の移動を停止して、撮像画像Imを生成する」従来までの方法は、ワーク40の位置ずれ(把持ずれ)を高精度に検出可能な撮像画像Imを生成できるとの利点を有する。
"The movement of the hand 23 holding the
ただし、従来の制御システムは、「手先23の移動を停止させる」、および、「振動減衰待ち時間が経過するまで待つ」という処理の後に、撮像を実行するため、図4の(A)に示すように撮像の実行に要する時間が長くなるという問題がある。 However, since the conventional control system executes imaging after the processes of "stopping the movement of the hand 23" and "waiting until the vibration damping waiting time elapses", it is shown in FIG. 4A. As described above, there is a problem that the time required for performing imaging becomes long.
図4の(B)は、制御システム1(特に、制御装置10)が実行する、「把持ずれ(つまり、ワーク40の位置Pw(例、ワーク40の中心位置)と手先23の位置とのずれ)を特定するための撮像画像Imを生成する」方法を説明する図である。制御装置10は、手先23の移動を停止せずに、つまり、無停止で、撮像画像Imを生成させる。具体的には、図4の(B)に示すように、制御装置10は、ワーク40を把持した手先23の移動速度(サーボ速度Vs)を「0」にすることなく、手先23の移動中に、検出トリガを出力して、撮像装置33に撮像を実行させる。
FIG. 4B shows a “grip deviation (that is, a deviation between the position Pw of the work 40 (eg, the center position of the work 40)” and the position of the hand 23, which is executed by the control system 1 (particularly, the control device 10). ) Is generated to identify the captured image Im ”. The control device 10 generates the captured image Im without stopping the movement of the hand 23, that is, without stopping. Specifically, as shown in FIG. 4B, the control device 10 is moving the hand 23 without setting the moving speed (servo speed Vs) of the hand 23 holding the
図4の(B)に示す、制御装置10の「無停止で撮像画像Imを生成させる」方法は、図4の(A)に示す、従来の制御システムの「手先23の移動を停止させてから撮像画像Imを生成させる」方法に比べて、タクトを上げることができる。 The method of "generating the captured image Im without stop" of the control device 10 shown in FIG. 4 (B) is the method of "stopping the movement of the hand 23" of the conventional control system shown in FIG. 4 (A). The tact can be increased as compared with the method of "generating the captured image Im from".
(無停止で撮像画像を生成した場合に発生し得る問題)
図5は、無停止で(つまり、ワーク40の移動を停止せずに)、撮像画像Imを生成した場合に発生し得る問題を説明する図である。図5の(A)および図5の(B)の各々において、二点鎖線の交差する点は「撮像画像Im中の、検出位置Pdに対応する基準点Rb(例、撮像画像Imの中心点)」を示している。また、点線で示す円の中心位置は、「検出時刻Tdにおける、手先23の位置」、つまり、「検出時刻Tdにおける、サーボ制御系20のフィードバック位置Pf(実位置)」を示している。さらに、星印は「ワーク40の位置Pw(例、ワーク40の中心位置)」を、点線矢印は「ワーク40の位置Pwと『検出時刻Tdにおける、手先23の位置』とのずれ」(量)を、示している。
(Problems that can occur when a captured image is generated without stopping)
FIG. 5 is a diagram illustrating a problem that may occur when a captured image Im is generated without stopping (that is, without stopping the movement of the work 40). In each of FIG. 5A and FIG. 5B, the intersecting point of the alternate long and short dash line is "a reference point Rb corresponding to the detection position Pd in the captured image Im (eg, the center point of the captured image Im). ) ”Is shown. Further, the center position of the circle indicated by the dotted line indicates "the position of the hand 23 at the detection time Td", that is, "the feedback position Pf (actual position) of the
図5の(A)および図5の(B)の各々において、撮像装置33は、ワーク40の位置Pw(例、ワーク40の中心位置)と検出位置Pdとが一致したタイミングで、撮像を実行している。つまり、撮像画像Imは、ワーク40の位置Pwと、検出位置Pdとが一致したタイミングで生成される。そのため、図5の(A)および図5の(B)の各々の撮像画像Imにおいて、星印(つまり、ワーク40の位置Pw)と、検出位置Pdに対応する基準点Rとは、一致している。
In each of FIG. 5A and FIG. 5B, the image pickup apparatus 33 executes imaging at the timing when the position Pw of the work 40 (eg, the center position of the work 40) and the detection position Pd coincide with each other. is doing. That is, the captured image Im is generated at the timing when the position Pw of the
図5の(A)に示す例では、撮像画像Imが生成されたタイミングで、ワーク40の位置Pwと、手先23の位置とは一致している。そのため、撮像画像Imにおいて、星印(つまり、ワーク40の位置Pw)と点線で示す円の中心位置(つまり、手先23の位置)とは、一致している。
In the example shown in FIG. 5A, the position Pw of the
図5の(B)に示す例では、撮像画像Imが生成されたタイミングで、ワーク40の位置Pwと、手先23の位置とは一致しておらず、つまり、ワーク40の位置Pwと、手先23の位置とはずれている。そのため、撮像画像Imにおいて、星印(つまり、ワーク40の位置Pw)と点線で示す円の中心位置(つまり、手先23の位置)とは、一致しておらず、つまり、ずれている。
In the example shown in FIG. 5B, the position Pw of the
ここで、図5の(A)および図5の(B)の各々において示されているように、手先23と撮像装置33との間にはワーク40が存在し、つまり、手先23はワーク40によって隠されてしまうため、実際には手先23は撮像されない。つまり、図5の(A)および図5の(B)の各々の撮像画像Imにおいて、点線で示す円は実際には写っておらず、撮像画像Imからは、「検出時刻Tdにおける、手先23の位置(フィードバック位置Pf)」は分からない。
Here, as shown in each of FIG. 5A and FIG. 5B, there is a
そのため、図5の(A)の撮像画像Imと、図5の(B)の撮像画像Imとを区別することは実際にはできない。つまり、撮像画像Imが生成されたタイミングで、ワーク40の位置Pwと手先23の位置とは一致していたのか、または、ワーク40の位置Pwと手先23の位置とはずれていたのかを、撮像画像Imに対する画像解析のみによって判定することはできない。
Therefore, it is not possible to actually distinguish between the captured image Im of FIG. 5 (A) and the captured image Im of FIG. 5 (B). That is, at the timing when the captured image Im is generated, it is captured whether the position Pw of the
実際には手先23は撮像されていないため、撮像画像Imに対する画像解析のみによって、手先23の位置を把握することはできない。したがって、「ワーク40の位置Pwと手先23の位置とのずれ」を、つまり、位置ずれ(把持ずれ)を、撮像画像Imに対する画像解析のみによって把握することもできない。撮像画像Imに対する画像解析のみによって把握することができるのは、撮像画像Imに実際に撮像されているワーク40の位置Pwと、撮像画像Imの基準点R(例、撮像画像Imの中心点)とのずれ量だけである。手先23は実際には撮像画像Imに撮像されていないため、撮像画像Imに対する画像解析のみによっては、手先23の位置と撮像画像Imの基準点Rとのずれ量を把握することはできない。
Since the hand 23 is not actually imaged, the position of the hand 23 cannot be grasped only by image analysis with respect to the captured image Im. Therefore, it is not possible to grasp the "misalignment between the position Pw of the
つまり、手先23の位置と検出位置Pdとが一致していないタイミングで撮像した場合、撮像で生成された撮像画像Imに対して画像解析を実行したとしても、画像解析結果のみから位置ずれ量(把持ずれ量)を算出することはできない。言い換えれば、撮像画像Imに対する画像解析によって「ワーク40の位置Pwと手先23の位置とのずれ」量を算出するためには、手先23の位置と検出位置Pdとが一致した時刻で、撮像装置33に撮像を実行させる必要がある。
That is, when the image is taken at the timing when the position of the hand 23 and the detection position Pd do not match, even if the image analysis is performed on the captured image Im generated by the imaging, the amount of misalignment (positional deviation amount only from the image analysis result) ( Gripping deviation amount) cannot be calculated. In other words, in order to calculate the amount of "deviation between the position Pw of the
以下の説明においては、「撮像装置33が撮像を実行したタイミングが、手先23の位置と検出位置Pdとが一致する時刻に、一致しない(ずれる)」ことを、「撮影タイミングのずれ」とも称する。「撮影タイミングのずれ」は、「撮像装置33が撮像を実行したタイミングにおいて、手先23の位置と検出位置Pdとが一致していない(ずれている)」ことを指すともいえる。「撮影タイミングのずれ」が発生すると、撮像が実行された時点で手先23の位置と検出位置Pdとは一致しておらず、つまり、撮像画像Im中の手先23の位置と基準点R(例、撮像画像Imの中心点)とは一致しない。そのため、撮像画像Imに対する画像解析のみによっては、位置ずれ量(把持ずれ量)を、つまり、「ワーク40の位置Pwと手先23の位置とのずれ」量を、把握することはできない。
In the following description, "the timing at which the imaging device 33 performs imaging does not match (shift) at the time when the position of the hand 23 and the detection position Pd coincide" is also referred to as "shift in shooting timing". .. It can also be said that the "difference in shooting timing" means that "the position of the hand 23 and the detection position Pd do not match (shift) at the timing when the imaging device 33 executes imaging". When the "shooting timing shift" occurs, the position of the hand 23 and the detection position Pd do not match when the imaging is executed, that is, the position of the hand 23 and the reference point R in the captured image Im (eg,). , The center point of the captured image Im) does not match. Therefore, it is not possible to grasp the amount of misalignment (grasping misalignment), that is, the amount of "misalignment between the position Pw of the
制御装置10は、図4の(B)に示す「手先23の移動を停止せずに撮像画像Imを生成させる」方法を実行することで、図4の(A)に示す「手先23の移動を停止させてから撮像画像Imを生成させる」従来の方法に比べて、タクトを上げることができる。ただし、「手先23の移動を停止せずに撮像画像Imを生成させる」場合、図5を用いて説明したように、「撮影タイミングのずれ」が発生すると、撮像画像Imに対する画像解析だけでは、位置ずれ量(把持ずれ量)を算出できなくなるとの問題が発生する。 The control device 10 executes the method of "generating the captured image Im without stopping the movement of the hand 23" shown in FIG. 4 (B), and thereby "moving the hand 23" shown in FIG. 4 (A). The tact can be increased as compared with the conventional method of "generating the captured image Im after stopping the operation". However, in the case of "generating the captured image Im without stopping the movement of the hand 23", as described with reference to FIG. 5, when the "shooting timing shift" occurs, the image analysis of the captured image Im alone is sufficient. There arises a problem that the amount of misalignment (the amount of gripping misalignment) cannot be calculated.
(ワークの撮像方法に係る第二の工夫)
図6は、検出時刻Tdを調整することによって、図5で説明した問題を解決した撮像画像Imの例について説明する図である。図6の(A)および図6の(B)の各々において、二点鎖線の交差する点は「撮像画像Im中の、検出位置Pdに対応する基準点Rb(例、撮像画像Imの中心点)」を示している。また、点線で示す円の中心位置は、「検出時刻Tdにおける、手先23の位置」、つまり、「検出時刻Tdにおける、サーボ制御系20のフィードバック位置Pf」を示している。さらに、星印は「ワーク40の位置Pw(例、ワーク40の中心位置)」を示し、実線矢印は「撮像画像Imにおける、ワーク40の位置Pwと基準点Rbとのずれ」(量)を、示している。
(Second device related to the method of imaging the work)
FIG. 6 is a diagram illustrating an example of a captured image Im that solves the problem described in FIG. 5 by adjusting the detection time Td. In each of FIG. 6A and FIG. 6B, the intersecting point of the alternate long and short dash line is "a reference point Rb corresponding to the detection position Pd in the captured image Im (eg, the center point of the captured image Im). ) ”Is shown. Further, the center position of the circle indicated by the dotted line indicates "the position of the hand 23 at the detection time Td", that is, "the feedback position Pf of the
図5で説明した問題を解決するために、制御装置10は、手先23の位置(つまり、サーボ制御系20のフィードバック位置Pf)と検出位置Pdとが一致する時刻に、撮像装置33に撮像を実行させようとする。 In order to solve the problem described with reference to FIG. 5, the control device 10 takes an image on the image pickup device 33 at a time when the position of the hand 23 (that is, the feedback position Pf of the servo control system 20) and the detection position Pd coincide with each other. Try to get it done.
ただし、サーボ制御系20のフィードバック位置Pfと検出位置Pdとの一致を確認した時点で撮像装置33に撮像を指示しても、撮像装置33は、サーボ制御系20のフィードバック位置Pfと検出位置Pdとが一致した時刻での撮像を行うことはできない。前述の通り、撮像装置33を含む検出系30と制御装置10との通信は、制御周期Ccごとに実行されるのであり、また、検出系30の応答遅れ時間Dd(例、撮像装置33の応答遅れ時間Dd)も存在するからである。
However, even if the image pickup device 33 is instructed to take an image when the coincidence between the feedback position Pf of the
そこで、制御装置10は、「サーボ制御系20のフィードバック位置Pfと検出位置Pdとが一致する」と予想する時刻を「検出時刻Td」として算出する。そして、制御装置10は、撮像装置33が検出時刻Tdにおいて撮像を実行できるように、検出指示時刻aTdを予め検出系30に出力しておく。
Therefore, the control device 10 calculates the time predicted that "the feedback position Pf of the
すなわち、制御装置10(特に、図1の検出時刻決定部1160)は、先ず、「サーボ制御系20の応答遅れ時間Dsを考慮したサーボ制御系20の目標位置Ptが、検出位置Pdに一致する時刻」を、検出時刻Tdとする。例えば、検出時刻決定部1160は、「サーボ制御系20の目標位置Ptと検出位置Pdとが一致する時刻」から、サーボ制御系20の応答遅れ時間Dsが経過した時刻を、検出時刻Tdとする。そして、検出時刻決定部1160は、「検出時刻Tdを検出系30の応答遅れ時間Ddによって補正した時刻」を検出指示時刻aTdとする。例えば、検出時刻決定部1160は、「検出時刻Tdから、検出系30の応答遅れ時間Ddを遡った時刻」を、検出指示時刻aTdとする。そして、制御装置10(特に、図1の指令部1210)は、検出指示時刻aTdを、予め検出系30へと出力しておく。
That is, in the control device 10 (particularly, the detection
制御装置10は、「検出時刻Tdを検出系30の応答遅れ時間Ddによって補正した時刻」である検出指示時刻aTdを予め検出系30へと出力しておくことによって、撮像装置33に、検出時刻Tdにおいて撮像を実行させることができる。そして、検出時刻Tdにおいて、「サーボ制御系20の応答遅れ時間Dsを考慮したサーボ制御系20の目標位置Pt」と、検出位置Pdとは一致する。したがって、「サーボ制御系20の応答遅れ時間Dsを考慮したサーボ制御系20の目標位置Pt」と「サーボ制御系20のフィードバック位置Pf」とが一致するのであれば、以下の関係が成立する。すなわち、検出時刻Tdにおいて、「サーボ制御系20のフィードバック位置Pf」と検出位置Pdとは一致する。
The control device 10 outputs the detection instruction time aTd, which is the “time in which the detection time Td is corrected by the response delay time Dd of the detection system 30”, to the detection system 30 in advance, whereby the detection time is transmitted to the image pickup device 33. Imaging can be performed at Td. Then, at the detection time Td, the "target position Pt of the
図6の(A)および図6の(B)の各々の撮像画像Imは、制御装置10が検出指示時刻aTdを予め検出系30へと出力しておくことによって、サーボ制御系20のフィードバック位置Pfと検出位置Pdとが一致した時刻で撮像された撮像画像Imである。すなわち、図6の(A)および図6の(B)の各々において、撮像装置33は、サーボ制御系20のフィードバック位置Pf(つまり、手先23の位置)と検出位置Pdとが一致したタイミングで、撮像を実行している。
In each of the captured images Im of FIGS. 6A and 6B, the control device 10 outputs the detection instruction time aTd to the detection system 30 in advance, so that the feedback position of the
そのため、図6の(A)および図6の(B)の各々の撮像画像Imにおいて、点線で示す円の中心位置(つまり、手先23の位置)と二点鎖線の交差する基準点R(つまり、検出位置Pd)とは、一致している。 Therefore, in each of the captured images Im of FIGS. 6A and 6B, the reference point R (that is, the intersection of the center position of the circle indicated by the dotted line (that is, the position of the hand 23) and the two-dot chain line intersects (that is, that is). , Detection position Pd).
図6の(A)に示す例では、図5の(A)と同様に、撮像画像Imが生成されたタイミングで、ワーク40の位置Pwと、手先23の位置とは一致している。そのため、撮像画像Imにおいて、星印(つまり、ワーク40の位置Pw)と点線で示す円の中心位置(つまり、手先23の位置)とは、一致している。
In the example shown in FIG. 6A, the position Pw of the
また、図6の(B)に示す例では、図5の(B)と同様に、撮像画像Imが生成されたタイミングで、ワーク40の位置Pwと、手先23の位置とは一致しておらず、つまり、ワーク40の位置Pwと、手先23の位置とはずれている。そのため、撮像画像Imにおいて、星印(つまり、ワーク40の位置Pw)と点線で示す円の中心位置(つまり、手先23の位置)とは、一致しておらず、つまり、ずれている。
Further, in the example shown in FIG. 6B, the position Pw of the
ここで、図5と同様に、図6においても、実際には手先23はワーク40に隠されて撮像されることはないため、撮像画像Imに対する画像解析のみによって、手先23の位置を把握することはできない。
Here, as in FIG. 5, in FIG. 6, since the hand 23 is not actually hidden by the
ただし、前述の通り、図6の(A)および図6の(B)の各々の撮像画像Imにおいて、実際には映っていない「点線で示す円の中心位置(つまり、手先23の位置)」は、基準点R(つまり、検出位置Pd)に一致すると推定することができる。そのため、制御装置10は、「実際には映っていない『点線で示す円の中心位置(つまり、手先23の位置)』と、星印(つまり、ワーク40の位置Pw)とのずれ量」は、「基準点Rと星印とのずれ量」に等しいと推定することができる。言い換えれば、制御装置10は、「撮像画像Imにおける、ワーク40の位置Pwと基準点Rbとのずれ」を示す実線矢印から、ワーク40の位置Pwと手先23の位置(フィードバック位置Pf)とのずれ量(位置ずれ量)を算出することができる。
However, as described above, the "center position of the circle indicated by the dotted line (that is, the position of the hand 23)" that is not actually reflected in each of the captured images Im of FIGS. 6A and 6B. Can be estimated to coincide with the reference point R (that is, the detection position Pd). Therefore, the control device 10 determines that "the amount of deviation between the" center position of the circle indicated by the dotted line (that is, the position of the hand 23) "and the star mark (that is, the position Pw of the work 40) that is not actually reflected". , Can be estimated to be equal to "the amount of deviation between the reference point R and the star mark". In other words, the control device 10 determines the position Pw of the
(「撮影タイミングのずれ」がない場合の位置ずれ量(把持ずれ量)の特定方法)
これまでに説明してきた内容を整理すれば、以下の通りである。すなわち、制御装置10(特に、図1の検出時刻決定部1160)は、先ず、検出時刻Tdを、「目標軌道Ttから算出されるサーボ制御系20の目標位置Ptが、検出位置Pdに一致する」時刻と、サーボ制御系20の応答遅れ時間Dsとから特定する。
(Method of specifying the amount of misalignment (grasping misalignment) when there is no "misalignment of shooting timing")
The contents explained so far can be summarized as follows. That is, the control device 10 (particularly, the detection
そして、制御装置10(検出時刻決定部1160)は、検出時刻Tdを「検出系30の応答遅れ時間Dd」によって補正した時刻である検出指示時刻aTdを算出する。制御装置10は、検出指示時刻aTdを予め検出系30(特に、通信装置31)に送信しておくことによって、撮像装置33に、検出時刻Tdにおいて撮像を実行させる。 Then, the control device 10 (detection time determination unit 1160) calculates the detection instruction time aTd, which is the time obtained by correcting the detection time Td by the “response delay time Dd of the detection system 30”. By transmitting the detection instruction time aTd to the detection system 30 (particularly, the communication device 31) in advance, the control device 10 causes the image pickup device 33 to perform imaging at the detection time Td.
撮像装置33は、検出時刻Tdにおいて撮像を実行することにより、「サーボ制御系20の応答遅れ時間Dsを考慮した、サーボ制御系20の目標位置Pt」と、検出位置Pdとが一致した撮像画像Imを生成する。つまり、撮像画像Imにおいて、「サーボ制御系20の応答遅れ時間Dsを考慮した、サーボ制御系20の目標位置Pt」と、基準点Rb(例、撮像画像Imの中心点)とは、一致している。したがって、「サーボ制御系20の応答遅れ時間Dsを考慮した、サーボ制御系20の目標位置Pt」とサーボ制御系20のフィードバック位置Pf(つまり、手先23の位置)とが一致する場合、撮像画像Imにおいて、手先23の位置と基準点Rbとは一致する。
By executing the imaging at the detection time Td, the image pickup apparatus 33 has the captured image in which the "target position Pt of the
制御装置10(特に、図1の第一ずれ量算出部1170)は、撮像画像Imに対する画像解析によって、撮像画像Imにおけるワーク40の位置Pw(例、ワーク40の中心位置)と基準点Rbとのずれ量である「画像内での位置ずれ」量を算出する。撮像画像Imにおける「画像内での位置ずれ」量は、「検出時刻Tdにおける、ワーク40の位置Pwと検出位置Pdとのずれ量(後述する、第一ずれ量Fd)」に対応する。
The control device 10 (particularly, the first deviation
そして、第一ずれ量算出部1170は、「画像内での位置ずれ」量に対応する「第一ずれ量Fd」から、ワーク40の位置Pw(例、ワーク40の中心位置)と手先23の位置とのずれ量である「位置ずれ量(把持ずれ量)」を算出する。
Then, the first deviation
(ワークの位置ずれ、画像内での位置ずれ、撮影タイミングのずれについて)
以下の説明においては、撮像画像Imにおける、「ワーク40の位置Pw(例、ワーク40の中心位置)」と、実際には撮像されない「手先23の位置」とのずれ量を、「ワークの位置ずれ」量とも称する。撮像画像Imにおける「ワークの位置ずれ」量は、ワーク40の位置Pw(例、ワーク40の中心位置)と手先23の位置とのずれ量である位置ずれ量(つまり、把持ずれ量)に対応する。
(About work position shift, position shift in the image, shooting timing shift)
In the following description, the amount of deviation between the "position Pw of the work 40 (eg, the center position of the work 40)" and the "position of the hand 23" that is not actually imaged in the captured image Im is referred to as the "position of the work". Also called the "deviation" amount. The amount of "work misalignment" in the captured image Im corresponds to the misalignment amount (that is, the grip misalignment amount) which is the misalignment amount between the position Pw of the work 40 (eg, the center position of the work 40) and the position of the hand 23. do.
また、撮像画像Imにおける、「ワーク40の位置Pw(例、ワーク40の中心位置)」と「基準点Rb(例、撮像画像Imの中心点)」とのずれ量を、「画像内での位置ずれ」量とも称する。「画像内での位置ずれ」量は「第一ずれ量Fd」に対応する。 Further, the amount of deviation between the "position Pw of the work 40 (eg, the center position of the work 40)" and the "reference point Rb (eg, the center point of the captured image Im)" in the captured image Im is "in the image. Also called the amount of "misalignment". The amount of "positional deviation in the image" corresponds to the "first deviation amount Fd".
撮像装置33が、手先23の位置と検出位置Pdとが一致していない時刻で撮像を実行することによって、撮像画像Imにおいて、実際には撮像されない「手先23の位置」と、「基準点Rb(例、撮像画像Imの中心点)」とはずれる。そこで、撮像画像Imにおける、実際には撮像されない「手先23の位置」と、「基準点Rb(例、撮像画像Imの中心点)」とのずれ量を、「撮影タイミングのずれ」量とも称する。「撮影タイミングのずれ」量は、後述する「第二ずれ量Sd」に対応する。 The image pickup device 33 performs imaging at a time when the position of the hand 23 and the detection position Pd do not match, so that the “position of the hand 23” and the “reference point Rb” that are not actually captured in the captured image Im are obtained. (For example, the center point of the captured image Im) ”. Therefore, the amount of deviation between the "position of the hand 23" that is not actually captured and the "reference point Rb (eg, the center point of the captured image Im)" in the captured image Im is also referred to as the "shooting timing deviation" amount. .. The "shooting timing shift" amount corresponds to the "second shift amount Sd" described later.
ここで、詳細は図9を用いて後述するが、「画像内での位置ずれ」量は、「ワークの位置ずれ」量と「撮影タイミングのずれ」量とに分解可能である。「ワークの位置ずれ」量と、「画像内での位置ずれ」量と、「撮影タイミングのずれ」量との上述の関係を、{「画像内での位置ずれ」量=「ワークの位置ずれ」量+「撮影タイミングのずれ」量}という形式で表してもよい。言い換えれば、「撮像画像Imにおける、ワーク40の位置Pwの、基準点Rbからのずれ量」は、撮像画像Imにおける、以下の2つのずれ量に分解することができる。すなわち、「撮像画像Imにおける、ワーク40の位置Pwの、手先23の位置からのずれ量」と、「撮像画像Imにおける、手先23の位置の、基準点Rbからのずれ量」とに分解できる。
Here, the details will be described later with reference to FIG. 9, but the amount of “positional deviation in the image” can be decomposed into the amount of “work position deviation” and the amount of “shooting timing deviation”. The above-mentioned relationship between the amount of "misalignment of the work", the amount of "misalignment in the image", and the amount of "misalignment of shooting timing" is expressed as {"misalignment in the image" = "misalignment of the work". It may be expressed in the form of "amount +" amount of deviation in shooting timing "}. In other words, the "amount of deviation of the position Pw of the
ここで、検出時刻Tdにおいて、検出位置Pdと「サーボ制御系20の応答遅れ時間Dsを考慮した、サーボ制御系20の目標位置Pt」とは一致する。したがって、検出時刻Tdにおいて、「サーボ制御系20のフィードバック位置Pf」と「サーボ制御系20の応答遅れ時間Dsを考慮した、サーボ制御系20の目標位置Pt」とが一致する場合、以下の関係が成立する。すなわち、検出時刻Tdにおいて、「サーボ制御系20のフィードバック位置Pf」と検出位置Pdとは一致する。言い換えれば、検出時刻Tdにおいて、手先23の位置と「サーボ制御系20の応答遅れ時間Dsを考慮した、サーボ制御系20の目標位置Pt」とが一致する場合、検出時刻Tdにおいて、手先23の位置と検出位置Pdとは一致する。そして、検出時刻Tdにおいて、手先23の位置と検出位置Pdとが一致する場合、撮像画像Imにおける、手先23の位置と基準点Rbとの差である「撮影タイミングのずれ」量は「0」となる。
Here, at the detection time Td, the detection position Pd and the "target position Pt of the
そして、{「画像内での位置ずれ」量=「ワークの位置ずれ」量+「撮影タイミングのずれ」量}だから、「撮影タイミングのずれ」量が「0」である場合、{「画像内での位置ずれ」量=「ワークの位置ずれ」量}となる。 Then, {"position shift in the image" = "work position shift" amount + "shooting timing shift" amount}, so if the "shooting timing shift" amount is "0", {"in the image" "Position deviation" amount = "Work position deviation" amount}.
したがって、検出時刻Tdにおいて、手先23の位置と検出位置Pdとが一致する場合、制御装置10は、「画像内での位置ずれ」量(つまり、第一ずれ量Fd)を算出することで、「ワークの位置ずれ」量(つまり、位置ずれ量)を精緻に特定することができる。 Therefore, when the position of the hand 23 and the detection position Pd match at the detection time Td, the control device 10 calculates the amount of "positional deviation in the image" (that is, the first deviation amount Fd). The amount of "work misalignment" (that is, the amount of misalignment) can be precisely specified.
前述の通り、制御装置10は、手先23の移動を停止させずに、検出時刻Tdにおいて撮像画像Imを生成させることによって、手先23の移動を停止させてから撮像画像Imを生成させる方法に比べて、タクトを向上することができる。 As described above, compared with the method in which the control device 10 generates the captured image Im at the detection time Td without stopping the movement of the hand 23, thereby stopping the movement of the hand 23 and then generating the captured image Im. And the tact can be improved.
また、制御装置10は、撮像画像Imを、手先23の位置と検出位置Pdとが一致すると予測した検出時刻Tdにおいて生成させる。そのため、検出時刻Tdにおいて、手先23の位置と検出位置Pdとが一致する場合、制御装置10は、「画像内での位置ずれ」量(つまり、第一ずれ量Fd)を算出することで、「ワークの位置ずれ」量(つまり、位置ずれ量)を精緻に特定することができる。 Further, the control device 10 generates the captured image Im at the detection time Td predicted that the position of the hand 23 and the detection position Pd match. Therefore, when the position of the hand 23 and the detection position Pd match at the detection time Td, the control device 10 calculates the amount of "positional deviation in the image" (that is, the first deviation amount Fd). The amount of "work misalignment" (that is, the amount of misalignment) can be precisely specified.
(基準ピンを設ける方式と比べた場合の優位性)
図7は、「撮影タイミングのずれ」に対処する方法を説明する図である。図7の(A)および図7の(B)の各々において、二点鎖線の交差する点は「撮像画像Im中の、検出位置Pdに対応する基準点Rb(例、撮像画像Imの中心点)」を示している。また、点線で示す円の中心位置は、「検出時刻Tdにおける、手先23の位置」、つまり、「検出時刻Tdにおける、サーボ制御系20のフィードバック位置Pf(実位置)」を示している。さらに、星印は「ワーク40の位置Pw(例、ワーク40の中心位置)」を示している。また、図5、図6と同様に、図7においても、実際には手先23はワーク40に隠されて撮像されることはないため、撮像画像Imに対する画像解析のみによって、手先23の位置を把握することはできない。
(Advantage over the method of providing a reference pin)
FIG. 7 is a diagram illustrating a method of coping with the “shift in shooting timing”. In each of FIG. 7A and FIG. 7B, the intersecting point of the alternate long and short dash line is "a reference point Rb corresponding to the detection position Pd in the captured image Im (eg, the center point of the captured image Im). ) ”Is shown. Further, the center position of the circle indicated by the dotted line indicates "the position of the hand 23 at the detection time Td", that is, "the feedback position Pf (actual position) of the
図7の(A)は、ワーク40の移動を停止せずに撮像を実行させた場合に発生し得る「撮影タイミングのずれ」への対策として、手先23の近傍に基準ピンを設け、ワーク40と共に基準ピンを撮像することによって、位置ずれを検出する方法を説明する図である。
In FIG. 7A, a reference pin is provided in the vicinity of the hand 23 as a countermeasure against the “difference in shooting timing” that may occur when imaging is executed without stopping the movement of the
図7の(A)に示す例では、手先23は、基準ピンで囲まれた領域の中心に位置する。そのため、撮像画像Im中に撮像されている基準ピンによって、手先23の位置を特定することができ、このようにして特定された手先23の位置と、ワーク40の位置とのずれ量を算出することができる。
In the example shown in FIG. 7A, the hand 23 is located at the center of the area surrounded by the reference pin. Therefore, the position of the hand 23 can be specified by the reference pin captured in the captured image Im, and the amount of deviation between the position of the hand 23 thus specified and the position of the
「手先23の近傍に基準ピンを設け、ワーク40と共に基準ピンを撮像する」方法によっても、基準ピンによって手先23の位置を特定でき、したがって、手先23の位置とワーク40の位置とのずれ量を、つまり、位置ずれ量を算出することができる。
The position of the hand 23 can also be specified by the reference pin by the method of "providing the reference pin in the vicinity of the hand 23 and imaging the reference pin together with the
また、「手先23の近傍に基準ピンを設け、ワーク40と共に基準ピンを撮像する」方法は、位置ずれ量(把持ずれ量)を算出するために必要な撮像画像Imを、ワーク40の移動を停止せずに、生成することができる。そのため、「手先23の近傍に基準ピンを設け、ワーク40と共に基準ピンを撮像する」方法は、「手先23の移動を停止させてから撮像画像Imを生成させる」方法に比べて、タクトを上げることができる。
Further, in the method of "providing a reference pin in the vicinity of the hand 23 and imaging the reference pin together with the
ただし、図7の(A)に示すように、「手先23の近傍に基準ピンを設け、ワーク40と共に基準ピンを撮像する」方法は、ワーク40に加えて、手先23の近傍に設けた基準ピンをも撮像する必要がある。そのため、「手先23の近傍に基準ピンを設け、ワーク40と共に基準ピンを撮像する」方法は、基準ピンを設けない方法に比べて撮像装置33に撮像させる撮像範囲を拡げなくてはならず、その結果、撮像画像Imについて、画素分解能が低下する傾向がある。
However, as shown in FIG. 7A, the method of "providing a reference pin in the vicinity of the hand 23 and imaging the reference pin together with the
また、一般に、撮像装置33の被写界深度はそれほど深くない。図7の(A)に示すように、ワーク40を基板等に載置しようとする際に、基板上の他の部材と基準ピンとが干渉してしまう可能性がある。
Further, in general, the depth of field of the image pickup apparatus 33 is not so deep. As shown in FIG. 7A, when the
そこで、制御装置10(特に、図1の検出時刻決定部1160)は、基準ピンを設けることなく位置ずれ量を算出可能な撮像画像Imを生成するために、手先23の位置と検出位置Pdとが一致すると予測した時刻(検出時刻Td)に、撮像画像Imを生成させる。具体的には、制御装置10は、撮像装置33に、検出時刻Tdに撮像を実行させる。
Therefore, the control device 10 (particularly, the detection
検出時刻Tdにおいて手先23の位置と検出位置Pdとが一致する場合、「ワーク40の位置Pwと手先23の位置とのずれ(つまり、位置ずれ)」は、「撮像画像Imにおける、ワーク40の位置Pwと基準点Rbとのずれ」に対応する。
When the position of the hand 23 and the detection position Pd match at the detection time Td, the “misalignment between the position Pw of the
したがって、制御装置10は、手先23の位置と検出位置Pdとが一致すると予測した時刻である検出時刻Tdに撮像画像Imを生成させることにより、位置ずれ量を算出可能な撮像画像Imを、基準ピンを設けずに生成させることができる。制御装置10は、基準ピンを設けずに位置ずれ量を算出可能な撮像画像Imを生成させることができるため、図7の(A)を用いて説明したような、基準ピンと他の部材との干渉を回避することができる。 Therefore, the control device 10 uses the captured image Im, which can calculate the amount of misalignment, as a reference by generating the captured image Im at the detection time Td, which is the time predicted that the position of the hand 23 and the detection position Pd match. It can be generated without providing a pin. Since the control device 10 can generate an imaged image Im capable of calculating the amount of misalignment without providing a reference pin, the reference pin and other members are used as described with reference to FIG. 7A. Interference can be avoided.
また、制御装置10は、手先23の近傍に基準ピンを設ける必要がないため、手先23の大きさ(サイズ)を抑制することができる。特に、制御装置10は、近傍に基準ピンを設ける場合に比べて小型化した手先23を用いることによって、手先23が他の部材等と干渉するリスクを抑制することができる。 Further, since the control device 10 does not need to provide the reference pin in the vicinity of the hand 23, the size of the hand 23 can be suppressed. In particular, the control device 10 can suppress the risk of the hand 23 interfering with other members or the like by using the hand 23, which is smaller than the case where the reference pin is provided in the vicinity.
さらに、検出時刻Tdにおいて手先23の位置と検出位置Pdとが一致する場合、撮像画像Imにおいて、手先23の位置と基準点Rb(例、撮像画像Imの中心点)とは一致する。そして一般に、手先23の位置とワーク40の位置Pw(例、ワーク40の中心位置)とが大きくずれることは少ないため、撮像画像Imにおいて、ワーク40は、基準点Rbの周囲に配置されることになり、例えば、撮像画像Imの略中央に配置されることになる。
Further, when the position of the hand 23 and the detection position Pd match at the detection time Td, the position of the hand 23 and the reference point Rb (eg, the center point of the captured image Im) coincide with each other in the captured image Im. In general, the position of the hand 23 and the position Pw of the work 40 (eg, the center position of the work 40) are unlikely to deviate significantly, so that the
したがって、制御装置10は、ワーク40が略中央に配置されていない撮像画像Imに比べて、ワーク40の撮像された領域が撮像画像Imの全体に占める割合を大きくでき、つまり、ワーク40を拡大して撮像させた撮像画像Imを生成させることができる。そのため、制御装置10は、ワーク40が拡大して撮像された撮像画像Imに対して、撮像画像Imについての画素分解能を向上させた高精度な画像解析を行うことができる。
Therefore, the control device 10 can increase the ratio of the captured region of the
撮像画像Imについて、必要な撮像範囲は、ワーク40のサイズ(ワーク40の撮影される面の面積)と、想定される「位置ずれ(把持ずれ)の大きさ」とにより決定される。
For the captured image Im, the required imaging range is determined by the size of the work 40 (the area of the surface on which the
(サーボの位置揺らぎの発生)
図7を用いて説明したように、「撮影タイミングのずれ」量を「0」とするタイミングにおいて撮像画像Imを生成することができた場合、撮像画像Imに対する画像解析のみによって、「ワークの位置ずれ」量を正確に算出することができる。
(Occurrence of servo position fluctuation)
As described with reference to FIG. 7, when the captured image Im can be generated at the timing when the amount of “shooting timing shift” is “0”, the “work position” is obtained only by image analysis with respect to the captured image Im. The amount of "deviation" can be calculated accurately.
しかしながら、実際には、「検出時刻Tdにおけるサーボ制御系20のフィードバック位置Pf(具体的には、「検出時刻Tdにおける、手先23の位置」)」と、検出位置Pdとが、常に一致するとは限らない。すなわち、「検出時刻Tdにおける、サーボ制御系20の応答遅れ時間Dsを考慮した目標位置Pt」と、「検出時刻Tdにおける、フィードバック位置Pf」とが、常に一致するとは限らない。具体的には、サーボ制御系20の応答遅れ時間Dsを考慮したとしても、各時刻における、サーボ制御系20の目標位置Ptとフィードバック位置Pfとが常に一致するとは限らない。
However, in reality, the "feedback position Pf of the
以下の説明においては、各時刻において、「サーボ制御系20のフィードバック位置Pf」と、「サーボ制御系20の応答遅れ時間Dsを考慮した、サーボ制御系20の目標位置Pt」とが一致しない(ずれる)ことを、「サーボの位置揺らぎ」とも称する。
In the following description, the "feedback position Pf of the
図8は、検出位置Pdを「100」とした場合の動作プロファイルの一例を示す図である。具体的には、図8の(A)は、検出位置Pdを「100」とした場合について、各時刻における、「サーボ制御系20の応答遅れ時間Dsを考慮した、サーボ制御系20の目標位置Pt」および「これに対応するサーボ制御系20の目標速度」を示している。また、図8の(B)は、検出位置Pdを「100」とした場合について、各時刻における、「サーボ制御系20の応答遅れ時間Dsを考慮した、サーボ制御系20の目標位置Pt」に対する「サーボ制御系20のフィードバック位置Pf」のずれ量を示している。
FIG. 8 is a diagram showing an example of an operation profile when the detection position Pd is set to “100”. Specifically, (A) of FIG. 8 shows the target position of the
検出位置Pdを「100」とした場合、各時刻における、「サーボ制御系20の応答遅れ時間Dsを考慮した、サーボ制御系20の目標位置Pt」に対する「サーボ制御系20のフィードバック位置Pf」のずれ量は、以下の範囲に収まっている。「-0.005mm(つまり、-5μm)」から「+0.005mm(つまり、+5μm)」の範囲に収まっている。
When the detection position Pd is set to "100", the "feedback position Pf of the
図8の(B)に示すように、サーボ制御系20の、各時刻におけるサーボ制御系20のフィードバック位置Pfは、サーボ制御系20の応答遅れ時間Dsを考慮したとしても、サーボ制御系20の、各時刻における目標位置Ptに完全には一致していない。つまり、各時刻における手先23の位置は、サーボ制御系20の応答遅れ時間Dsを考慮したとしても、サーボ制御系20の目標位置Ptに完全には一致していない。
As shown in FIG. 8B, the feedback position Pf of the
ここで、前述の通り、検出時刻Tdにおいて、「サーボ制御系20の応答遅れ時間Dsを考慮した、サーボ制御系20の目標位置Pt」は、検出位置Pdに一致する。そして、検出時刻Tdにおいて、「サーボ制御系20の応答遅れ時間Dsを考慮した、サーボ制御系20の目標位置Pt」と「サーボ制御系20のフィードバック位置Pf(つまり、手先23の位置)」とは一致していない。したがって、検出時刻Tdにおいて、手先23の位置は、検出位置Pdに完全には一致していない。そのため、撮像画像Imにおいて、(実際には撮像されない)手先23の位置を、基準点Rbに一致するとみなすことはできず、つまり、「撮影タイミングのずれ」量を「0」とみなすことはできない。
Here, as described above, at the detection time Td, the “target position Pt of the
(サーボの位置揺らぎによる、撮像画像への影響)
図9は、位置ずれ量(把持ずれ量)の特定に「撮影タイミングのずれ」の考慮が必要となることを説明する図である。図9の(A)および図9の(B)の各々において、二点鎖線の交差する点は「撮像画像Im中の、検出位置Pdに対応する基準点Rb(例、撮像画像Imの中心点)」を示している。点線で示す円の中心位置は、「検出時刻Tdにおける、手先23の位置」、つまり、「検出時刻Tdにおける、サーボ制御系20のフィードバック位置Pf」を示している。星印は、「ワーク40の位置Pw(例、ワーク40の中心位置)」を示している。
(Effect of servo position fluctuation on captured image)
FIG. 9 is a diagram for explaining that it is necessary to consider “difference in shooting timing” in order to specify the amount of misalignment (amount of grip misalignment). In each of FIGS. 9A and 9B, the intersecting point of the alternate long and short dash line is "a reference point Rb corresponding to the detection position Pd in the captured image Im (eg, the center point of the captured image Im). ) ”Is shown. The center position of the circle shown by the dotted line indicates "the position of the hand 23 at the detection time Td", that is, "the feedback position Pf of the
図9に示す撮像画像Imにおいて、実線矢印は、「撮像画像Imにおける、ワーク40の位置Pwと基準点Rbとのずれ」(量)を示し、つまり、「画像内での位置ずれ」量を示している。また、点線矢印は、「ワーク40の位置Pwと『検出時刻Tdにおける、手先23の位置』とのずれ」(量)を示し、つまり、「ワークの位置ずれ」量を示している。さらに、一点鎖線矢印は、「『検出時刻Tdにおける、手先23の位置』と基準点Rbとのずれ」(量)を示し、つまり、「撮影タイミングのずれ」量を示している。
In the captured image Im shown in FIG. 9, the solid line arrow indicates "the deviation between the position Pw of the
また、図5、図6、図7と同様に、図9においても、実際には手先23はワーク40に隠されて撮像されることはないため、撮像画像Imに対する画像解析のみによって、手先23の位置を把握することはできない。
Further, as in FIGS. 5, 6 and 7, in FIG. 9, since the hand 23 is not actually hidden by the
図9の(A)に示す撮像画像Imにおいて、点線で示す円の中心位置(つまり、手先23の位置)と二点鎖線の交差する基準点R(つまり、検出位置Pd)とは一致している。つまり、図9の(A)は、「撮影タイミングのずれ」のない撮像画像Imを示している。 In the captured image Im shown in FIG. 9A, the center position of the circle indicated by the dotted line (that is, the position of the hand 23) coincides with the reference point R (that is, the detection position Pd) where the two-dot chain line intersects. There is. That is, (A) of FIG. 9 shows the captured image Im without "shift in shooting timing".
図9の(A)に示す撮像画像Imにおいて、「ワークの位置ずれ」量は、「画像内での位置ずれ」量に一致している。すなわち、星印(つまり、ワーク40の位置Pw)と点線で示す円の中心位置とのずれ量は、星印と基準点Rとのずれ量に一致している。 In the captured image Im shown in FIG. 9A, the amount of "positional deviation of the work" corresponds to the amount of "positional deviation in the image". That is, the amount of deviation between the star mark (that is, the position Pw of the work 40) and the center position of the circle indicated by the dotted line corresponds to the amount of deviation between the star mark and the reference point R.
つまり、「撮影タイミングのずれ」がない場合、制御装置10は、撮像画像Imに対する画像解析によって、撮像画像Imにおける「画像内での位置ずれ」量を算出でき、算出した「画像内での位置ずれ」量は、「ワークの位置ずれ」量に等しい。 That is, when there is no "difference in shooting timing", the control device 10 can calculate the amount of "positional deviation in the image" in the captured image Im by image analysis with respect to the captured image Im, and the calculated "position in the image". The "shift" amount is equal to the "work position shift" amount.
ここで、前述の通り、「検出時刻Tdにおける、ワーク40の位置Pwと手先23の位置(フィードバック位置Pf)とのずれ」量である位置ずれ量(把持ずれ量)は、撮像画像Imにおける「ワークの位置ずれ」量に対応する。
Here, as described above, the misalignment amount (grasping misalignment amount), which is the amount of "misalignment between the position Pw of the
したがって、「撮影タイミングのずれ」がない場合、制御装置10は、画像解析によって特定した「撮像画像Imにおける『画像内での位置ずれ』量」から、位置ずれ量を算出することができる。 Therefore, when there is no "misalignment of shooting timing", the control device 10 can calculate the amount of misalignment from the "amount of" misalignment in the image "in the captured image Im" specified by image analysis.
図9の(B)に示す撮像画像Imにおいて、点線で示す円の中心位置と二点鎖線の交差する基準点Rとはずれている。つまり、図9の(B)は、「撮影タイミングのずれ」量が「0」でない(言い換えれば、「撮影タイミングのずれ」が発生した)撮像画像Imを示している。 In the captured image Im shown in FIG. 9B, the center position of the circle indicated by the dotted line and the reference point R at which the two-dot chain line intersects are deviated. That is, FIG. 9B shows the captured image Im in which the amount of “shooting timing shift” is not “0” (in other words, “shooting timing shift” has occurred).
図9の(B)に示す撮像画像Imにおいて、「ワークの位置ずれ」量は、「画像内での位置ずれ」量に一致していない。すなわち、星印(つまり、ワーク40の位置Pw)と点線で示す円の中心位置とのずれ量は、星印と基準点Rとのずれ量に一致していない。 In the captured image Im shown in FIG. 9B, the amount of "work position shift" does not match the amount of "position shift in the image". That is, the amount of deviation between the star mark (that is, the position Pw of the work 40) and the center position of the circle indicated by the dotted line does not match the amount of deviation between the star mark and the reference point R.
そのため、撮像画像Imにおける「画像内での位置ずれ」量を画像解析によって算出するだけでは、撮像画像Imにおける「ワークの位置ずれ」量を算出することはできない。そのため、撮像画像Imにおける「ワークの位置ずれ」量に対応する、「位置ずれ量(把持ずれ量)」を特定することもできない。 Therefore, it is not possible to calculate the amount of "work position shift" in the captured image Im only by calculating the amount of "position shift in the image" in the captured image Im. Therefore, it is not possible to specify the "positional deviation amount (grasping deviation amount)" corresponding to the "work position deviation" amount in the captured image Im.
撮像画像Imにおいて成立する、{「画像内での位置ずれ」量は、「ワークの位置ずれ」量と「撮影タイミングのずれ」量とに分解可能である}という関係は、図9の(B)にも示されている。したがって、「撮影タイミングのずれ」が発生した場合、撮像画像Imにおける「ワークの位置ずれ」量を特定するためには、「画像内での位置ずれ」量と「撮影タイミングのずれ」量とを算出する必要がある。つまり、検出時刻Tdにおける手先23の位置と検出位置Pdとがずれる場合、「位置ずれ量」を特定するには、「画像内での位置ずれ」量に対応する第一ずれ量Fdと、「撮影タイミングのずれ」量に対応する第二ずれ量Sdとを算出する必要がある。 The relationship established in the captured image Im, {the amount of "positional deviation in the image" can be decomposed into the amount of "work position deviation" and the amount of "shooting timing deviation"} is shown in FIG. 9 (B). ) Also shown. Therefore, when a "shooting timing shift" occurs, in order to specify the "work position shift" amount in the captured image Im, the "position shift in the image" amount and the "shooting timing shift" amount are set. Need to calculate. That is, when the position of the hand 23 and the detection position Pd at the detection time Td deviate from each other, in order to specify the "positional deviation amount", the first deviation amount Fd corresponding to the "positional deviation amount in the image" and " It is necessary to calculate the second deviation amount Sd corresponding to the "image timing deviation" amount.
図10は、「撮影タイミングのずれ」の、位置ずれ(把持ずれ)への影響を一次元上で説明する図である。図10の(A)および図10の(B)の各々において、実線矢印は、「検出時刻Tdにおける、ワーク40の位置Pwと検出位置Pdとのずれ」(量)(つまり、第一ずれ量Fd)を示し、つまり、撮像画像Imにおける「画像内での位置ずれ」量に対応する。また、点線矢印は、「検出時刻Tdにおける、ワーク40の位置Pwと手先23の位置(フィードバック位置Pf)とのずれ」(量)(つまり、位置ずれ量)を示し、つまり、撮像画像Imにおける「ワークの位置ずれ」量に対応する。さらに、一点鎖線矢印は「検出時刻Tdにおける、手先23の位置と基準点Rbとのずれ」(量)(後述する、第二ずれ量Sd)を示し、つまり、撮像画像Imにおける「撮影タイミングのずれ」量に対応する。
FIG. 10 is a diagram for one-dimensionally explaining the influence of the “shooting timing shift” on the position shift (grasping shift). In each of (A) of FIG. 10 and (B) of FIG. 10, the solid line arrow indicates "the deviation between the position Pw of the
図10の(A)に示すように、「検出時刻Tdにおいて、手先23の位置(フィードバック位置Pf)と検出位置Pdとが一致する」場合、位置ずれ量(把持ずれ量)は、第一ずれ量Fdに一致する。つまり、「撮影タイミングのずれ」がない場合、「ワークの位置ずれ」量は、「画像内での位置ずれ」量に一致する。 As shown in FIG. 10A, when "the position of the hand 23 (feedback position Pf) and the detection position Pd match at the detection time Td", the misalignment amount (grasping misalignment amount) is the first misalignment. Matches the quantity Fd. That is, when there is no "shift in shooting timing", the amount of "shift in position of the work" corresponds to the amount of "shift in position in the image".
したがって、「撮影タイミングのずれ」がない場合、制御装置10は、撮像画像Imにおける「画像内での位置ずれ」量を画像解析によって算出することにより、位置ずれ量(把持ずれ量)に対応する「ワークの位置ずれ」量を特定することができる。言い換えれば、「検出時刻Tdにおいて、手先23の位置と検出位置Pdとが一致する」場合、制御装置10は、第一ずれ量Fdから、位置ずれ量(把持ずれ量)を特定することができる。 Therefore, when there is no "misalignment of shooting timing", the control device 10 corresponds to the amount of misalignment (grasping misalignment) by calculating the amount of "misalignment in the image" in the captured image Im by image analysis. The amount of "work misalignment" can be specified. In other words, when "the position of the hand 23 and the detection position Pd match at the detection time Td", the control device 10 can specify the misalignment amount (grasping misalignment amount) from the first misalignment amount Fd. ..
図10の(B)に示すように、「検出時刻Tdにおいて、手先23の位置(フィードバック位置Pf)と検出位置Pdとが一致しない」場合、位置ずれ量(把持ずれ量)は、第一ずれ量Fdに一致しない。つまり、「撮影タイミングのずれ」がある場合、「ワークの位置ずれ」量は、「画像内での位置ずれ」量に一致しない。 As shown in FIG. 10B, when "the position of the hand 23 (feedback position Pf) and the detection position Pd do not match at the detection time Td", the misalignment amount (grasping misalignment amount) is the first misalignment. Does not match the quantity Fd. That is, when there is a "shift in shooting timing", the amount of "shift in position of the work" does not match the amount of "shift in position in the image".
したがって、「撮影タイミングのずれ」がある場合、制御装置10は、撮像画像Imにおける「画像内での位置ずれ」量を画像解析によって算出するだけでは、位置ずれ量(把持ずれ量)に対応する「ワークの位置ずれ」量を特定できない。言い換えれば、「検出時刻Tdにおいて、手先23の位置と検出位置Pdとが一致しない」場合、制御装置10は、第一ずれ量Fdのみからでは、位置ずれ量(把持ずれ量)を特定することができない。 Therefore, when there is a "misalignment of shooting timing", the control device 10 corresponds to the amount of misalignment (grasping misalignment) simply by calculating the amount of "misalignment in the image" in the captured image Im by image analysis. The amount of "work misalignment" cannot be specified. In other words, when "the position of the hand 23 and the detection position Pd do not match at the detection time Td", the control device 10 specifies the misalignment amount (grasping misalignment amount) only from the first misalignment amount Fd. I can't.
図10の(B)に示すように、「撮影タイミングのずれ」がある場合、点線矢印の大きさを特定するには、実線矢印の大きさに加え、一点鎖線矢印の大きさを算出する必要がある。言い換えれば、検出時刻Tdにおいて、手先23の位置と検出位置Pdとがずれる場合、「ワークの位置ずれ」量を特定するには、「画像内での位置ずれ」量に加え、「撮影タイミングのずれ」量を算出する必要がある。 As shown in FIG. 10B, when there is a "shooting timing shift", it is necessary to calculate the size of the alternate long and short dash arrow in addition to the size of the solid arrow in order to specify the size of the dotted arrow. There is. In other words, when the position of the hand 23 and the detection position Pd deviate from each other at the detection time Td, in order to specify the amount of "work position shift", in addition to the "position shift in the image" amount, the "shooting timing" It is necessary to calculate the amount of "deviation".
したがって、「撮影タイミングのずれ」がある場合、制御装置10は、「画像内での位置ずれ」量に加え、「撮影タイミングのずれ」量を算出することによって、「ワークの位置ずれ」量を精緻に特定する。言い換えれば、制御装置10は、第一ずれ量Fdに加え、第二ずれ量Sdを算出することによって、位置ずれ量(把持ずれ量)を精緻に特定する。そして、制御装置10は、特定した「ワークの位置ずれ」量を考慮して、サーボ制御系20に対する制御を補正することにより、ワーク40の正確な位置制御を実現する。
Therefore, when there is a "shift in shooting timing", the control device 10 calculates the amount of "shift in shooting timing" in addition to the amount of "shift in position in the image" to obtain the amount of "shift in position of the work". Exactly identify. In other words, the control device 10 precisely specifies the position shift amount (grasping shift amount) by calculating the second shift amount Sd in addition to the first shift amount Fd. Then, the control device 10 realizes accurate position control of the
(移動距離を短くした場合の、サーボの位置揺らぎ)
ここで、サーボ制御系20の移動距離(手先23の移動距離)を短くした場合、言い換えれば、サーボ制御系20によるワーク40の移動距離(搬送距離)を短くした場合、サーボ制御系20の位置揺らぎが大きくなることが一般に知られている。
(Servo position fluctuation when the moving distance is shortened)
Here, when the moving distance of the servo control system 20 (moving distance of the hand 23) is shortened, in other words, when the moving distance (carrying distance) of the
図11は、ワーク40の移動距離(搬送距離)を短くする状況を説明する図である。図11に示すように、タクト短縮のための方策として、ワーク40の移動距離(搬送距離)を、つまり、手先23の移動距離を、短くすることが挙げられる。すなわち、図11の(B)に示すワーク40の移動距離は、図11の(A)に示すワーク40の移動距離よりも短い。その結果、ワーク40の移動速度が同じ場合、図11の(B)に例示する作業を実行するのに要する時間は、図11の(A)に例示する作業を実行するのに要する時間よりも短くなる。
FIG. 11 is a diagram illustrating a situation in which the moving distance (transporting distance) of the
図12は、検出位置Pdを「40」とした場合の動作プロファイルの一例を示す図である。具体的には、図12の(A)は、検出位置Pdを「40」とした場合について、各時刻における、「サーボ制御系20の応答遅れ時間Dsを考慮した、サーボ制御系20の目標位置Pt」および「これに対応するサーボ制御系20の目標速度」を示している。また、図12の(B)は、検出位置Pdを「40」とした場合について、各時刻における、「サーボ制御系20の応答遅れ時間Dsを考慮した、サーボ制御系20の目標位置Pt」に対する「サーボ制御系20のフィードバック位置Pf」のずれ量を示している。
FIG. 12 is a diagram showing an example of an operation profile when the detection position Pd is set to “40”. Specifically, (A) of FIG. 12 shows the target position of the
検出位置Pdを「40」とした場合、各時刻における、「サーボ制御系20の応答遅れ時間Dsを考慮した、サーボ制御系20の目標位置Pt」に対する「サーボ制御系20のフィードバック位置Pf」のずれ量は、以下の範囲に収まっている。「-0.2mm(つまり、-200μm)」から「+0.2mm(つまり、+200μm)」の範囲に収まっている。
When the detection position Pd is set to "40", the "feedback position Pf of the
図8の(B)に示した「検出位置Pdを『100』とした場合のずれ量」に比べて、図12の(B)に示した「検出位置Pdを『40』とした場合のずれ量」は大きい。すなわち、図8の(B)に示した「検出位置Pdを『100』とした場合のずれ量」は、「0.005mm」から「+0.005mm」の範囲に収まっていた。これに対して、図12の(B)に示した「検出位置Pdを『40』とした場合のずれ量」は、「-0.2mm」から「+0.2mm」の範囲になっている。 Compared to the "deviation amount when the detection position Pd is" 100 "" shown in FIG. 8 (B), the "deviation when the detection position Pd is" 40 "" shown in FIG. 12 (B). "Amount" is large. That is, the “deviation amount when the detection position Pd is“ 100 ”” shown in FIG. 8 (B) was within the range of “0.005 mm” to “+0.005 mm”. On the other hand, the “deviation amount when the detection position Pd is“ 40 ”” shown in FIG. 12 (B) is in the range of “−0.2 mm” to “+0.2 mm”.
図12の(A)に示すように、手先23の移動距離を短くすると、動作プロファイルが三角波となり、フィードバック位置Pfを「サーボ制御系20の応答遅れ時間Dsを考慮した、サーボ制御系20の目標位置Pt」へ追従させるのは、より困難となる。
As shown in FIG. 12A, when the movement distance of the hand 23 is shortened, the operation profile becomes a triangular wave, and the feedback position Pf is set to "the target of the
(画素分解能の違いによる、「撮影タイミングのずれ」の影響の違い)
図13は、画素分解能の違いによる、「撮影タイミングのずれ」の影響の違いを説明する図である。図13の(A)および図13の(B)の各々において、二点鎖線の交差する点は「撮像画像Im中の、検出位置Pdに対応する基準点Rb(例、撮像画像Imの中心点)」を示している。点線で示す円の中心位置は、「検出時刻Tdにおける、手先23の位置」、つまり、「検出時刻Tdにおける、サーボ制御系20のフィードバック位置Pf」を示している。また、図5等と同様に、図13においても、実際には手先23はワーク40に隠されて撮像されることはない。
(Differences in the effect of "shooting timing shift" due to differences in pixel resolution)
FIG. 13 is a diagram illustrating a difference in the influence of “difference in shooting timing” due to a difference in pixel resolution. In each of FIG. 13A and FIG. 13B, the intersecting point of the alternate long and short dash line is "a reference point Rb corresponding to the detection position Pd in the captured image Im (eg, the center point of the captured image Im). ) ”Is shown. The center position of the circle shown by the dotted line indicates "the position of the hand 23 at the detection time Td", that is, "the feedback position Pf of the
図13に示すように、撮像画像Imに撮像されるワーク40の画像を拡大し、言い換えれば、ワーク40を拡大した撮像画像Imを生成し、画素分解能を上げていくと、「サーボの位置揺らぎ」の影響が大きくなる。「サーボの位置揺らぎ」は、撮像画像Imにおいて、「撮影タイミングのずれ」量として現れる。
As shown in FIG. 13, when the image of the
具体的には、画素分解能が「サーボの位置揺らぎ」量(つまり、撮像画像Imにおける「撮影タイミングのずれ」量)より大きい場合、「サーボの位置揺らぎ」量の「ワークの位置ずれ」量(つまり、位置ずれ量(把持ずれ量))への影響は小さい。例えば、要求精度が「100μm」、画素分解能が「10μm」、「サーボの位置揺らぎ」量が、画素分解能の「10μm」よりも小さな「±5μm」である場合、「サーボの位置揺らぎ」量の「ワークの位置ずれ」量への影響は、無視することができる。 Specifically, when the pixel resolution is larger than the "servo position fluctuation" amount (that is, the "shooting timing deviation" amount in the captured image Im), the "work position deviation" amount (work position deviation) of the "servo position fluctuation" amount ( That is, the influence on the misalignment amount (grasping misalignment amount) is small. For example, when the required accuracy is "100 μm", the pixel resolution is "10 μm", and the amount of "servo position fluctuation" is "± 5 μm" which is smaller than the pixel resolution of "10 μm", the amount of "servo position fluctuation" is The effect on the amount of "work misalignment" can be ignored.
これに対して、画素分解能が「サーボの位置揺らぎ」量以下の場合、「サーボの位置揺らぎ」量の「ワークの位置ずれ」量(つまり、位置ずれ量(把持ずれ量))への影響は大きい。例えば、要求精度が「10μm」、画素分解能が「1μm」、「サーボの位置揺らぎ」量が、画素分解能の「1μm」以上の「±5μm」である場合、「サーボの位置揺らぎ」量の「ワークの位置ずれ」量への影響は、無視することができない。 On the other hand, when the pixel resolution is equal to or less than the "servo position fluctuation" amount, the effect of the "servo position fluctuation" amount on the "work position deviation" amount (that is, the position deviation amount (grasping deviation amount)) is big. For example, when the required accuracy is "10 μm", the pixel resolution is "1 μm", and the amount of "servo position fluctuation" is "± 5 μm" which is equal to or greater than the pixel resolution of "1 μm", the "servo position fluctuation" amount is "± 5 μm". The effect on the amount of "work misalignment" cannot be ignored.
すなわち、「サーボの位置揺らぎ」量が変わらない場合、「サーボの位置揺らぎ」量の「ワークの位置ずれ」量への影響は、画素分解能が「サーボの位置揺らぎ」量より大きい場合は無視でき、画素分解能が「サーボの位置揺らぎ」量以下の場合は無視できない。 That is, if the amount of "servo position fluctuation" does not change, the effect of the "servo position fluctuation" amount on the "work position deviation" amount can be ignored if the pixel resolution is larger than the "servo position fluctuation" amount. , When the pixel resolution is less than or equal to the amount of "servo position fluctuation", it cannot be ignored.
画素分解能が「サーボの位置揺らぎ」量(つまり、撮像画像Imにおける「撮影タイミングのずれ」量)以下の場合、手先23を移動させる際のわずかな「サーボの位置揺らぎ」が原因となって、「ワークの位置ずれ」量を精緻に特定することができなくなる。その結果、「『ワークの位置ずれ』量に対応する位置ずれ量(把持ずれ量)を考慮して、ワーク40を所望の位置へと高精度に移動する」ことができなくなる。つまり、画素分解能を上げていくと、各時刻における、「サーボ制御系20のフィードバック位置Pf」と「サーボ制御系20の応答遅れ時間Dsを考慮した、サーボ制御系20の目標位置Pt」とのずれが、無視できなくなってくる。
When the pixel resolution is less than or equal to the "servo position fluctuation" amount (that is, the "shooting timing shift" amount in the captured image Im), a slight "servo position fluctuation" when moving the hand 23 is the cause. It becomes impossible to precisely specify the amount of "work misalignment". As a result, it becomes impossible to "move the
(「サーボの位置揺らぎ」を考慮して特定する「ワークの位置ずれ」)
図14は、検出時刻Tdにおける、「サーボ制御系20のフィードバック位置Pf」と、「サーボ制御系20の応答遅れ時間Dsを考慮した、サーボ制御系20の目標位置Pt」とのずれを説明する図である。具体的には、図14には、図8の(B)と、検出時刻Td付近における、図8の(B)の拡大図とが示されている。拡大図において、検出時刻Tdにおける、「サーボ制御系20のフィードバック位置Pf」と、「サーボ制御系20の応答遅れ時間Dsを考慮した、サーボ制御系20の目標位置Pt」とのずれ(量)は、一点鎖線矢印で示されている。
("Work position shift" specified in consideration of "servo position fluctuation")
FIG. 14 explains the deviation between the “feedback position Pf of the
これまで説明してきたように、「撮影タイミングのずれ」がある場合、「ワークの位置ずれ」量を精緻に特定するためには、撮像画像Imにおける「画像内での位置ずれ」量に加え、撮像画像Imにおける「撮影タイミングのずれ」量を算出する必要がある。 As described above, when there is a "misalignment of shooting timing", in order to precisely specify the amount of "misalignment of the work", in addition to the amount of "misalignment in the image" in the captured image Im, It is necessary to calculate the amount of "shooting timing shift" in the captured image Im.
そして、前述の通り、「撮影タイミングのずれ」量とは、撮像画像Imにおける、「手先23の位置(つまり、サーボ制御系20のフィードバック位置Pf)」と、「検出位置Pdに対応する、基準点Rb(例、撮像画像Imの中心点)」とのずれ量である。また、検出時刻Tdにおいて、検出位置Pdと、「サーボ制御系20の応答遅れ時間Dsを考慮した、サーボ制御系20の目標位置Pt」とは一致する。
As described above, the amount of "shooting timing shift" is the "position of the hand 23 (that is, the feedback position Pf of the servo control system 20)" and the "reference corresponding to the detection position Pd" in the captured image Im. It is the amount of deviation from the point Rb (eg, the center point of the captured image Im). Further, at the detection time Td, the detection position Pd and the "target position Pt of the
したがって、「撮影タイミングのずれ」量は、検出時刻Tdにおける、「手先23の位置(つまり、サーボ制御系20のフィードバック位置Pf)」と、「サーボ制御系20の応答遅れ時間Dsを考慮した、サーボ制御系20の目標位置Pt」とのずれに対応する。
Therefore, the amount of "shift in shooting timing" takes into consideration the "position of the hand 23 (that is, the feedback position Pf of the servo control system 20)" and the "response delay time Ds of the
そこで、制御装置10(特に、図1の第二ずれ量算出部1190)は、「撮影タイミングのずれ」量として、検出時刻Tdにおける、「手先23の位置」と「応答遅れ時間Dsを考慮した、サーボ制御系20の目標位置Pt」とのずれを算出する。すなわち、第二ずれ量算出部1190は、「撮影タイミングのずれ」量として、検出時刻Tdにおける、「サーボ制御系20のフィードバック位置Pf」と「応答遅れ時間Dsを考慮した、サーボ制御系20の目標位置Pt」とのずれ量を算出する。検出時刻Tdにおける、「サーボ制御系20のフィードバック位置Pf」と「応答遅れ時間Dsを考慮した、サーボ制御系20の目標位置Pt」とのずれ量は、「第二ずれ量Sd」とも称される。
Therefore, the control device 10 (particularly, the second deviation
具体的には、第二ずれ量算出部1190は、図14の拡大図において一点鎖線矢印で示した「第二ずれ量Sd」を算出する。
Specifically, the second deviation
図9から図14を用いて説明した内容を整理すれば以下の通りである。すなわち、制御装置10(特に、図1の第二ずれ量算出部1190)は、撮像画像Imにおける「撮影タイミングのずれ」量に対応する第二ずれ量Sdを算出する。具体的には、第二ずれ量算出部1190は、第二ずれ量Sdとして、「検出時刻Tdにおける、『サーボ制御系20の応答遅れ時間Dsを考慮した、サーボ制御系20の目標位置Pt』と、『サーボ制御系20のフィードバック位置Pf』とのずれ」量を算出する。
The contents described with reference to FIGS. 9 to 14 can be summarized as follows. That is, the control device 10 (particularly, the second shift
また、制御装置10(特に、図1の第一ずれ量算出部1170)は、撮像画像Imに対する画像解析によって、「撮像画像Imにおける、ワーク40の位置Pwと基準点Rbとのずれ量」である「画像内での位置ずれ」量を算出する。そして、第一ずれ量算出部1170は、「画像内での位置ずれ」量に対応する第一ずれ量Fdを特定する。
Further, the control device 10 (particularly, the first deviation
制御装置10は、{「画像内での位置ずれ」量=「ワークの位置ずれ」量+「撮影タイミングのずれ」量}との関係式に基づいて、「撮影タイミングのずれ」量と「画像内での位置ずれ」量とから、「ワークの位置ずれ」量を算出する。つまり、制御装置10は、第二ずれ量Sdと第一ずれ量Fdとから、位置ずれ量(把持ずれ量)を算出する。 The control device 10 has a “shooting timing shift” amount and an “image” based on the relational expression of {“position shift in the image” = “work position shift” amount + “shooting timing shift” amount}. The amount of "work misalignment" is calculated from the amount of "misalignment within". That is, the control device 10 calculates the position deviation amount (grasping deviation amount) from the second deviation amount Sd and the first deviation amount Fd.
§2.構成例
これまでに概要を説明してきた制御装置10について、次に、図1を用いてその詳細を説明していく。
§2. Configuration Example The control device 10 whose outline has been described so far will be described in detail with reference to FIG. 1.
図1は、制御装置10の構成例を示す図である。制御装置10は、機能ブロックとして、例えば、目標軌道Ttを取得する目標軌道取得部1110と、目標軌道Ttから時刻ごとの目標位置Ptを生成する位置指令生成部1120と、補正後目標位置aPtを算出する位置指令補正部1130と、を備えている。また、制御装置10は、機能ブロックとして、例えば、第一ずれ量Fdを算出する第一ずれ量算出部1170と、第二ずれ量Sdを算出するフィードバック位置算出部1180および第二ずれ量算出部1190とを備えている。さらに、制御装置10は、機能ブロックとして、例えば、サーボ制御系20の応答遅れ時間Dsを算出する応答遅れ時間算出部1150と、検出指示時刻aTdを決定する検出時刻決定部1160とを備えている。加えて、制御装置10は、機能ブロックとして、例えば、補正後目標位置aPtから指令値Cmを生成する指令値生成部1140と、サーボ制御系20等との通信を実行する通信部1200とを備えている。
FIG. 1 is a diagram showing a configuration example of the control device 10. As functional blocks, the control device 10 includes, for example, a target
制御装置10は、上述の各機能ブロックに加えて、例えば、以下の構成(機能ブロック)を備えてもよい。すなわち、制御装置10は、時刻ごとのサーボ制御系20の実位置(フィードバック位置Pf)を、時刻ごとのサーボ制御系20の目標位置Pt(特に、サーボ制御系20の応答遅れ時間Dsを考慮した目標位置Pt)に一致させるサーボ制御部等を備えてもよい。記載の簡潔性を担保するため、本実施の形態に直接関係のない制御装置10の構成は、説明およびブロック図から省略している。ただし、実施の実情に則して、制御装置10は、これらの省略された構成を備えてもよい。
In addition to each of the above-mentioned functional blocks, the control device 10 may have, for example, the following configuration (functional block). That is, the control device 10 considers the actual position (feedback position Pf) of the
制御装置10の備える上述の機能ブロックは、例えば、CPU(central processing unit)等が、ROM(read only memory)、NVRAM(non-Volatile random access memory)等で実現された記憶装置(記憶部1300)に記憶されているプログラムを不図示のRAM(random access memory)等に読み出して実行することで実現できる。以下に先ず、記憶部以外の機能ブロックについて、その詳細を説明する。 The above-mentioned functional block included in the control device 10 is, for example, a storage device (storage unit 1300) in which a CPU (central processing unit) or the like is realized by a ROM (read only memory), an NVRAM (non-Volatile random access memory), or the like. It can be realized by reading the program stored in the memory into a RAM (random access memory) (not shown) or the like and executing the program. First, the details of the functional blocks other than the storage unit will be described below.
(記憶部以外の機能ブロックについて)
目標軌道取得部1110は、外部(例えばユーザ)から目標軌道データ(目標軌道Tt)を受け付け、受け付けた目標軌道Ttを、位置指令生成部1120に出力する。
(About functional blocks other than the storage unit)
The target
位置指令生成部1120は、目標軌道Ttから、「制御周期Ccごとの目標位置Pt」を生成し、生成した「制御周期Ccごとの目標位置Pt」を位置指令補正部1130に出力する。
The position
位置指令補正部1130は、位置指令生成部1120から「制御周期Ccごとの目標位置Pt」を取得し、第一ずれ量算出部1170から第一ずれ量Fdを取得し、第二ずれ量算出部1190から第二ずれ量Sdを取得する。そして、位置指令補正部1130は、「制御周期Ccごとの目標位置Pt」を第一ずれ量Fdおよび第二ずれ量Sdによって補正した「制御周期Ccごとの補正後目標位置aPt」を生成する。位置指令補正部1130は、生成した「制御周期Ccごとの補正後目標位置aPt」を指令値生成部1140へと出力する。また、位置指令補正部1130は、「制御周期Ccごとの目標位置Pt」を、検出時刻決定部1160および第二ずれ量算出部1190へと出力する。
The position
指令値生成部1140は、位置指令補正部1130から「制御周期Ccごとの補正後目標位置aPt」を取得し、応答遅れ時間算出部1150から「サーボ制御系20の応答遅れ時間Ds」を取得する。指令値生成部1140は、「制御周期Ccごとの補正後目標位置aPt」から、「サーボ制御系20の応答遅れ時間Ds」を考慮して、「サーボ制御系20に対する制御周期Ccごとの指令値Cm」を生成する。指令値生成部1140は、生成した「サーボ制御系20に対する制御周期Ccごとの指令値Cm」を、通信部1200へと、特に指令部1210へと、出力する。
The command
例えば、位置指令補正部1130から取得した「制御周期Ccごとの補正後目標位置aPt」において、時刻T(n)における補正後目標位置aPt(n)がP(n)であると、指令値生成部1140は、以下の指令値Cmを生成する。すなわち、指令値生成部1140は、「時刻T(n)から『サーボ制御系20の応答遅れ時間Ds』を遡った時刻」における補正後目標位置aPt(n)をP(n)とする指令値Cmを生成する。
For example, in the "corrected target position aPt for each control cycle Cc" acquired from the position
ここで、制御装置10が複数のサーボ制御系20を制御する場合、指令値生成部1140は、複数のサーボ制御系20の制御結果(制御量)を同期させるために、以下の処理を実行する。すなわち、複数のサーボ制御系20の各々について、複数のサーボドライバ21の各々が指令値Cmを受信してから、対応するサーボモータ22が応答するまでの時間(応答遅れ時間Ds)は、複数のサーボ制御系20の各々で異なっている場合がある。そこで、指令値生成部1140は、複数のサーボ制御系20の各々に対する指令値Cmを、複数のサーボ制御系20の各々の応答遅れ時間Dsを考慮して、生成する。
Here, when the control device 10 controls a plurality of
具体的には、指令値生成部1140は、「制御周期Ccごとの補正後目標位置aPt」から、「サーボ制御系20(A)の応答遅れ時間Ds(A)」を考慮して、サーボ制御系20(A)に対する制御周期Ccごとの指令値Cm(A)を生成する。指令値生成部1140は、「制御周期Ccごとの補正後目標位置aPt」から、「サーボ制御系20(B)の応答遅れ時間Ds(B)」を考慮して、サーボ制御系20(B)に対する制御周期Ccごとの指令値Cm(B)を生成する。指令値生成部1140は、「制御周期Ccごとの補正後目標位置aPt」から、「サーボ制御系20(C)の応答遅れ時間Ds(C)」を考慮して、サーボ制御系20(C)に対する制御周期Ccごとの指令値Cm(C)を生成する。指令値生成部1140は、「制御周期Ccごとの補正後目標位置aPt」から、「サーボ制御系20(D)の応答遅れ時間Ds(D)」を考慮して、サーボ制御系20(D)に対する制御周期Ccごとの指令値Cm(D)を生成する。
Specifically, the command
複数のサーボ制御系20の各々で異なる応答遅れ時間Dsを考慮して、複数のサーボ制御系20の各々に対する指令値Cmを生成することによって、指令値生成部1140は、複数のサーボ制御系20の各々の制御結果を同期させることができる。
By generating command values Cm for each of the plurality of
応答遅れ時間算出部1150は、サーボ制御系20(特に、サーボドライバ21)の制御特性を示すサーボパラメータを取得し、取得したサーボパラメータから、「サーボ制御系20の応答遅れ時間Ds」を算出する。応答遅れ時間算出部1150は、算出した「サーボ制御系20の応答遅れ時間Ds」を、指令値生成部1140、検出時刻決定部1160、および、第二ずれ量算出部1190へと出力する。
The response delay
応答遅れ時間算出部1150は、サーボ制御系20の制御特性を示すサーボパラメータとして、サーボドライバ21の位置ループゲインを用いて、サーボ制御系20の応答遅れ時間Dsを算出してもよい。例えば、応答遅れ時間算出部1150は、サーボ制御系20(A)の応答遅れ時間Ds(A)を、サーボドライバ21(A)のサーボパラメータの1つである位置ループゲインの逆数としてもよい。応答遅れ時間算出部1150は、サーボ制御系20(B)の応答遅れ時間Ds(B)を、サーボドライバ21(B)のサーボパラメータの1つである位置ループゲインの逆数としてもよい。応答遅れ時間算出部1150は、サーボ制御系20(C)の応答遅れ時間Ds(C)を、サーボドライバ21(C)のサーボパラメータの1つである位置ループゲインの逆数としてもよい。応答遅れ時間算出部1150は、サーボ制御系20(D)の応答遅れ時間Ds(D)を、サーボドライバ21(D)のサーボパラメータの1つである位置ループゲインの逆数としてもよい。
The response delay
検出時刻決定部1160は、位置指令補正部1130から「制御周期Ccごとの目標位置Pt」を取得し、応答遅れ時間算出部1150から「サーボ制御系20の応答遅れ時間Ds」を取得する。また、検出時刻決定部1160は、記憶部1300を参照して、検出位置テーブル1310から「検出位置Pdに係る情報」を取得し、検出器応答遅れ時間テーブル1320から「検出系30の応答遅れ時間Dd」を取得する。検出時刻決定部1160は、「制御周期Ccごとの目標位置Pt」、「サーボ制御系20の応答遅れ時間Ds」、「検出位置Pdに係る情報」、および、「検出系30の応答遅れ時間Dd」から、検出時刻Tdおよび検出指示時刻aTdを算出する。そして、検出時刻決定部1160は、算出した検出指示時刻aTdを、通信部1200へと、特に指令部1210へと、出力する。
The detection
具体的には、検出時刻決定部1160は、先ず、「制御周期Ccごとの目標位置Pt」、「サーボ制御系20の応答遅れ時間Ds」、および、「検出位置Pdに係る情報」から、検出時刻Tdを算出する。すなわち、検出時刻決定部1160は、「サーボ制御系20の応答遅れ時間Ds」を考慮して、目標位置Ptと検出位置Pdとが一致する時刻として算出した時刻を、検出時刻Tdとする。
Specifically, the detection
検出時刻決定部1160は、次に、検出時刻Tdと「検出系30の応答遅れ時間Dd」とから、検出指示時刻aTdを算出する。すなわち、検出時刻決定部1160は、検出時刻Tdを「検出系30の応答遅れ時間Dd」によって補正した時刻を、検出指示時刻aTdとする。
Next, the detection
例えば、「サーボ制御系20の応答遅れ時間Ds」が存在しない場合に、目標位置Ptと検出位置Pdとが一致する時刻が時刻T0であったとすると、検出時刻決定部1160は、次のように、検出時刻Tdおよび検出指示時刻aTdを算出する。すなわち、検出時刻決定部1160は、「目標位置Ptと検出位置Pdとが一致する」時刻T0から、「サーボ制御系20の応答遅れ時間Ds」を経た時刻を、検出時刻Tdとする。また、検出時刻決定部1160は、検出時刻Tdから「検出系30の応答遅れ時間Dd」を遡った時刻を、検出指示時刻aTdとする。
For example, when the "response delay time Ds of the
第一ずれ量算出部1170は、通信部1200から、特に制御量取得部1220から、撮像画像Imを取得する。第一ずれ量算出部1170は、撮像画像Imに対して画像解析を実行して、撮像画像Imにおける「画像内での位置ずれ」量を算出し、算出した「画像内での位置ずれ」量から、第一ずれ量Fdを特定する。第一ずれ量算出部1170は、特定した第一ずれ量Fdを、位置指令補正部1130へと出力する。
The first deviation
具体的には、第一ずれ量算出部1170は、撮像画像Imに対して画像解析を実行して、撮像画像Imにおけるワーク40の位置Pw(例、ワーク40の中心位置)と基準点Rbとのずれ量である「画像内での位置ずれ」量を算出する。そして、第一ずれ量算出部1170は、算出した「画像内での位置ずれ」量から、「画像内での位置ずれ」量に対応する、「検出時刻Tdにおける、ワーク40の位置Pwと検出位置Pdとのずれ量」である第一ずれ量Fdを特定する。
Specifically, the first deviation
ただし、第一ずれ量算出部1170は、通信部1200(特に、制御量取得部1220)から、撮像画像Imに代えて、撮像画像Imの画像解析結果を取得してもよく、特に、撮像画像Imにおける「画像内での位置ずれ」量を取得してもよい。第一ずれ量算出部1170は、撮像画像Imにおける「画像内での位置ずれ」量から第一ずれ量Fdを特定できればよく、撮像画像Imから「画像内での位置ずれ」量を算出するのは、第一ずれ量算出部1170であっても、検出系30であってもよい。
However, the first deviation
すなわち、制御装置10(特に、制御量取得部1220)は、検出系30(例えば、撮像制御装置32)が撮像画像Imに対する画像解析によって算出した「画像内での位置ずれ」量を受信してもよい。そして、第一ずれ量算出部1170は、撮像制御装置32が受信した「画像内での位置ずれ」量から、第一ずれ量Fdを算出してもよい。
That is, the control device 10 (particularly, the control amount acquisition unit 1220) receives the amount of "positional deviation in the image" calculated by the detection system 30 (for example, the image pickup control device 32) by image analysis on the image captured image Im. May be good. Then, the first deviation
フィードバック位置算出部1180は、通信部1200から、特に制御量取得部1220から、「制御周期Ccごとの、サーボ制御系20のフィードバック位置Pf」を取得する。フィードバック位置算出部1180は、「制御周期Ccごとの、サーボ制御系20のフィードバック位置Pf」から、補間計算によって、「検出時刻Tdにおけるフィードバック位置Pf」を算出する。フィードバック位置算出部1180は、算出した「検出時刻Tdにおけるフィードバック位置Pf」を、第二ずれ量算出部1190へと出力する。
The feedback
例えば、nを「0以上の整数」として、検出時刻Tdが「n」回目の制御周期Cc(n)と「n+1」回目の制御周期Cc(n+1)との間の時刻である場合、フィードバック位置算出部1180は、以下の処理を実行する。すなわち、フィードバック位置算出部1180は、先ず、「制御周期Cc(n)におけるフィードバック位置Pf(n)」と、「制御周期Cc(n+1)におけるフィードバック位置Pf(n+1)」とを取得する。そして、フィードバック位置算出部1180は、フィードバック位置Pf(n)とフィードバック位置Pf(n+1)とから、補間計算によって、「検出時刻Tdにおけるフィードバック位置Pf」を算出する。例えば、フィードバック位置算出部1180は、フィードバック位置Pf(n)とフィードバック位置Pf(n+1)とを結ぶ直線(または曲線)と、検出時刻Tdを示す直線との交点から、「検出時刻Tdにおけるフィードバック位置Pf」を算出する。
For example, when n is an "integer of 0 or more" and the detection time Td is the time between the "n" th control cycle Cc (n) and the "n + 1" th control cycle Cc (n + 1), the feedback position. The
すなわち、フィードバック位置算出部1180は、制御周期Ccごとに取得した、複数の「制御周期Ccごとの、サーボ制御系20のフィードバック位置Pf」から、補間計算によって、「検出時刻Tdにおけるフィードバック位置Pf」を算出してもよい。
That is, the feedback
第二ずれ量算出部1190は、位置指令補正部1130から「制御周期Ccごとの目標位置Pt」を取得し、応答遅れ時間算出部1150から「サーボ制御系20の応答遅れ時間Ds」を取得する。また、第二ずれ量算出部1190は、フィードバック位置算出部1180から「検出時刻Tdにおけるフィードバック位置Pf」を取得する。
The second deviation
第二ずれ量算出部1190は、「制御周期Ccごとの目標位置Pt」と、「サーボ制御系20の応答遅れ時間Ds」と、「検出時刻Tdにおけるフィードバック位置Pf」とから、第二ずれ量Sdを算出する。第二ずれ量算出部1190は、算出した第二ずれ量Sdを、位置指令補正部1130へと出力する。
The second deviation
第二ずれ量算出部1190は、先ず、「制御周期Ccごとの目標位置Pt」と、「サーボ制御系20の応答遅れ時間Ds」とから、「検出時刻Tdにおける目標位置Pt」を算出する。第二ずれ量算出部1190は、次に、「検出時刻Tdにおける目標位置Pt」と「検出時刻Tdにおけるフィードバック位置Pf」とから、第二ずれ量Sdを算出する。
The second deviation
通信部1200は、制御周期Ccごとに周期的に、スレーブとしてのサーボ制御系20および検出系30の各々と通信を実行し、指令部1210および制御量取得部1220を含んでいる。
The
指令部1210は、指令値生成部1140から「サーボ制御系20に対する制御周期Ccごとの指令値Cm」を取得し、検出時刻決定部1160から検出指示時刻aTdを取得する。指令部1210は、スレーブであるサーボ制御系20および検出系30へと、指令値Cmおよび検出指示時刻aTdを含む制御信号Cs(制御指示)を、制御周期Ccごとに出力する(送信する)。
The
制御量取得部1220は、スレーブであるサーボ制御系20および検出系30から、これらのスレーブが出力する制御結果(例、制御量および検出結果)を示すデータを、制御周期Ccごとに取得する(受信する)。すなわち、制御量取得部1220は、サーボ制御系20から「制御周期Ccごとの、サーボ制御系20のフィードバック位置Pf」を示す情報を取得し、検出系30から撮像画像Imを取得する。制御量取得部1220は、「制御周期Ccごとの、サーボ制御系20のフィードバック位置Pf」を示す情報をフィードバック位置算出部1180へと送信し、撮像画像Imを第一ずれ量算出部1170へと出力する。
The control
「制御周期Ccごとの、サーボ制御系20のフィードバック位置Pf」を示す情報は、「制御周期Ccごとの、サーボ制御系20のフィードバック位置Pf」に加えて、フィードバック位置Pfが検出された時刻である実測時刻Tmを示す情報を含んでいてもよい。その場合、フィードバック位置算出部1180は、例えば、「制御周期Cc(n)におけるフィードバック位置Pf(n)」と「フィードバック位置Pf(n)が検出された実測時刻Tm(n)」とを取得する。また、フィードバック位置算出部1180は、「制御周期Cc(n+1)におけるフィードバック位置Pf(n+1)」と「フィードバック位置Pf(n+1)が検出された実測時刻Tm(n+1)」とを取得する。そして、フィードバック位置算出部1180は、実測時刻Tm(n)におけるフィードバック位置Pf(n)と、実測時刻Tm(n+1)におけるフィードバック位置Pf(n+1)とから、「検出時刻Tdにおけるフィードバック位置Pf」を算出する。
The information indicating "feedback position Pf of the
また、前述の通り、制御量取得部1220は、検出系30から、撮像画像Imの代わりに、検出系30(例えば、撮像制御装置32)が撮像画像Imに対する画像解析によって算出した「画像内での位置ずれ」量を取得してもよい。その場合、制御量取得部1220は、取得した「画像内での位置ずれ」量を、第一ずれ量算出部1170へと出力する。
Further, as described above, the control
(記憶部について)
記憶部1300は、制御装置10が使用する各種データを格納する記憶装置である。なお、記憶部1300は、制御装置10が実行する(1)制御プログラム、(2)OSプログラム、(3)制御装置10が有する各種機能を実行するためのアプリケーションプログラム、および、(4)該アプリケーションプログラムを実行するときに読み出す各種データを非一時的に記憶してもよい。上記の(1)~(4)のデータは、例えば、ROM(read only memory)、フラッシュメモリ、EPROM(Erasable Programmable ROM)、EEPROM(登録商標)(Electrically EPROM)、HDD(Hard Disc Drive)等の不揮発性記憶装置に記憶される。制御装置10は、図示しない一時記憶部を備えていてもよい。一時記憶部は、制御装置10が実行する各種処理の過程で、演算に使用するデータおよび演算結果等を一時的に記憶するいわゆるワーキングメモリであり、RAM(Random Access Memory)等の揮発性記憶装置で構成される。どのデータをどの記憶装置に記憶するのかについては、制御装置10の使用目的、利便性、コスト、または、物理的な制約等から適宜決定される。記憶部1300はさらに、検出位置テーブル1310、および、検出器応答遅れ時間テーブル1320を格納している。
(About the memory)
The storage unit 1300 is a storage device that stores various data used by the control device 10. The storage unit 1300 has (1) a control program executed by the control device 10, (2) an OS program, (3) an application program for executing various functions of the control device 10, and (4) the application. Various data to be read when the program is executed may be stored non-temporarily. The data of (1) to (4) above may be, for example, ROM (read only memory), flash memory, EPROM (Erasable Programmable ROM), EEPROM (registered trademark) (Electrically EPROM), HDD (Hard Disc Drive), or the like. Stored in a non-volatile storage device. The control device 10 may include a temporary storage unit (not shown). The temporary storage unit is a so-called working memory that temporarily stores data used for calculation, calculation results, etc. in the process of various processes executed by the control device 10, and is a volatile storage device such as RAM (Random Access Memory). Consists of. Which data is stored in which storage device is appropriately determined from the purpose of use, convenience, cost, physical restrictions, and the like of the control device 10. The storage unit 1300 further stores a detection position table 1310 and a detector response delay time table 1320.
検出位置テーブル1310には、「検出位置Pdに係る情報」が、具体的には、「検出位置Pdを特定する情報」が格納されている。 The detection position table 1310 stores "information related to the detection position Pd", specifically, "information for specifying the detection position Pd".
検出器応答遅れ時間テーブル1320には、「検出系30の応答遅れ時間Dd」が格納されている。 The "response delay time Dd of the detection system 30" is stored in the detector response delay time table 1320.
記憶部1300は、検出位置テーブル1310、および、検出器応答遅れ時間テーブル1320に加えて、サーボ制御系20(特に、サーボドライバ21)の制御特性を示すサーボパラメータを格納していてもよい。特に、記憶部1300は、複数のサーボ制御系20(特に、サーボドライバ21)の各々の制御特性を示すサーボパラメータを格納していてもよい。 In addition to the detection position table 1310 and the detector response delay time table 1320, the storage unit 1300 may store servo parameters indicating the control characteristics of the servo control system 20 (particularly, the servo driver 21). In particular, the storage unit 1300 may store servo parameters indicating the control characteristics of each of the plurality of servo control systems 20 (particularly, the servo driver 21).
(制御装置についての整理)
これまでに図1から図14を用いて説明してきた内容は、以下のように整理することができる。すなわち、制御装置10は、目標軌道Ttから演算した指令値Cmをサーボ制御系20に出力する制御装置である。制御装置10は、第一ずれ量算出部1170と、第二ずれ量算出部1190と、指令値生成部1140とを備えている。
(Arrangement of control devices)
The contents described so far using FIGS. 1 to 14 can be organized as follows. That is, the control device 10 is a control device that outputs the command value Cm calculated from the target trajectory Tt to the
第一ずれ量算出部1170は、検出時刻Tdにおける、撮像装置33(検出装置)の検出結果(つまり、撮像画像Im)から、サーボ制御系20によって位置を制御されるワーク40の位置Pwの、検出位置Pdからのずれ量である第一ずれ量Fdを算出する。ここで、検出時刻Tdとは、サーボ制御系20の応答遅れ時間Dsを考慮して目標軌道Ttから算出される目標位置Ptが、「撮像装置33が検出対象を検出する位置」である検出位置Pdに一致する時刻である。
The first deviation
第二ずれ量算出部1190は、「『検出時刻Tdにおける、サーボ制御系20のフィードバック位置Pf』と『検出時刻Tdにおける、サーボ制御系20の応答遅れ時間Dsを考慮して算出された目標位置Pt』とのずれ量」である第二ずれ量Sdを算出する。
The second deviation
指令値生成部1140は、「目標軌道Ttから算出される目標位置Pt」を、第一ずれ量Fdと第二ずれ量Sdとによって補正した補正後目標位置aPtと、サーボ制御系20の応答遅れ時間Dsとから、指令値Cmを生成する。
The command
前記の構成によれば、制御装置10は、「目標軌道Ttから算出される目標位置Pt」を第一ずれ量Fdと第二ずれ量Sdとによって補正した補正後目標位置aPtと、サーボ制御系20の応答遅れ時間Dsとによって、指令値Cmを生成する。 According to the above configuration, the control device 10 has the corrected target position aPt obtained by correcting the “target position Pt calculated from the target trajectory Tt” by the first deviation amount Fd and the second deviation amount Sd, and the servo control system. The command value Cm is generated by the response delay time Ds of 20.
ここで、検出時刻Tdにおいて、フィードバック位置Pfと「応答遅れ時間Dsを考慮した目標位置Pt」とが完全に一致する場合、検出時刻Tdにおいて、フィードバック位置Pfは、検出位置Pdに完全に一致することになる。そのため、検出時刻Tdにおいて、フィードバック位置Pfと「応答遅れ時間Dsを考慮した目標位置Pt」とが完全に一致する場合、ワーク40の位置Pwの、フィードバック位置Pfからのずれ量(つまり、位置ずれ量)は、第一ずれ量Fdのみから特定できる。つまり、検出時刻Tdにおいて、フィードバック位置Pfと「応答遅れ時間Dsを考慮した目標位置Pt」とが完全に一致する場合には、位置ずれ量(把持ずれ量)は、第一ずれ量Fdのみから特定することができる。
Here, when the feedback position Pf and the "target position Pt considering the response delay time Ds" completely match at the detection time Td, the feedback position Pf completely matches the detection position Pd at the detection time Td. It will be. Therefore, when the feedback position Pf and the "target position Pt considering the response delay time Ds" completely match at the detection time Td, the amount of deviation of the position Pw of the
しかしながら、実際には、検出時刻Tdにおいて、フィードバック位置Pfと「応答遅れ時間Dsを考慮した目標位置Pt」とは、完全には一致しないことがある。 However, in reality, at the detection time Td, the feedback position Pf and the "target position Pt considering the response delay time Ds" may not completely match.
そこで、制御装置10は、第一ずれ量Fdに加えて、第二ずれ量Sdをも考慮することによって、検出時刻Tdにおける「ワーク40の位置Pwの、フィードバック位置Pfからのずれ量」(つまり、位置ずれ量)を高精度に特定する。そして、制御装置10は、特定した「ワーク40の位置Pwの、フィードバック位置Pfからのずれ量」によって「目標軌道Ttから算出される目標位置Pt」を補正した補正後目標位置aPtと、サーボ制御系20の応答遅れ時間Dsとから、指令値Cmを生成する。
Therefore, the control device 10 considers the second deviation amount Sd in addition to the first deviation amount Fd, so that the "deviation amount of the position Pw of the
したがって、制御装置10は、サーボ制御系20のフィードバック位置Pfと、サーボ制御系20によって位置を制御されるワーク40の位置Pwとのずれを考慮することにより、ワーク40の位置制御を高精度化することができるとの効果を奏する。
Therefore, the control device 10 improves the accuracy of the position control of the
また、制御装置10は、「応答遅れ時間Dsを考慮して算出された目標位置Ptが、検出位置Pdに一致する」検出時刻Tdにおける検出結果である撮像画像Imから、第一ずれ量Fdを算出する。そのため、制御装置10は、第一ずれ量Fdを算出するために、サーボ制御系20によるワーク40の移動を停止する必要がない。
Further, the control device 10 determines the first deviation amount Fd from the captured image Im which is the detection result at the detection time Td where "the target position Pt calculated in consideration of the response delay time Ds matches the detection position Pd". calculate. Therefore, the control device 10 does not need to stop the movement of the
したがって、制御装置10は、ワーク40に対する高精度な位置制御を、高速に実行することができ、言い換えれば、ワーク40の高速かつ高精度な位置制御を実現することができるとの効果を奏する。
Therefore, the control device 10 can perform high-speed position control on the
制御システム1において、撮像制御装置32(検出制御装置)は、撮像装置33による検出動作(具体的には、撮像動作)を制御し、撮像制御装置32は、通信装置31(通信制御装置)との間で通信を実行する。
In the
制御装置10は、通信装置31へと制御周期Ccごとに送信する制御信号Csにおいて、検出系30の応答遅れ時間Dd(撮像装置33の応答遅れ時間Dd)を考慮して検出時刻Tdを補正した検出指示時刻aTdを指定する。制御装置10は、制御信号Csにおいて検出指示時刻aTdを指定することによって、通信装置31に、撮像制御装置32への検出指示の出力を、検出指示時刻aTdにおいて実行させる。撮像制御装置32は、検出指示を通信装置31から受信すると、撮像装置33へと、検出トリガを送信し、撮像装置33に、検出動作(具体的には、撮像動作)を実行させる。 The control device 10 corrects the detection time Td in the control signal Cs transmitted to the communication device 31 for each control cycle Cc in consideration of the response delay time Dd of the detection system 30 (response delay time Dd of the image pickup device 33). Specify the detection instruction time aTd. By designating the detection instruction time aTd in the control signal Cs, the control device 10 causes the communication device 31 to output the detection instruction to the image pickup control device 32 at the detection instruction time aTd. Upon receiving the detection instruction from the communication device 31, the image pickup control device 32 transmits a detection trigger to the image pickup device 33, and causes the image pickup device 33 to perform a detection operation (specifically, an image pickup operation).
前記の構成によれば、制御装置10は、検出時刻Tdを撮像装置33の応答遅れ時間Ddによって補正した時刻である検出指示時刻aTdを算出する。そして、制御装置10は、通信装置31に対して制御周期Ccごとに出力する制御信号Csにおいて、検出指示時刻aTdを指定する。 According to the above configuration, the control device 10 calculates the detection instruction time aTd, which is the time obtained by correcting the detection time Td by the response delay time Dd of the image pickup device 33. Then, the control device 10 designates the detection instruction time aTd in the control signal Cs output to the communication device 31 for each control cycle Cc.
制御信号Csを受信した通信装置31は、検出指示時刻aTdにおいて、検出指示を撮像制御装置32へと送信し、検出指示を受信した撮像制御装置32は、撮像装置33に、検出対象を検出させる。そのため、撮像装置33が検出対象を検出する時刻は、撮像装置33の応答遅れ時間Ddの分だけ検出指示時刻aTdから遅れた時刻となり、つまり、検出時刻Tdとなる。 The communication device 31 that has received the control signal Cs transmits a detection instruction to the image pickup control device 32 at the detection instruction time aTd, and the image pickup control device 32 that has received the detection instruction causes the image pickup device 33 to detect the detection target. .. Therefore, the time when the image pickup apparatus 33 detects the detection target is the time delayed from the detection instruction time aTd by the response delay time Dd of the image pickup apparatus 33, that is, the detection time Td.
ここで、撮像装置33の応答遅れ時間Ddを考慮せずに、撮像装置33に撮像を実行させようとした場合、撮像装置33が実際に撮像を実行する時刻は、撮像装置33に撮像の実行を指示した時刻から、撮像装置33の応答遅れ時間Ddの分だけ遅れることになる。 Here, when the image pickup device 33 tries to perform an image pickup without considering the response delay time Dd of the image pickup device 33, the time when the image pickup device 33 actually executes the image pickup is the time when the image pickup device 33 executes the image pickup. Is delayed by the response delay time Dd of the image pickup apparatus 33 from the time instructed.
そこで、制御装置10は、検出時刻Tdを撮像装置33の応答遅れ時間Ddによって補正した時刻である検出指示時刻aTdを算出する。そして、制御装置10は、撮像装置33に撮像の実行を指示する時刻として検出指示時刻aTdを指定する。 Therefore, the control device 10 calculates the detection instruction time aTd, which is the time obtained by correcting the detection time Td by the response delay time Dd of the image pickup device 33. Then, the control device 10 designates the detection instruction time aTd as the time for instructing the image pickup device 33 to execute the image pickup.
したがって、制御装置10は、撮像装置33に撮像の実行を指示する時刻として、撮像装置33の応答遅れ時間Ddを考慮した検出指示時刻aTdを指定することによって、撮像装置33に、検出時刻Tdにおいて撮像を実行させることができるとの効果を奏する。 Therefore, the control device 10 designates the detection instruction time aTd in consideration of the response delay time Dd of the image pickup device 33 as the time for instructing the image pickup device 33 to execute the image pickup, so that the image pickup device 33 is instructed to perform the image pickup at the detection time Td. It has the effect of being able to perform imaging.
また、制御装置10は、制御周期Ccごとに送信する制御信号Csにおいて検出指示時刻aTdを指定し、例えば、制御装置10は、検出指示時刻aTdを、検出指示時刻aTdよりも前の制御周期Ccにおける制御信号Csにおいて指定する。 Further, the control device 10 specifies the detection instruction time aTd in the control signal Cs transmitted for each control cycle Cc. For example, the control device 10 sets the detection instruction time aTd to the control cycle Cc before the detection instruction time aTd. It is specified in the control signal Cs in.
したがって、制御装置10は、制御信号Csにおいて検出指示時刻aTdを指定することで、検出指示時刻aTdが、通信装置31との通信周期である制御周期Ccの整数倍でない場合であっても、検出時刻Tdにおいて検出対象を検出できるとの効果を奏する。 Therefore, by designating the detection instruction time aTd in the control signal Cs, the control device 10 detects even if the detection instruction time aTd is not an integral multiple of the control cycle Cc which is the communication cycle with the communication device 31. It has the effect of being able to detect the detection target at time Td.
制御装置10は、サーボ制御系20と制御周期Ccごとに通信を実行する。そして、制御装置10(特に、フィードバック位置算出部1180)は、「検出時刻Tdにおける、サーボ制御系20のフィードバック位置Pf」を、「制御周期Ccごとの、サーボ制御系20のフィードバック位置Pf」から、補間計算によって算出する。
The control device 10 executes communication with the
前記の構成によれば、制御装置10は、「検出時刻Tdにおける、サーボ制御系20のフィードバック位置Pf」を、「制御周期Ccごとの、サーボ制御系20のフィードバック位置Pf」から、補間計算によって算出する。
According to the above configuration, the control device 10 calculates the "feedback position Pf of the
例えば、nを「0以上の整数」として、検出時刻Tdが「n」回目の制御周期Cc(n)と「n+1」回目の制御周期Cc(n+1)との間の時刻であるとする。この場合、制御装置10は、以下のように、「検出時刻Tdにおける、サーボ制御系20のフィードバック位置Pf」を算出する。すなわち、制御装置10は、先ず、サーボ制御系20の、「制御周期Cc(n)におけるフィードバック位置Pf(n)」と、「制御周期Cc(n+1)におけるフィードバック位置Pf(n+1)」とを取得する。制御装置10は、次に、フィードバック位置Pf(n)とフィードバック位置Pf(n+1)とから、補間計算によって、「検出時刻Tdにおける、サーボ制御系20のフィードバック位置Pf」を算出する。
For example, it is assumed that n is an "integer of 0 or more" and the detection time Td is a time between the "n" th control cycle Cc (n) and the "n + 1" th control cycle Cc (n + 1). In this case, the control device 10 calculates the "feedback position Pf of the
したがって、制御装置10は、検出時刻Tdが、サーボ制御系20との通信周期である制御周期Ccの整数倍でない場合であっても、高精度に、「検出時刻Tdにおける、サーボ制御系20のフィードバック位置Pf」を算出することができるとの効果を奏する。
Therefore, even if the detection time Td is not an integral multiple of the control cycle Cc, which is the communication cycle with the
制御装置10は、互いに同期した複数のサーボ制御系20の各々に、複数のサーボ制御系20の各々の応答遅れ時間Dsを考慮した指令値Cmを出力する。
The control device 10 outputs a command value Cm in consideration of the response delay time Ds of each of the plurality of
前記の構成によれば、制御装置10は、互いに同期した複数のサーボ制御系20の各々に、複数のサーボ制御系20の各々の応答遅れ時間Dsを考慮した指令値Cmを出力する。
According to the above configuration, the control device 10 outputs a command value Cm in consideration of the response delay time Ds of each of the plurality of
したがって、制御装置10は、複数のサーボ制御系20を、互いに同期させた状態で制御して、ワーク40の高精度な位置制御を実現できるとの効果を奏する。
Therefore, the control device 10 has the effect that a plurality of
制御装置10は、ワーク40の位置Pwと検出位置Pdとのずれ量を検出する検出装置として、例えば、撮像装置33を用い、具体的には、撮像装置33の生成する撮像画像Imを用いる。第一ずれ量算出部1170は、撮像装置33が撮像した撮像画像Imにおける、検出位置Pdに対応する基準点Rbと、撮像画像Imにおけるワーク40の位置Pwとのずれ量(つまり、「画像内での位置ずれ」量)によって、第一ずれ量Fdを算出する。
The control device 10 uses, for example, an image pickup device 33 as a detection device for detecting the amount of deviation between the position Pw of the
前記の構成によれば、制御装置10は、撮像画像Imにおける基準点Rb(例えば、撮像画像Imの中心位置)とワーク40の位置Pwとのずれ量によって、第一ずれ量Fdを算出する。そして、制御装置10は、目標位置Ptを第一ずれ量Fdと第二ずれ量Sdとによって補正した補正後目標位置aPtと、サーボ制御系20の応答遅れ時間Dsとによって、サーボ制御系20に出力する指令値Cmを生成する。
According to the above configuration, the control device 10 calculates the first deviation amount Fd by the deviation amount between the reference point Rb (for example, the center position of the captured image Im) and the position Pw of the
ここで、撮像画像Im中の撮像対象の位置等を高速かつ高精度に特定する画像解析技術が知られている。 Here, there is known an image analysis technique for specifying a position or the like of an image pickup target in an image captured image Im at high speed and with high accuracy.
したがって、制御装置10は、撮像画像Imから高速かつ高精度に算出した第一ずれ量Fdと、第二ずれ量Sdとによって、ワーク40の高速かつ高精度な位置制御を実現できるとの効果を奏する。
Therefore, the control device 10 can realize high-speed and high-precision position control of the
また、前記の構成によれば、制御装置10は、応答遅れ時間Dsを考慮して目標軌道Ttから算出される目標位置Ptが検出位置Pdへと到達する時刻(つまり、検出時刻Td)に、撮像画像Imを撮像させる。そのため、撮像画像Imにおいて、応答遅れ時間Dsを考慮して目標軌道Ttから算出される目標位置Ptと、基準点Rb(例えば、撮像画像Imの中心位置)とは一致する。 Further, according to the above configuration, the control device 10 sets the time at which the target position Pt calculated from the target trajectory Tt in consideration of the response delay time Ds reaches the detection position Pd (that is, the detection time Td). The captured image Im is imaged. Therefore, in the captured image Im, the target position Pt calculated from the target trajectory Tt in consideration of the response delay time Ds and the reference point Rb (for example, the center position of the captured image Im) coincide with each other.
ここで、検出時刻Tdにおける「応答遅れ時間Dsを考慮した目標位置Pt」は、サーボ制御系20の応答遅れ時間Dsを考慮して目標軌道Ttから算出されている。そのため、検出時刻Tdにおいて、フィードバック位置Pfと「応答遅れ時間Dsを考慮した目標位置Pt」とは十分に近くなるはずである。つまり、フィードバック位置Pfとワーク40の位置Pw(例えば、ワーク40の中心位置)とが十分に近い場合、検出時刻Tdにおいて、ワーク40の位置Pwは、検出位置Pdに十分近くなるはずである。したがって、例えば、撮像画像Imの中心位置を基準点Rbとする場合、撮像画像Imにおいて、ワーク40は略中央に配置されることになる。
Here, the “target position Pt considering the response delay time Ds” at the detection time Td is calculated from the target trajectory Tt in consideration of the response delay time Ds of the
そのため、制御装置10は、撮像画像Imにおいてワーク40の位置Pw(例えば、ワーク40の中心位置)を特定するための検査領域を小さくすることができ、画像解析処理の高速化を実現することができる。 Therefore, the control device 10 can reduce the inspection area for specifying the position Pw of the work 40 (for example, the center position of the work 40) in the captured image Im, and can realize high-speed image analysis processing. can.
また、撮像画像Imにおいてワーク40は略中央に配置されるため、ワーク40が略中央に配置されていない撮像画像に比べ、ワーク40の撮像された領域が撮像画像Imの全体に占める割合を大きくでき、つまり、ワーク40を拡大して撮像させることができる。そのため、制御装置10は、ワーク40が拡大して撮像された撮像画像Imに対して、高精度な画像解析を行うことができる。
Further, since the
したがって、制御装置10は、撮像画像Imに対する高速かつ高精度な画像解析を実現し、この画像解析の結果を利用することによって、ワーク40の高速かつ高精度な位置制御を実現できるとの効果を奏する。
Therefore, the control device 10 realizes high-speed and high-precision image analysis for the captured image Im, and by using the result of this image analysis, it is possible to realize high-speed and high-precision position control of the
制御装置10について、サーボ制御系20は、ワーク40の位置Pwを変更可能なマニピュレータの軸を駆動するサーボモータ22と、サーボモータ22を制御するサーボドライバ21とを含んでいる。サーボ制御系20の目標位置Ptおよびフィードバック位置Pfは、各々、前記マニピュレータの把持部である手先23の目標位置Ptおよびフィードバック位置Pfである。
Regarding the control device 10, the
前記の構成によれば、制御装置10は、検出時刻Td、つまり、「サーボ制御系20の応答遅れ時間Dsを考慮して目標軌道Ttから算出される、手先23の目標位置Ptが、検出位置Pdに一致する時刻」における撮像画像Imから、第一ずれ量Fdを算出する。また、制御装置10は、検出時刻Tdにおける、手先23のフィードバック位置Pfと、「サーボ制御系20の応答遅れ時間Dsを考慮して目標軌道Ttから算出される手先23の目標位置Pt」とから、第二ずれ量Sdを算出する。そして、制御装置10は、撮像画像Imから算出した第一ずれ量Fdと、検出時刻Tdにおける手先23についての第二ずれ量Sdとによって、目標位置Ptを補正して、補正後目標位置aPtを生成する。制御装置10は、生成した補正後目標位置aPtと、サーボ制御系20の応答遅れ時間Dsとによって、サーボ制御系20に出力する指令値Cmを生成する。
According to the above configuration, in the control device 10, the detection time Td, that is, the target position Pt of the hand 23 calculated from the target trajectory Tt in consideration of the response delay time Ds of the
したがって、制御装置10は、検出時刻Tdにおける第一ずれ量Fdと、検出時刻Tdにおける手先23についての第二ずれ量Sdとを考慮して、前記マニピュレータによるワーク40の高精度な位置制御を実現できるとの効果を奏する。
Therefore, the control device 10 realizes highly accurate position control of the
制御装置10について、前記マニピュレータはワーク40のピッキング動作およびプレース動作を実行し、第一ずれ量Fdは、前記マニピュレータ(特に、手先23)に把持されたワーク40の位置Pwの、検出位置Pdからのずれ量である。
For the control device 10, the manipulator executes a picking operation and a place operation of the
前記の構成によれば、制御装置10は、「前記マニピュレータに把持されたワーク40の位置Pwの、検出位置Pdからのずれ量」である第一ずれ量Fdと、第二ずれ量Sdとによって、目標位置Ptを補正し、補正後目標位置aPtを生成する。そして、制御装置10は、補正後目標位置aPtと、サーボ制御系20の応答遅れ時間Dsとによって、サーボ制御系20に出力する指令値Cmを生成する。
According to the above configuration, the control device 10 is based on the first deviation amount Fd and the second deviation amount Sd, which are "the deviation amount of the position Pw of the
ここで、フィードバック位置Pfと「応答遅れ時間Dsを考慮して算出された目標位置Pt」とが完全に一致する場合にも、前記マニピュレータに把持されたワーク40の状態によっては、検出時刻Tdにおけるワーク40の位置Pwは、検出位置Pdからずれる。例えば、前記マニピュレータが、ワーク40の中心位置よりも右側の位置で、ワーク40を把持した場合、検出時刻Tdにおけるワーク40の中心位置は、検出位置Pdに対して左側にずれる。同様に、前記マニピュレータが、ワーク40の中心位置よりも左側の位置で、ワーク40を把持した場合、検出時刻Tdにおけるワーク40の中心位置は、検出位置Pdに対して右側にずれる。
Here, even when the feedback position Pf and the “target position Pt calculated in consideration of the response delay time Ds” completely match, depending on the state of the
また、ピッキング動作の際に発生した「ワーク40の位置Pwと手先23の位置とのずれ」は、プレース動作に至るまで維持されることが多いと考えられる。
Further, it is considered that the "deviation between the position Pw of the
そこで、制御装置10は、ピッキング動作の際に発生した「ワーク40の位置Pwと手先23の位置とのずれ」を特定し、特定した「ワーク40の位置Pwと手先23の位置とのずれ」を考慮して、ワーク40のプレース位置を制御する。
Therefore, the control device 10 identifies the "deviation between the position Pw of the
したがって、制御装置10は、前記マニピュレータに把持されたワーク40の状態を考慮した、ワーク40の高精度な位置制御を実現できるとの効果を奏する。
Therefore, the control device 10 has the effect of being able to realize highly accurate position control of the
制御装置10について、前記マニピュレータの手先23は、真空吸着または磁気吸引によって前記ピッキング動作を実行する。 For the control device 10, the hand 23 of the manipulator executes the picking operation by vacuum suction or magnetic suction.
前記の構成によれば、制御装置10は、真空吸着または磁気吸引を用いて手先23に把持されたワーク40についての第一ずれ量Fdと、手先23についての第二ずれ量Sdとによって、目標位置Ptを補正し、補正後目標位置aPtを生成する。そして、制御装置10は、補正後目標位置aPtと、サーボ制御系20の応答遅れ時間Dsとによって、サーボ制御系20に出力する指令値Cmを生成する。
According to the above configuration, the control device 10 is targeted by the first deviation amount Fd for the
ここで、2本指ないし5本指式のグリッパ(手先)によりワーク40を把持する場合に比べて、真空吸着または磁気吸引を用いてワーク40を把持する場合は、ワーク40の中心位置からずれた位置でワーク40を把持してしまう可能性がより大きいと考えられる。
Here, compared to the case where the
そのため、前記マニピュレータに把持されたワーク40の高精度な位置制御のために、「ワーク40の位置Pwと手先23の位置とのずれ」を考慮する必要性は、真空吸着または磁気吸引を用いてワーク40を把持する場合に、より大きくなる。
Therefore, in order to control the position of the
したがって、制御装置10は、真空吸着または磁気吸引によってピッキング動作を実行するマニピュレータを含むサーボ制御系20を制御して、ワーク40の高速かつ高精度な位置制御を実現できるとの効果を奏する。
Therefore, the control device 10 has the effect that the
§3.動作例
(処理の全体概要について)
図15は、制御装置10が実行する処理の全体概要を説明するフロー図である。図15は、特に、制御装置10の実行する、「サーボ制御系20によって移動されるワーク40の位置Pwと、サーボ制御系20の位置とのずれ」に起因するワーク40の位置ずれを解消する処理の概要を説明している。
§3. Operation example (Overview of processing)
FIG. 15 is a flow chart illustrating an overall outline of the processing executed by the control device 10. FIG. 15 particularly eliminates the misalignment of the
図15に示すように、制御装置10において、検出時刻決定部1160は、検出指示時刻決定処理を実行する(S110)。そして、通信部1200(特に、指令部1210)は、検出指示時刻決定処理によって決定された検出指示時刻aTdを送信する(S120)。
As shown in FIG. 15, in the control device 10, the detection
通信部1200(特に、制御量取得部1220)は、検出系30の検出結果(例えば、撮像画像Im)、および、サーボ制御系20の制御結果(例えば、制御周期Ccごとのフィードバック位置Pf)を受信する(S130)。そして、制御量取得部1220は、受信した検出系30の検出結果を第一ずれ量算出部1170に通知し、また、受信したサーボ制御系20の制御結果をフィードバック位置算出部1180に通知する。
The communication unit 1200 (particularly, the control amount acquisition unit 1220) obtains the detection result of the detection system 30 (for example, the captured image Im) and the control result of the servo control system 20 (for example, the feedback position Pf for each control cycle Cc). Receive (S130). Then, the control
第一ずれ量算出部1170は、検出系30の検出結果を用いて、第一ずれ量算出処理を実行する(S140)。また、フィードバック位置算出部1180および第二ずれ量算出部1190は、サーボ制御系20の制御結果を用いて、第二ずれ量算出処理を実行する(S150)。
The first deviation
位置指令補正部1130は、目標位置Ptを、S140で算出された第一ずれ量FdとS150で算出された第二ずれ量Sdとによって補正した補正後目標位置aPtを生成する(S160)。そして、指令値生成部1140は、補正後目標位置aPtから、サーボ制御系20の応答遅れ時間Dsを考慮して、指令値Cmを生成する(S170)。
The position
(検出指示時刻決定処理について)
図16は、図15の検出指示時刻決定処理(S110)の一例を説明するフロー図である。図16に示すように、検出時刻決定部1160は、先ず、目標軌道Ttから、サーボ制御系20の応答遅れ時間Dsを考慮して、時刻ごとの目標位置Pt(t)を算出する(S210)。検出時刻決定部1160は、「サーボ制御系20の応答遅れ時間Dsを考慮した目標位置Pt(t)」と検出位置Pdとが一致する時刻を、検出時刻Tdとして特定する(S220)。検出時刻決定部1160は、検出時刻Tdに対して、検出系30の応答遅れ時間Ddを考慮して検出指示時刻aTdを決定する(S230)。
(About detection instruction time determination processing)
FIG. 16 is a flow chart illustrating an example of the detection instruction time determination process (S110) of FIG. As shown in FIG. 16, the detection
(第一ずれ量算出処理および第二ずれ量算出処理について)
図17は、図15の第一ずれ量算出処理(S140)および第二ずれ量算出処理(S150)の各々の一例を説明するフロー図である。具体的には、図17の(A)は、第一ずれ量算出処理の一例を説明するフロー図であり、図17の(B)は、第二ずれ量算出処理の一例を説明するフロー図である。
(About the first deviation amount calculation process and the second deviation amount calculation process)
FIG. 17 is a flow chart illustrating an example of each of the first deviation amount calculation process (S140) and the second deviation amount calculation process (S150) of FIG. Specifically, FIG. 17A is a flow chart for explaining an example of the first deviation amount calculation process, and FIG. 17B is a flow chart for explaining an example of the second deviation amount calculation process. Is.
図17の(A)に示すように、第一ずれ量算出部1170は、先ず、検出時刻Tdにおける撮像画像Imに対して画像解析を実行し、撮像画像Im中の、ワーク40の位置Pw(例、ワーク40の中心位置)を特定する(S310)。
As shown in FIG. 17A, the first deviation
第一ずれ量算出部1170は、特定した「撮像画像Im中の、ワーク40の位置Pw」と、「撮像画像Im中の、検出位置Pdに対応する基準点Rb(例、撮像画像Imの中心点)」との間のずれ量(つまり、「画像内での位置ずれ」量)を算出する(S320)。
The first deviation
第一ずれ量算出部1170は、S320で算出されたずれ量から、「検出位置Pdとワーク40の位置Pwとのずれ量」である第一ずれ量Fdを算出する(S330)。
The first deviation
図17の(B)に示すように、フィードバック位置算出部1180は、先ず、制御周期Ccごとの「サーボ制御系20のフィードバック位置Pf」から、「検出時刻Tdにおける、サーボ制御系20のフィードバック位置Pf」を算出する(S410)。フィードバック位置算出部1180は、算出した「検出時刻Tdにおける、サーボ制御系20のフィードバック位置Pf」を、第二ずれ量算出部1190に通知する。
As shown in FIG. 17B, the feedback
第二ずれ量算出部1190は、検出時刻Tdにおける、「サーボ制御系20の応答遅れ時間Dsを考慮した、サーボ制御系20の目標位置Pt」を算出する(S420)。
The second deviation
第二ずれ量算出部1190は、S410で算出されたフィードバック位置Pfと、S420で算出された目標位置Ptとの間のずれ量を、第二ずれ量Sdとして算出する(S420)。つまり、第二ずれ量算出部1190は、検出時刻Tdにおける、「サーボ制御系20のフィードバック位置Pf」と「サーボ制御系20の応答遅れ時間Dsを考慮した、サーボ制御系20の目標位置Pt」との間のずれ量を、第二ずれ量Sdとして算出する。
The second deviation
これまで図15から図17を用いて説明してきた制御装置10の実行する処理は、以下のように整理することができる。すなわち、制御装置10の実行する制御方法は、目標軌道Ttから演算した指令値Cmをサーボ制御系20に出力する制御装置の制御方法である。前記制御方法は、第一ずれ量算出ステップ(図15のS140)と、第二ずれ量算出ステップ(図15のS150)と、指令値生成ステップ(図15のS170)とを含んでいる。
The processes executed by the control device 10 described with reference to FIGS. 15 to 17 can be organized as follows. That is, the control method executed by the control device 10 is a control method of the control device that outputs the command value Cm calculated from the target trajectory Tt to the
図17の(A)に例示するように、第一ずれ量算出ステップは、検出時刻Tdにおける撮像画像Imから、サーボ制御系20によって位置を制御されるワーク40の位置Pwの、検出位置Pdからのずれ量である第一ずれ量Fdを算出する。前述の通り、検出時刻Tdにおいて、「サーボ制御系20の応答遅れ時間Dsを考慮して目標軌道Ttから算出される目標位置Pt」と、検出位置Pdとは一致する。
As illustrated in FIG. 17A, the first deviation amount calculation step is from the detection position Pd of the position Pw of the
図17の(B)に例示するように、第二ずれ量算出ステップは、「検出時刻Tdにおける、サーボ制御系20のフィードバック位置Pfと『サーボ制御系20の応答遅れ時間Dsを考慮して算出された目標位置Pt』とのずれ量」である第二ずれ量Sdを算出する。
As illustrated in FIG. 17B, the second deviation amount calculation step is "calculated in consideration of the feedback position Pf of the
指令値生成ステップは、「目標軌道Ttから算出される目標位置Pt」を第一ずれ量Fdと第二ずれ量Sdとによって補正した補正後目標位置aPtと、サーボ制御系20の応答遅れ時間Dsとから、指令値Cmを生成する。
In the command value generation step, the corrected target position aPt obtained by correcting the “target position Pt calculated from the target trajectory Tt” by the first deviation amount Fd and the second deviation amount Sd, and the response delay time Ds of the
前記の構成によれば、前記制御方法は、目標位置Ptを第一ずれ量Fdと第二ずれ量Sdとによって補正した補正後目標位置aPtと、サーボ制御系20の応答遅れ時間Dsとによって、サーボ制御系20に出力する指令値Cmを生成する。
According to the above configuration, in the control method, the corrected target position aPt in which the target position Pt is corrected by the first deviation amount Fd and the second deviation amount Sd and the response delay time Ds of the
ここで、検出時刻Tdにおいて、フィードバック位置Pfと「応答遅れ時間Dsを考慮した目標位置Pt」とが完全に一致する場合、検出時刻Tdにおいて、フィードバック位置Pfは、検出位置Pdに完全に一致することになる。そのため、検出時刻Tdにおいて、フィードバック位置Pfと「応答遅れ時間Dsを考慮した目標位置Pt」とが完全に一致する場合、ワーク40の位置Pwの、フィードバック位置Pfからのずれ量(つまり、位置ずれ量)は、第一ずれ量Fdのみから特定できる。つまり、検出時刻Tdにおいて、フィードバック位置Pfと「応答遅れ時間Dsを考慮した目標位置Pt」とが完全に一致する場合には、位置ずれ量(把持ずれ量)は、第一ずれ量Fdのみから特定することができる。
Here, when the feedback position Pf and the "target position Pt considering the response delay time Ds" completely match at the detection time Td, the feedback position Pf completely matches the detection position Pd at the detection time Td. It will be. Therefore, when the feedback position Pf and the "target position Pt considering the response delay time Ds" completely match at the detection time Td, the amount of deviation of the position Pw of the
しかしながら、実際には、検出時刻Tdにおいて、フィードバック位置Pfと「応答遅れ時間Dsを考慮した目標位置Pt」とは、完全には一致しないことがある。 However, in reality, at the detection time Td, the feedback position Pf and the "target position Pt considering the response delay time Ds" may not completely match.
そこで、前記制御方法は、第一ずれ量Fdに加えて、第二ずれ量Sdをも考慮することによって、検出時刻Tdにおける、「ワーク40の位置Pwの、フィードバック位置Pfからのずれ量」を高精度に特定する。そして、前記制御方法は、特定した「ワーク40の位置Pwの、フィードバック位置Pfからのずれ量」によって「目標軌道Ttから算出される目標位置Pt」を補正した補正後目標位置aPtと、サーボ制御系20の応答遅れ時間Dsとから、指令値Cmを生成する。
Therefore, in the control method, the "deviation amount of the position Pw of the
したがって、前記制御方法は、サーボ制御系20のフィードバック位置Pfと、サーボ制御系20によって位置を制御されるワーク40の位置Pwとのずれを考慮することにより、ワーク40の位置制御を高精度化することができるとの効果を奏する。
Therefore, the control method improves the accuracy of the position control of the
また、前記制御方法は、「応答遅れ時間Dsを考慮して算出された目標位置Ptが、検出位置Pdに一致する」検出時刻Tdにおける撮像画像Imから、第一ずれ量Fdを算出する。そのため、前記制御方法は、第一ずれ量Fdを算出するために、サーボ制御系20によるワーク40の移動を停止する必要がない。
Further, in the control method, the first deviation amount Fd is calculated from the captured image Im at the detection time Td in which the target position Pt calculated in consideration of the response delay time Ds matches the detection position Pd. Therefore, in the control method, it is not necessary to stop the movement of the
したがって、前記制御方法は、ワーク40に対する高精度な位置制御を、高速に実行することができ、言い換えれば、ワーク40の高速かつ高精度な位置制御を実現することができるとの効果を奏する。
Therefore, the control method has the effect of being able to execute high-precision position control on the
§4.変形例
これまで、制御装置10が複数のサーボ制御系20を制御する例を説明してきたが、制御装置10が制御するサーボ制御系20は1つであってもよい。また、これまで、「ワーク40の位置Pwと検出位置Pdとのずれ量」を検出する検出装置が、撮像装置33である例を説明してきたが、検出装置が撮像装置33であることは必須ではない。制御装置10は、「ワーク40の位置Pwと検出位置Pdとのずれ量」を検出することのできる検出装置から、「ワーク40の位置Pwと検出位置Pdとのずれ量」を算出可能な検出結果を取得できればよい。さらに、これまで、手先23がワーク40を把持してワーク40を移動する例を説明してきたが、手先23がワーク40を把持することは必須ではない。制御システム1において、手先23の移動に伴ってワーク40が移動すればよく、制御装置10は、手先23の位置を制御することにより、ワーク40の位置Pwを制御できればよい。
§4. Modification Example Although an example in which the control device 10 controls a plurality of
〔ソフトウェアによる実現例〕
制御装置10の制御ブロック(特に、目標軌道取得部1110、位置指令生成部1120、位置指令補正部1130、指令値生成部1140、応答遅れ時間算出部1150、検出時刻決定部1160、第一ずれ量算出部1170、フィードバック位置算出部1180、第二ずれ量算出部1190、および、通信部1200)は、集積回路(ICチップ)等に形成された論理回路(ハードウェア)によって実現してもよいし、ソフトウェアによって実現してもよい。
[Example of implementation by software]
The control block of the control device 10 (particularly, the target
後者の場合、制御装置10は、各機能を実現するソフトウェアであるプログラムの命令を実行するコンピュータを備えている。このコンピュータは、例えば1つ以上のプロセッサを備えていると共に、上記プログラムを記憶したコンピュータ読み取り可能な記録媒体を備えている。そして、上記コンピュータにおいて、上記プロセッサが上記プログラムを上記記録媒体から読み取って実行することにより、本発明の目的が達成される。上記プロセッサとしては、例えばCPU(Central Processing Unit)を用いることができる。上記記録媒体としては、「一時的でない有形の媒体」、例えば、ROM(Read Only Memory)等の他、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、上記プログラムを展開するRAM(Random Access Memory)などをさらに備えていてもよい。また、上記プログラムは、該プログラムを伝送可能な任意の伝送媒体(通信ネットワークや放送波等)を介して上記コンピュータに供給されてもよい。なお、本発明の一態様は、上記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。 In the latter case, the control device 10 includes a computer that executes instructions of a program that is software that realizes each function. The computer includes, for example, one or more processors and a computer-readable recording medium that stores the program. Then, in the computer, the processor reads the program from the recording medium and executes the program, thereby achieving the object of the present invention. As the processor, for example, a CPU (Central Processing Unit) can be used. As the recording medium, a "non-temporary tangible medium", for example, a ROM (Read Only Memory) or the like, a tape, a disk, a card, a semiconductor memory, a programmable logic circuit, or the like can be used. Further, a RAM (Random Access Memory) for expanding the above program may be further provided. Further, the program may be supplied to the computer via any transmission medium (communication network, broadcast wave, etc.) capable of transmitting the program. It should be noted that one aspect of the present invention can also be realized in the form of a data signal embedded in a carrier wave, in which the above program is embodied by electronic transmission.
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。 The present invention is not limited to the above-described embodiments, and various modifications can be made within the scope of the claims, and the embodiments obtained by appropriately combining the technical means disclosed in the different embodiments. Is also included in the technical scope of the present invention.
10 制御装置
20 サーボ制御系
23 手先
30 検出系
31 通信装置(通信制御装置)
32 撮像制御装置(検出制御装置)
33 撮像装置(検出装置)
40 ワーク
1170 第一ずれ量算出部
1190 第二ずれ量算出部
1140 指令値生成部
aPt 補正後目標位置
aTd 検出指示時刻
Cc 制御周期
Cm 指令値
Cs 制御信号
Dd 検出系の応答遅れ時間
Ds サーボ制御系の応答遅れ時間
Fd 第一ずれ量
Im 撮像画像
Pd 検出位置
Pf フィードバック位置
Pt 目標位置
Rb 基準点
Sd 第二ずれ量
S140 第一ずれ量算出ステップ
S150 第二ずれ量算出ステップ
S170 指令値生成ステップ
Td 検出時刻
Tt 目標軌道
10
32 Imaging control device (detection control device)
33 Imaging device (detection device)
40
Claims (9)
前記サーボ制御系の応答遅れ時間を考慮して前記目標軌道から算出される目標位置が、検出装置が検出対象を検出する位置である検出位置に一致する時刻である検出時刻における、前記検出装置の検出結果から、前記サーボ制御系によって位置を制御されるワークの位置の、前記検出位置からのずれ量である第一ずれ量を算出する第一ずれ量算出部と、
前記サーボ制御系の、前記検出時刻におけるフィードバック位置と、前記検出時刻における、前記応答遅れ時間を考慮して算出された前記目標位置とのずれ量である第二ずれ量を算出する第二ずれ量算出部と、
前記目標軌道から算出される目標位置を前記第一ずれ量と前記第二ずれ量とによって補正した補正後目標位置と、前記応答遅れ時間とから、前記指令値を生成する指令値生成部とを備え、
前記検出装置の応答遅れ時間を考慮して前記検出時刻を補正した検出指示時刻を、前記検出装置による検出動作を制御する検出制御装置と通信する通信制御装置へと制御周期ごとに送信する制御信号において指定し、
前記通信制御装置に、前記検出制御装置への検出指示の出力を、前記検出指示時刻において実行させることによって、前記検出装置に、前記検出時刻において、前記検出対象を検出させ、
前記サーボ制御系と制御周期ごとに通信を実行し、
前記サーボ制御系の、前記検出時刻におけるフィードバック位置は、前記サーボ制御系の、前記制御周期ごとのフィードバック位置から、補間計算によって算出される制御装置。 It is a control device that outputs the command value calculated from the target trajectory to the servo control system.
The detection device at the detection time, which is the time when the target position calculated from the target trajectory in consideration of the response delay time of the servo control system coincides with the detection position, which is the position where the detection device detects the detection target. From the detection result, the first deviation amount calculation unit that calculates the first deviation amount, which is the deviation amount from the detection position, of the position of the work whose position is controlled by the servo control system,
The second deviation amount for calculating the second deviation amount, which is the deviation amount between the feedback position at the detection time and the target position calculated in consideration of the response delay time at the detection time of the servo control system. Calculation unit and
A command value generation unit that generates the command value from the corrected target position obtained by correcting the target position calculated from the target trajectory by the first deviation amount and the second deviation amount and the response delay time. Prepare ,
A control signal that transmits the detection instruction time corrected for the detection time in consideration of the response delay time of the detection device to the communication control device that communicates with the detection control device that controls the detection operation by the detection device for each control cycle. Specified in
By causing the communication control device to output a detection instruction to the detection control device at the detection instruction time, the detection device is made to detect the detection target at the detection time.
Communication with the servo control system is executed every control cycle,
The feedback position of the servo control system at the detection time is a control device calculated by interpolation calculation from the feedback position of the servo control system for each control cycle .
請求項1に記載の制御装置。 The control device according to claim 1, wherein a command value considering the response delay time of each of the plurality of servo control systems is output to each of the plurality of servo control systems synchronized with each other.
前記第一ずれ量算出部は、前記撮像装置が撮像した撮像画像において前記検出位置に対応する基準点と、前記撮像画像における前記ワークの位置とのずれ量によって、前記第一ずれ量を算出する
請求項1または2に記載の制御装置。 The detection device is an image pickup device.
The first deviation amount calculation unit calculates the first deviation amount based on the deviation amount between the reference point corresponding to the detection position in the image captured by the imaging device and the position of the work in the captured image. The control device according to claim 1 or 2 .
前記目標位置および前記フィードバック位置は、各々、前記マニピュレータの把持部である手先の目標位置およびフィードバック位置である
請求項1から3のいずれか1項に記載の制御装置。 The servo control system includes a servomotor that drives a shaft of a manipulator that can change the position of the work, and a servodriver that controls the servomotor.
The control device according to any one of claims 1 to 3 , wherein the target position and the feedback position are the target position and the feedback position of the hand which is the grip portion of the manipulator, respectively.
前記第一ずれ量は、前記マニピュレータに把持された前記ワークの位置の、前記検出位置からのずれ量である
請求項4に記載の制御装置。 The manipulator executes the picking operation and the place operation of the work, and performs the picking operation and the place operation.
The control device according to claim 4 , wherein the first deviation amount is an deviation amount of the position of the work held by the manipulator from the detection position.
請求項5に記載の制御装置。 The control device according to claim 5 , wherein the hand of the manipulator executes the picking operation by vacuum suction or magnetic suction.
前記サーボ制御系の応答遅れ時間を考慮して前記目標軌道から算出される目標位置が、検出装置が検出対象を検出する位置である検出位置に一致する時刻である検出時刻における、前記検出装置の検出結果から、前記サーボ制御系によって位置を制御されるワークの位置の、前記検出位置からのずれ量である第一ずれ量を算出する第一ずれ量算出ステップと、
前記サーボ制御系の、前記検出時刻におけるフィードバック位置と、前記検出時刻における、前記応答遅れ時間を考慮して算出された前記目標位置とのずれ量である第二ずれ量を算出する第二ずれ量算出ステップと、
前記目標軌道から算出される目標位置を前記第一ずれ量と前記第二ずれ量とによって補正した補正後目標位置と、前記応答遅れ時間とから、前記指令値を生成する指令値生成ステップとを含み、
前記検出装置の応答遅れ時間を考慮して前記検出時刻を補正した検出指示時刻を、前記検出装置による検出動作を制御する検出制御装置と通信する通信制御装置へと制御周期ごとに送信する制御信号において指定し、
前記通信制御装置に、前記検出制御装置への検出指示の出力を、前記検出指示時刻において実行させることによって、前記検出装置に、前記検出時刻において、前記検出対象を検出させ、
前記サーボ制御系と制御周期ごとに通信を実行し、
前記サーボ制御系の、前記検出時刻におけるフィードバック位置は、前記サーボ制御系の、前記制御周期ごとのフィードバック位置から、補間計算によって算出される制御方法。 It is a control method of a control device that outputs a command value calculated from a target trajectory to a servo control system.
The detection device at the detection time, which is the time when the target position calculated from the target trajectory in consideration of the response delay time of the servo control system coincides with the detection position, which is the position where the detection device detects the detection target. From the detection result, the first deviation amount calculation step for calculating the first deviation amount, which is the deviation amount from the detection position, of the position of the work whose position is controlled by the servo control system,
The second deviation amount for calculating the second deviation amount, which is the deviation amount between the feedback position at the detection time and the target position calculated in consideration of the response delay time at the detection time of the servo control system. Calculation steps and
A command value generation step for generating the command value from the corrected target position obtained by correcting the target position calculated from the target trajectory by the first deviation amount and the second deviation amount and the response delay time. Including,
A control signal that transmits the detection instruction time corrected for the detection time in consideration of the response delay time of the detection device to the communication control device that communicates with the detection control device that controls the detection operation by the detection device for each control cycle. Specified in
By causing the communication control device to output a detection instruction to the detection control device at the detection instruction time, the detection device is made to detect the detection target at the detection time.
Communication with the servo control system is executed every control cycle,
The feedback position of the servo control system at the detection time is a control method calculated by interpolation calculation from the feedback position of the servo control system for each control cycle .
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020138199A JP7040567B2 (en) | 2020-08-18 | 2020-08-18 | Control device, control method of control device, information processing program, and recording medium |
CN202110768098.5A CN114077264A (en) | 2020-08-18 | 2021-07-07 | Control device, control method for control device, and computer-readable recording medium |
KR1020210091124A KR20220022440A (en) | 2020-08-18 | 2021-07-12 | Control device, control method of the control device, information processing program and recording medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020138199A JP7040567B2 (en) | 2020-08-18 | 2020-08-18 | Control device, control method of control device, information processing program, and recording medium |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2022034419A JP2022034419A (en) | 2022-03-03 |
JP7040567B2 true JP7040567B2 (en) | 2022-03-23 |
Family
ID=80283089
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020138199A Active JP7040567B2 (en) | 2020-08-18 | 2020-08-18 | Control device, control method of control device, information processing program, and recording medium |
Country Status (3)
Country | Link |
---|---|
JP (1) | JP7040567B2 (en) |
KR (1) | KR20220022440A (en) |
CN (1) | CN114077264A (en) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003231078A (en) | 2002-02-14 | 2003-08-19 | Denso Wave Inc | Position control method for robot arm and robot device |
JP2011201007A (en) | 2010-03-05 | 2011-10-13 | Fanuc Ltd | Robot system with visual sensor |
JP2017102616A (en) | 2015-11-30 | 2017-06-08 | オムロン株式会社 | Control device, control method, and control program |
JP2019079344A (en) | 2017-10-25 | 2019-05-23 | オムロン株式会社 | Control system |
JP2019219998A (en) | 2018-06-21 | 2019-12-26 | オムロン株式会社 | Positioning system, monitoring device, monitoring method, and program |
-
2020
- 2020-08-18 JP JP2020138199A patent/JP7040567B2/en active Active
-
2021
- 2021-07-07 CN CN202110768098.5A patent/CN114077264A/en active Pending
- 2021-07-12 KR KR1020210091124A patent/KR20220022440A/en active Search and Examination
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003231078A (en) | 2002-02-14 | 2003-08-19 | Denso Wave Inc | Position control method for robot arm and robot device |
JP2011201007A (en) | 2010-03-05 | 2011-10-13 | Fanuc Ltd | Robot system with visual sensor |
JP2017102616A (en) | 2015-11-30 | 2017-06-08 | オムロン株式会社 | Control device, control method, and control program |
JP2019079344A (en) | 2017-10-25 | 2019-05-23 | オムロン株式会社 | Control system |
JP2019219998A (en) | 2018-06-21 | 2019-12-26 | オムロン株式会社 | Positioning system, monitoring device, monitoring method, and program |
Also Published As
Publication number | Publication date |
---|---|
KR20220022440A (en) | 2022-02-25 |
JP2022034419A (en) | 2022-03-03 |
CN114077264A (en) | 2022-02-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6167622B2 (en) | Control system and control method | |
KR101485722B1 (en) | Image processing apparatus and image processing system | |
KR101483405B1 (en) | Control system, and position estimation method to be used in control system | |
JP6836571B2 (en) | Robot device | |
WO2012029142A1 (en) | Laser processing apparatus and substrate position detecting method | |
JP2015213139A (en) | Positioning device | |
CN110581946B (en) | Control system, control device, image processing device, and storage medium | |
EP3542973B1 (en) | Work robot and work position correction method | |
CN110581945B (en) | Control system, control device, image processing device, and storage medium | |
KR102537029B1 (en) | Control device and control method | |
JP7040567B2 (en) | Control device, control method of control device, information processing program, and recording medium | |
WO2020003945A1 (en) | Position determination system, control method, and program | |
JP7052840B2 (en) | Positioning device, control method of position specifying device, information processing program, and recording medium | |
WO2020179507A1 (en) | Control device and alignment device | |
JP7172151B2 (en) | Control systems, controllers and programs | |
WO2024080048A1 (en) | Position adjusting device | |
JP2019188549A (en) | Control system, control method and control program | |
WO2024023975A1 (en) | Alignment system, alignment method, and program | |
JPH098497A (en) | High-speed positioning method of part mounting machine |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210414 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20210414 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210713 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20211109 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20211228 |
|
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: 20220208 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220221 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7040567 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |