JP6075912B2 - Image processing apparatus and image processing method - Google Patents
Image processing apparatus and image processing method Download PDFInfo
- Publication number
- JP6075912B2 JP6075912B2 JP2013051290A JP2013051290A JP6075912B2 JP 6075912 B2 JP6075912 B2 JP 6075912B2 JP 2013051290 A JP2013051290 A JP 2013051290A JP 2013051290 A JP2013051290 A JP 2013051290A JP 6075912 B2 JP6075912 B2 JP 6075912B2
- Authority
- JP
- Japan
- Prior art keywords
- imaging
- image
- recognition
- recognition processing
- task
- 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
Landscapes
- Electric Connection Of Electric Components To Printed Circuits (AREA)
- Image Processing (AREA)
- Studio Devices (AREA)
Description
本発明は、画像撮像中に既に入力済みの画像データを並列に処理する画像処理装置及び方法に関するものである。 The present invention relates to an image processing apparatus and method for processing in parallel image data already input during image capturing.
従来技術として、例えば、部品実装装置に適用されている画像処理装置では、複数の部品について連続して撮像が行われ、撮像により得られた画像データに対して、優先順位に従い、並列して認識処理を実行する部品認識方法が提案されている(例えば、特許文献1参照)。
この画像処理装置では、撮像終了をトリガにして、あらかじめ設定された優先順位に従って、認識処理を行う画像データを選定し直して、優先順位の高い画像データへの認識処理切り替え行っている。このときの優先順位は、回路基板への電子部品の装着順もしくは被検査物における大きさの順位としている。
As a conventional technique, for example, in an image processing apparatus applied to a component mounting apparatus, imaging is continuously performed for a plurality of components, and image data obtained by imaging is recognized in parallel according to priority. A component recognition method for executing processing has been proposed (see, for example, Patent Document 1).
In this image processing apparatus, with the end of imaging as a trigger, image data to be recognized is selected again according to a preset priority, and the recognition process is switched to image data with a higher priority. The priority order at this time is the order of mounting the electronic components on the circuit board or the order of the size of the inspection object.
図18に上記画像処理装置が行う処理のタイムチャートを示す。
まず、従来の画像処理装置では、撮像の要求を受けると、画像データを所定のメモリに記憶するために、時刻t1から所定のメモリに対するバス接続処理を実行する。
その後、時刻t2から、第1画像データの撮像を開始する。そして、時刻t3にて、画像撮像を終了し、メモリに併設されたコントローラから装置の制御及び画像処理を行うためのCPUに対して割込信号を送出する。
これにより、CPUは、第2画像データの撮像のための設定や画像データの記憶領域の確保等を割込処理にて実行する。そして、割込処理の後に、CPUは、既に記憶された第1画像データに対し、第1画像認識処理を実行する。
FIG. 18 shows a time chart of processing performed by the image processing apparatus.
First, when receiving a request for imaging, a conventional image processing apparatus executes a bus connection process for a predetermined memory from time t1 in order to store the image data in the predetermined memory.
Thereafter, imaging of the first image data is started from time t2. Then, at time t3, image capturing is terminated, and an interrupt signal is sent from the controller provided in the memory to the CPU for controlling the apparatus and performing image processing.
As a result, the CPU executes settings for capturing the second image data, secures a storage area for the image data, and the like in the interrupt process. Then, after the interrupt process, the CPU executes a first image recognition process on the already stored first image data.
一方、第1画像認識処理と並列して、カメラは第2画像データの撮像を実行する。時刻t4から第2画像データの撮像を開始し、時刻t5にて画像撮像終了し、CPUに対してメモリのコントローラから割込信号を送出する。
これにより、CPUは、処理中であった第1画像認識処理を一時中断する。さらに、CPUは第3画像データの撮像のための設定を割込処理にて実行する。そして、既に記憶された第1画像データ及び第2画像データについて、予め設定されている画像認識処理の優先順位を判定し、優先順位の高い方の画像認識処理を実行する。画像認識処理の優先順位が、例えば、第3画像データ、第2画像データ、第1画像データの順であるとすると、CPUは、画像撮像動作が終了して未処理状態にある第1画像データ及び第2画像データに対して、優先順位の高い第2画像データの方を第1画像データに優先して画像認識処理を実行する。
これにより、第1画像データ に対する画像認識処理は、当該第1画像データの画像認識処理よりも優先順位の高い画像データの画像認識処理が全て終了するまで一時中断することとなる。
On the other hand, in parallel with the first image recognition process, the camera captures the second image data. The imaging of the second image data is started at time t4, the imaging of the image is finished at time t5, and an interrupt signal is sent from the controller of the memory to the CPU.
Accordingly, the CPU temporarily interrupts the first image recognition process that was being processed. Further, the CPU executes setting for capturing the third image data by interrupt processing. Then, for the first image data and the second image data that are already stored, the priority of the image recognition process set in advance is determined, and the image recognition process with the higher priority is executed. If the priority order of the image recognition processing is, for example, the order of the third image data, the second image data, and the first image data, the CPU completes the image capturing operation and is in the unprocessed state. For the second image data, the image recognition process is executed by giving priority to the second image data having a higher priority than the first image data.
As a result, the image recognition process for the first image data is temporarily suspended until all the image recognition processes for image data having a higher priority than the image recognition process for the first image data are completed.
上記割込処理の終了後、カメラにより第3画像データの撮像が実行される。時刻t6から第3画像データの撮像を開始し、時刻t7にて、画像撮像を終了し、メモリのコントローラからCPUに対して、割込信号を送出する。CPUは、第2画像認識処理を一時中断し、上述したように優先順位を判定する。
前述したように、第3画像データの優先順位が最も高いので、当該第3画像データに対する画像認識処理がまず実行され、これが終わると時刻t8において、その次に第2画像データにおける一時中断後の残りのデータに対して画像認識処理が実行され、さらに、これが終わると時刻t9において、第1画像データにおける一時中断後の残りのデータに対して画像認識処理が実行され、時刻t10にて終了する。
このようにして全ての画像データに対して画像認識処理が終了したところで一連の画像撮像及び画像認識処理の作業は終了することとなる。
尚、このような、画像認識処理を実行する画像データの変更機能は、CPUのオペレーションシステムが、マルチタスク機能をサポートしていれば簡単に実現することが可能である。
After the interruption process is completed, the camera captures the third image data. The imaging of the third image data is started at time t6, the imaging of the image is terminated at time t7, and an interrupt signal is sent from the memory controller to the CPU. The CPU suspends the second image recognition process and determines the priority order as described above.
As described above, since the priority order of the third image data is the highest, the image recognition process for the third image data is executed first, and when this is finished, at time t8, the second image data after the temporary interruption is next. The image recognition process is performed on the remaining data, and when this is completed, the image recognition process is performed on the remaining data after the temporary interruption in the first image data at time t9, and ends at time t10. .
In this way, when the image recognition processing is completed for all the image data, a series of image capturing and image recognition processing operations are completed.
Note that such an image data changing function for executing image recognition processing can be easily realized if the operation system of the CPU supports the multitask function.
しかしながら、従来の画像処理装置における画像処理の方法では、複数のカメラを搭載し、これらのカメラが個々に非同期で連続的に撮像を行い、それらの撮像画像データについて画像処理を行うような場合には不適であった。
即ち、カメラを複数搭載する場合、複数系統からの非同期での処理要求の組み合わせは増大し、あらかじめ適切な優先順位を設定しておくことは困難となる。例えば、処理要求の重なり具合によって、ある時間での処理の多重度が上がり負荷が重くなる、また、処理時間がかかる処理が混ざるなど、CPUの負荷状態が刻々と変動する。このような環境下では、あらかじめきめた優先順位に従って処理を進めた場合、低優先順位の処理まで順番が回ってこなくなり、想定されている以上の遅れが発生し、タイムアウトによるエラーが発生する場合があった。
However, in the image processing method in the conventional image processing apparatus, when a plurality of cameras are mounted, and these cameras individually and continuously capture images and perform image processing on the captured image data. Was unsuitable.
That is, when a plurality of cameras are mounted, combinations of asynchronous processing requests from a plurality of systems increase, and it becomes difficult to set an appropriate priority order in advance. For example, depending on the degree of overlap of processing requests, the multiplicity of processing in a certain time increases and the load becomes heavy, and the load state of the CPU fluctuates every time, for example, processing that requires processing time is mixed. In such an environment, if the processing is advanced according to the priorities decided in advance, the order will not come to the low-priority processing, a delay more than expected may occur, and an error due to timeout may occur. there were.
さらに、画像撮像終了毎に各認識処理を一時中断して、優先順位を評価し、優先して実行する認識処理を決定するディスパッチ処理の負荷であるオーバーヘッドも作業効率を低下させる一因となる。特に、カメラを複数搭載する場合、ディスパッチ処理が増加してオーバーヘッドによる負荷が増大する。
また、近年のキャッシュ制御により高速化をはかっているCPUにとっては、タスクの切り替えは最小限に止めたほうがキャッシュのヒット率が保持されるために速度的に有利となる。
このように、従来方法では、優先順位の設定によっては、無駄なディスパッチ処理が発生する可能性があり、優先順位に従って想定された順番で処理を進めることはできるが、トータル的な作業効率は低下を生じるものとなっていた。
Furthermore, each recognition process is temporarily interrupted every time image capturing is completed, the priority is evaluated, and the overhead that is the load of the dispatch process for determining the recognition process to be executed preferentially also contributes to the reduction in work efficiency. In particular, when a plurality of cameras are installed, dispatch processing increases and the overhead load increases.
Also, for CPUs that have been speeded up by cache control in recent years, it is advantageous in terms of speed to keep the cache hit rate by minimizing task switching.
As described above, in the conventional method, depending on the priority setting, there is a possibility that wasteful dispatch processing may occur, and the processing can be performed in the expected order according to the priority, but the total work efficiency is reduced. Was supposed to occur.
請求項1記載の発明は、演算処理部と、
当該演算処理部と並列処理可能であって複数のカメラが接続される画像入力部と、
画像データを格納する画像メモリとを備え、
前記演算処理部は、
撮像とその撮像画像の認識処理とを実行させる複数の要求に応じて前記カメラに撮像させる撮像要求を行う撮像要求部と、
前記複数の要求に対して認識処理タスクを割り当てるタスク割り当て手段とを有し、
前記複数のカメラが非同期に連続撮像して得られる複数の画像データを処理する画像処理装置において、
前記複数の要求に基づくそれぞれの撮像完了時に前記認識処理タスクの優先順位を設定又は更新する設定手段と、
前記認識処理タスクの認識終了毎に前記優先順位に従って、次に実行すべき認識処理タスクを選定し、当該次の認識処理タスクに移行する進行管理手段と、
前記優先順位内での認識処理の優先度をさらに定め、認識処理タスクの実行順を記憶する実行可能キューへの認識処理タスクの接続順位を前記優先度に応じて並び替える優先度設定手段を備え、
前記優先度設定手段は、前記実行可能キューへの認識処理タスクの接続順位を並び替える際に、認識処理タスクがハード演算を含むか否かを判定し、ハード演算を含み、前記演算処理部との並列処理が可能な認識処理タスクについて、ハード演算占有率が高いものほど優先度を高くして並び替えることを特徴とする。
The invention according to claim 1 is an arithmetic processing unit;
An image input unit capable of parallel processing with the arithmetic processing unit and connected to a plurality of cameras;
An image memory for storing image data;
The arithmetic processing unit includes:
An imaging requesting unit for performing an imaging request to be captured by the camera in response to a plurality of requests for executing imaging and recognition processing of the captured image;
Task assignment means for assigning recognition processing tasks to the plurality of requests,
In the image processing apparatus for processing a plurality of image data obtained by continuously imaging the plurality of cameras asynchronously,
Setting means for setting or updating the priority order of the recognition processing task when each imaging based on the plurality of requests is completed;
A progress management means for selecting a recognition processing task to be executed next in accordance with the priority every time recognition of the recognition processing task is completed, and shifting to the next recognition processing task;
A priority setting unit that further determines the priority of the recognition process within the priority order and rearranges the connection order of the recognition process task to the executable queue that stores the execution order of the recognition process task according to the priority; ,
The priority setting means determines whether the recognition processing task includes a hardware operation when rearranging the connection order of the recognition processing task to the executable queue, includes a hardware operation, and includes the arithmetic processing unit and The recognition processing tasks that can be processed in parallel are rearranged with higher priority as the hardware operation occupancy is higher.
請求項2記載の発明は、演算処理部と、
当該演算処理部と並列処理可能であって複数のカメラが接続される画像入力部と、
画像データを格納する画像メモリとを備え、
前記演算処理部は、
撮像とその撮像画像の認識処理とを実行させる複数の要求に応じて前記カメラに撮像させる撮像要求を行う撮像要求部と、
前記複数の要求に対して認識処理タスクを割り当てるタスク割り当て手段とを有し、
前記複数のカメラが非同期に連続撮像して得られる複数の画像データを処理する画像処理装置において、
前記複数の要求に基づくそれぞれの撮像完了時に前記認識処理タスクの優先順位を設定又は更新する設定手段と、
前記認識処理タスクの認識終了毎に前記優先順位に従って、次に実行すべき認識処理タスクを選定し、当該次の認識処理タスクに移行する進行管理手段と、
認識処理タスクの実行順を記憶する実行可能キューへの認識処理タスクの接続順位を並び替える接続順位補正手段を備え、
前記接続順位補正手段は、
前記複数の要求に基づくそれぞれの撮像画像の認識処理に要する画像認識処理時間及び前記複数の要求に基づくそれぞれの撮像画像の認識処理について目標とする画像認識処理終了時刻とに基づいて、前記複数の要求に基づくそれぞれの撮像画像の認識処理の遅延時間を求め、それぞれの前記遅延時間の合計が低減するように認識処理タスクを並び替えることを特徴とする。
The invention according to
An image input unit capable of parallel processing with the arithmetic processing unit and connected to a plurality of cameras;
An image memory for storing image data;
The arithmetic processing unit includes:
An imaging requesting unit for performing an imaging request to be captured by the camera in response to a plurality of requests for executing imaging and recognition processing of the captured image;
Task assignment means for assigning recognition processing tasks to the plurality of requests,
In the image processing apparatus for processing a plurality of image data obtained by continuously imaging the plurality of cameras asynchronously,
Setting means for setting or updating the priority order of the recognition processing task when each imaging based on the plurality of requests is completed;
A progress management means for selecting a recognition processing task to be executed next in accordance with the priority every time recognition of the recognition processing task is completed, and shifting to the next recognition processing task;
A connection order correction means for rearranging the connection order of the recognition processing tasks to the executable queue for storing the execution order of the recognition processing tasks;
The connection order correction means includes:
Based on the image recognition processing time required for the recognition processing of each captured image based on the plurality of requests and the target image recognition processing end time for the recognition processing of each captured image based on the plurality of requests, A delay time of recognition processing of each captured image based on the request is obtained, and the recognition processing tasks are rearranged so that the total of the delay times is reduced.
請求項3記載の発明は、請求項2記載の発明と同様の構成を備えると共に、前記接続順位補正手段は、
前記複数のカメラの中で2番目以降の順番で連続撮像を行うカメラの連続撮像における最初の撮像の露光完了をトリガとして認識処理タスクの並び替えを実行することを特徴とする。
The invention according to
The rearrangement of the recognition processing tasks is executed with the completion of the exposure of the first imaging in the continuous imaging of the cameras that perform continuous imaging in the second and subsequent orders among the plurality of cameras as a trigger.
請求項4記載の発明は、演算処理部と、
当該演算処理部と並列処理可能であって複数のカメラが接続される画像入力部と、
画像データを格納する画像メモリとを備え、
前記複数のカメラが非同期に連続撮像して得られる複数の画像データを処理する画像処理装置が行う画像処理方法において、
撮像とその撮像画像の認識処理とを実行させる複数の要求に応じて前記カメラに撮像させる撮像要求を行う撮像要求工程と、
前記複数の要求に対して認識処理タスクを割り当てるタスク割り当て工程と、
前記複数の要求に基づく毎回の撮像完了時に前記認識処理タスクの優先順位を設定又は更新する設定工程とを備え、
前記認識処理タスクの認識終了毎に前記優先順位に従って、次に実行すべき認識処理タスクを選定し、当該次の認識処理タスクに移行する進行管理工程と、
前記優先順位内での認識処理の優先度をさらに定め、認識処理タスクの実行順を記憶する実行可能キューへの認識処理タスクの接続順位を前記優先度に応じて並び替える優先度設定工程とを備え、
前記優先度設定工程は、前記実行可能キューへの認識処理タスクの接続順位を並び替える際に、認識処理タスクがハード演算を含むか否かを判定し、ハード演算を含み、前記演算処理部との並列処理が可能な認識処理タスクについて、ハード演算占有率が高いものほど優先度を高くして並び替えることを特徴とする。
The invention according to
An image input unit capable of parallel processing with the arithmetic processing unit and connected to a plurality of cameras;
An image memory for storing image data;
In an image processing method performed by an image processing apparatus that processes a plurality of image data obtained by continuously imaging the plurality of cameras asynchronously,
An imaging request step for making an imaging request for imaging by the camera in response to a plurality of requests for executing imaging and recognition processing of the captured image;
A task assignment step for assigning recognition processing tasks to the plurality of requests;
A setting step for setting or updating the priority order of the recognition processing task at the time of completion of each imaging based on the plurality of requests,
A progress management step of selecting a recognition processing task to be executed next in accordance with the priority every time recognition of the recognition processing task is finished, and shifting to the next recognition processing task;
A priority setting step for further determining the priority of the recognition process within the priority order, and rearranging the connection order of the recognition process task to the executable queue storing the execution order of the recognition process task according to the priority. Prepared,
The priority setting step determines whether the recognition processing task includes a hardware operation when rearranging the connection order of the recognition processing task to the executable queue, includes a hardware operation, includes the arithmetic processing unit, The recognition processing tasks that can be processed in parallel are rearranged with higher priority as the hardware operation occupancy is higher.
請求項5記載の発明は、演算処理部と、
当該演算処理部と並列処理可能であって複数のカメラが接続される画像入力部と、
画像データを格納する画像メモリとを備え、
前記複数のカメラが非同期に連続撮像して得られる複数の画像データを処理する画像処理装置が行う画像処理方法において、
撮像とその撮像画像の認識処理とを実行させる複数の要求に応じて前記カメラに撮像させる撮像要求を行う撮像要求工程と、
前記複数の要求に対して認識処理タスクを割り当てるタスク割り当て工程と、
前記複数の要求に基づく毎回の撮像完了時に前記認識処理タスクの優先順位を設定又は更新する設定工程とを備え、
前記認識処理タスクの認識終了毎に前記優先順位に従って、次に実行すべき認識処理タスクを選定し、当該次の認識処理タスクに移行する進行管理工程と、
認識処理タスクの実行順を記憶する実行可能キューへの認識処理タスクの接続順位を並び替える接続順位補正工程を備え、
前記接続順位補正工程は、
前記複数の要求に基づくそれぞれの撮像画像の認識処理に要する画像認識処理時間及び前記複数の要求に基づくそれぞれの撮像画像の認識処理について目標とする画像認識処理終了時刻とに基づいて、前記複数の要求に基づくそれぞれの撮像画像の認識処理の遅延時間を求め、それぞれの前記遅延時間の合計が低減するように認識処理タスクを並び替えることを特徴とする。
The invention according to
An image input unit capable of parallel processing with the arithmetic processing unit and connected to a plurality of cameras;
An image memory for storing image data;
In an image processing method performed by an image processing apparatus that processes a plurality of image data obtained by continuously imaging the plurality of cameras asynchronously,
An imaging request step for making an imaging request for imaging by the camera in response to a plurality of requests for executing imaging and recognition processing of the captured image;
A task assignment step for assigning recognition processing tasks to the plurality of requests;
A setting step for setting or updating the priority order of the recognition processing task at the time of completion of each imaging based on the plurality of requests,
A progress management step of selecting a recognition processing task to be executed next in accordance with the priority every time recognition of the recognition processing task is finished, and shifting to the next recognition processing task;
A connection order correction step for rearranging the connection order of the recognition processing tasks to the executable queue for storing the execution order of the recognition processing tasks;
The connection order correction step includes:
Based on the image recognition processing time required for the recognition processing of each captured image based on the plurality of requests and the target image recognition processing end time for the recognition processing of each captured image based on the plurality of requests, A delay time of recognition processing of each captured image based on the request is obtained, and the recognition processing tasks are rearranged so that the total of the delay times is reduced.
請求項6記載の発明は、請求項5記載の発明と同様の構成を備えると共に、前記接続順位補正工程は、
前記複数のカメラの中で2番目以降の順番で連続撮像を行うカメラの連続撮像における最初の撮像の露光完了をトリガとして認識処理タスクの並び替えを実行することを特徴とする。
The invention according to
The rearrangement of the recognition processing tasks is executed with the completion of the exposure of the first imaging in the continuous imaging of the cameras that perform continuous imaging in the second and subsequent orders among the plurality of cameras as a trigger.
請求項1,2,4又は5では、複数の要求に基づいて撮像とその撮像画像の認識処理とを行う際に、撮像終了時に認識処理タスクの優先順位を更新し、認識処理タスクの認識終了毎に優先順位に従って、次に実行すべき認識処理タスクを選定し、当該次の認識処理タスクに移行する。
これにより、一の認識処理が終了したときに、次に実行可能に認識処理タスクが存在すれば割込処理を介することなく次に認識処理につなぐことができ、割込処理の発生頻度を低減し、全体の処理の遅延をなくして迅速化を図ることが可能となる。
さらに、認識処理タスクの認識処理の終了毎に次の認識処理タスクに移行するので、一の認識処理の完了が複数回の割込処理により過剰に遅延することを抑止することが可能となる。従って、優先順位が低い認識処理タスクの場合でも、待ち時間が過剰に長くなることに起因するタイムアウトの発生を低減することが可能となる。
In
As a result, when one recognition process is completed, if there is a recognition process task that can be executed next, it can be connected to the next recognition process without going through the interrupt process, reducing the frequency of occurrence of the interrupt process. In addition, it is possible to speed up by eliminating the delay of the entire process.
Furthermore, since the process proceeds to the next recognition process task every time the recognition process task is completed, it is possible to prevent the completion of one recognition process from being excessively delayed by a plurality of interrupt processes. Therefore, even in the case of a recognition processing task with a low priority, it is possible to reduce the occurrence of a timeout due to an excessively long waiting time.
さらに、請求項1又は4では、認識処理タスクがハード演算を含む場合に、そのハード演算占有率が高いものほど実行可能キューへの認識処理タスクの接続順位の優先度を高くするよう並び替える補正を行うことから、ハード演算によって得られる演算処理部の空き時間を次の認識処理タスクが有効活用することができ、複数の認識処理のトータルでの処理時間をより短くすることが可能となる。
Further, in
請求項2又は5では、複数の要求に基づくそれぞれの撮像画像の認識処理に要する画像認識処理時間と複数の要求に基づくそれぞれの撮像画像の認識処理について目標とする画像認識処理終了時刻とが既知又は取得可能である場合に、各カメラの連続撮像を開始した時刻とそれぞれの撮像画像の認識処理に要する画像認識処理時間とから、個々の撮像画像の認識処理の終了時刻を算出することができる。そして、個々の撮像について、算出した画像認識処理の終了時刻と目標とする画像認識処理終了時刻と比較することで遅延の発生及び遅延時間を求めることが可能である。
上記複数のカメラによる連続撮像を行った場合に、個々の撮像の何れかは目標とする画像認識処理終了時刻に対する余裕時間を生じる場合があるので、余裕時間を生じる撮像の認識処理タスクと遅延を生じる撮像の認識処理タスクの接続順位を入れ替えることで、いずれの認識処理タスクも遅延を解消する場合がある。
このような入れ替えによって遅延を解消する認識処理タスクの組み合わせを適宜探索し、実行可能キューへの認識処理タスクの接続順位を並び替えることにより、個々の撮像の認識処理の遅延を低減又は解消し、複数のカメラの連続撮像の認識処理のトータルでの処理時間をより短くすることが可能となる。
The image recognition processing time required for the recognition processing of each captured image based on a plurality of requests and the target image recognition processing end time for each of the captured image recognition processing based on the plurality of requests are known. Alternatively, when acquisition is possible, the end time of the recognition processing of each captured image can be calculated from the time when the continuous imaging of each camera is started and the image recognition processing time required for the recognition processing of each captured image. . Then, for each image pickup, it is possible to determine the occurrence of delay and the delay time by comparing the calculated end time of the image recognition process with the target end time of the image recognition process.
When performing continuous imaging with the above-mentioned plurality of cameras, any of the individual imaging may cause a margin time with respect to the target image recognition processing end time. Any recognition processing task may eliminate the delay by changing the connection order of the recognition processing tasks of the imaging that occurs.
By appropriately searching for a combination of recognition processing tasks that eliminate the delay by such replacement and rearranging the connection order of the recognition processing tasks to the executable queue, the delay of the recognition processing of each imaging is reduced or eliminated, It is possible to shorten the total processing time of the recognition processing for continuous imaging of a plurality of cameras.
請求項3又は6では、複数のカメラの中で2番目以降の順番で連続撮像を行うカメラの連続撮像における最初の撮像の露光完了をトリガとして、遅延時間の合計を低減させるための認識処理タスクの並び替えを実行するので、撮像完了を待たずに並び替える認識処理タスクの組み合わせを探索する処理を開始することができ、認識処理のトータルでの処理時間をさらに短くすることが可能となる。 The recognition processing task for reducing the total delay time triggered by completion of exposure of the first imaging in continuous imaging of a camera that performs continuous imaging in the second and subsequent orders among a plurality of cameras. Therefore, the process of searching for a combination of recognition processing tasks to be rearranged without waiting for the completion of imaging can be started, and the total processing time of the recognition process can be further shortened.
[発明の実施形態の全体構成]
本発明の実施形態について、図1乃至図17に基づいて説明する。本実施形態は、撮像画像内の電子部品Cにおける中心位置や傾きを検出するために画像処理を行う画像処理装置19が電子部品実装装置100に搭載され、電子部品Cを基板Kに実装する位置決め制御に利用される場合の例を示している。
[Overall Configuration of Embodiment of Invention]
An embodiment of the present invention will be described with reference to FIGS. In this embodiment, an
[電子部品実装装置]
図1は電子部品実装装置100の平面図である。電子部品実装装置100は、基板Kに各種の電子部品Cの搭載を行うものであって、電子部品Cの搭載手段として、図1に示すように、搭載される電子部品Cを供給する複数の電子部品フィーダ101と、電子部品フィーダ101を複数並べて保持する電子部品供給部としてのフィーダバンク102と、一定方向に基板Kを搬送する基板搬送手段103と、当該基板搬送手段103による基板搬送経路の途中に設けられた基板Kに対する電子部品搭載作業を行うための搭載作業部104と、電子部品Cを吸着する吸着ノズル108を保持して電子部品Cの保持を行う部品保持手段としてのヘッド106と、ヘッド106を所定範囲内の任意の位置に駆動搬送するヘッド移動手段としてのX−Yガントリ107と、吸着ノズル108に吸着された電子部品Cの撮像を行う部品用カメラ6と、搭載作業部104の基板Kに付された基板マークMの撮像を行う基板用カメラ4と、部品用カメラ6による撮像位置に照明光を照射する照明装置(図示略)と、基板用カメラ4による撮像位置に照明光を照射する照明装置(図示略)と、電子部品実装装置100の各構成に対して制御を行うマシン制御装置13(図3参照)と、マシン制御装置13に対して作業者による各種の設定の入力及びコマンドの入力を行うためのマンマシンインターフェイス(図示略)と、カメラ4又は6の撮像画像から探索対象となる電子部品C又は基板マークMの位置認識処理を実行する画像処理装置19(図3参照)とを備えている。
また、上記電子部品実装装置100は、基板搬送手段103を挟んでその両側に、電子部品フィーダ101、フィーダバンク102、ヘッド106、X−Yガントリ107、部品用カメラ6及び基板用カメラ4をそれぞれ一つずつ設ける構成としている。
画像処理装置19は、カメラ4又は6による基板マークM又は電子部品Cの撮像画像からこれらの正確な位置情報を求め、マシン制御装置13に出力することでヘッド106の位置決め動作に反映させるために利用される。
カメラ4及び6はいずれもCCDカメラ又はCMOSカメラであり、部品用カメラ6は定位置において下方から吸着ノズル108に吸着された電子部品Cを撮像し、基板用カメラ4はヘッド106に搭載されて上方から搭載作業部104に搬送された基板Kの基板マークMを撮像する。
[Electronic component mounting equipment]
FIG. 1 is a plan view of the electronic
The electronic
The
The
以下の説明では、主に部品用カメラ6により電子部品Cが撮像される場合を例として説明を行うが、撮像対象は電子部品Cに限定されるものではなく、基板用カメラ4による基板マークMの撮像時にも後述する構成及び処理が適用可能であることは言うまでもない。
また、以下の説明において、水平面に沿って互いに直交する一の方向をX軸方向とし、他の方向をY軸方向とし、垂直上下方向をZ軸方向と称することとする。
In the following description, the case where the electronic component C is imaged mainly by the
In the following description, one direction orthogonal to each other along the horizontal plane is referred to as an X-axis direction, the other direction is referred to as a Y-axis direction, and a vertical vertical direction is referred to as a Z-axis direction.
基板搬送手段103は、図示しない搬送ベルトを備えており、その搬送ベルトにより基板をX軸方向に沿って搬送する。
また、前述したように、基板搬送手段103による基板搬送経路の途中には、電子部品を基板Kへ搭載する搭載作業部104が設けられている。基板搬送手段103は、搭載作業部104まで基板Kを搬送すると共に停止して、図示しない保持機構により基板Kの保持を行う。つまり、基板Kは保持機構により保持された状態で安定した電子部品Cの搭載作業が行われる。
The
Further, as described above, the mounting
それぞれのヘッド106は、その先端部で空気吸引により電子部品Cを保持する六本の吸着ノズル108と、この吸着ノズル108をZ軸方向に駆動する駆動源であるZ軸モータと、吸着ノズル108を介して保持された電子部品CをZ軸方向を中心として回転駆動させる回転駆動源であるθ軸モータとが設けられている。
また、吸着ノズル108は負圧発生装置に接続され、当該吸着ノズル108の先端部において吸気吸引を行うことにより電子部品Cの吸着及び保持が行われる。
つまり、これらの構造により、搭載作業時には、吸着ノズル108の先端部で所定の電子部品フィーダ101から電子部品Cを吸着し、所定位置で基板に向かって吸着ノズル108を下降させると共に吸着ノズル108を回転させて電子部品Cの向きの調整を行いつつ搭載作業が行われる。
また、前述した各部品用カメラ6は、ベースフレーム114に固定支持されている。
Each
Further, the
That is, due to these structures, during the mounting operation, the electronic component C is sucked from the predetermined
Each
各X−Yガントリ107は、X軸方向にヘッド106の移動を案内するX軸ガイドレール107aと、このX軸ガイドレール107aと共にヘッド106をY軸方向に案内する二本のY軸ガイドレール107bと、X軸方向に沿ってヘッド106を移動させる駆動源であるX軸モータと、X軸ガイドレール107aを介してヘッド106をY軸方向に移動させる駆動源であるY軸モータとを備えている。そして、各モータの駆動により、ヘッド106を二本のY軸ガイドレール107bの間となる領域のほぼ全体に搬送することを可能としている。
なお、各X−Yガントリ107は、二本のY軸ガイドレール107bを共用している。
また、各モータには、ぞれぞれの回転量を検出するエンコーダが装備されており、その回転角度がマシン制御装置13に認識され、所望の回転量となるように制御されることにより、ヘッド106を介して吸着ノズル108の位置決めやカメラ6への移動を行っている。
Each
Each XY gantry 107 shares two Y-
In addition, each motor is equipped with an encoder that detects the amount of rotation of each motor, and the rotation angle is recognized by the
各フィーダバンク102には、複数の電子部品フィーダ101がX軸方向に沿って羅列して載置装備される。
各電子部品フィーダ101は、後端部に電子部品Cが一列に並んで封止された部品テープのリール(図示略)が保持されており、部品テープはリールから電子部品フィーダ101の先端部(基板側の端部)の上側に設けられた部品受け渡し位置101aまで繰り出され、当該部品受け渡し位置101aにおいて吸着ノズル108により電子部品Cの吸着が行われるようになっている。
Each
Each
マシン制御装置13は、基板Kに搭載する電子部品Cのリスト、搭載順番、各電子部品Cの部品吸着位置(いずれの電子部品フィーダ101から受け取るか)及び基板Kにおける搭載位置等が定められた搭載プログラムを記録し、当該搭載プログラムに従って各X−Yガントリ107のX軸モータ、Y軸モータ及びZ軸モータを制御し、ヘッド106の位置決め制御を行う。また、このマシン制御装置13は、吸着時の電子部品Cに対してθ軸モータを駆動して吸着ノズル108を回転させて角度修正制御を行い、X軸モータ及びY軸モータにより位置修正制御を行う。
また、マシン制御装置13は、上記電子部品Cの角度修正制御及び位置修正制御を行うために、各カメラ6による電子部品Cの撮像制御と電子部品Cの位置や姿勢を認識するための要求を画像処理装置19に対して実行する。
In the
In addition, the
上記構成からなる電子部品実装装置100は、図2の動作フローチャートに従って電子部品の搭載を行う。
即ち、マシン制御装置13は、X−Yガントリ107のX軸モータ、Y軸モータを制御してヘッド106を電子部品Cの所定の電子部品フィーダ101に対する吸着位置に移動し(ステップS101)、Z軸モータを制御して所定の吸着ノズル108の下降により電子部品Cの吸着を行う(ステップS102)。
なお、複数の電子部品Cをそれぞれ複数の吸着ノズル108に吸着するために、ステップS101とS102の動作は、電子部品Cの吸着数に応じて繰り返し実行する。
しかる後に、部品用カメラ6の撮像位置に向かってヘッド106の移動を開始する(ステップS103)。
かかる移動の際には、まず、X−Yガントリ107のX軸モータ、Y軸モータを所定の目標速度まで加速させ(ステップS104)、目標速度に達すると、当該目標速度を維持しつつ各電子部品Cについてカメラ6の撮像位置を通過させる(ステップS105)。この時、画像処理装置19では、部品用カメラ6を制御して撮像を実行する。
各電子部品Cの撮像後は、マシン制御装置13は、X−Yガントリ107のX軸モータ、Y軸モータを制御して、所定の低速状態となるまで減速し(ステップS106)、基板Kに対する搭載位置にヘッド106を移動させる(ステップS107)。その際、必要があれば、基板マークMの撮像位置にヘッド106を移動して基板マークMの撮像を実行する。
その後、ヘッド106が搭載位置に位置決めされると、Z軸モータを制御して吸着ノズル108を下降し、電子部品Cの搭載を行う(ステップS108)。
また、ヘッド106が吸着を行っている全ての電子部品Cについて搭載が完了したか否かが判定され(ステップS109)、全ての電子部品Cについて搭載が完了するまで、ステップS107とS108の動作が繰り返し実行される。
そして、全ての電子部品Cについて搭載が完了すると、搭載動作制御は終了する。
なお、上記の動作制御では、後述するノンストップ撮像の場合を例示したが、ストップ撮像の場合には、ステップS104において各モータの加速から減速までを行い、ステップS105で撮像位置でヘッド106を位置決め停止させて撮像を行い、ステップS107で各モータの加速から減速までを行い、ステップS108で搭載位置で位置決め停止を行う。
また、上記の動作制御では、一方のヘッド106についてのみ説明を行ったが、実際には、各ヘッド106についてステップS101〜S109までの制御が非同期で個々に実行される。
また、画像処理装置19は、上記ステップS103からステップS108までの間で、電子部品Cの位置及び姿勢の認識処理を実行する。
The electronic
That is, the
Note that the operations of steps S101 and S102 are repeatedly executed according to the number of sucked electronic components C in order to suck the plurality of electronic components C to the plurality of
Thereafter, the
In such movement, first, the X-axis motor and Y-axis motor of the
After imaging each electronic component C, the
After that, when the
Further, it is determined whether or not the mounting of all the electronic components C to which the
Then, when the mounting of all the electronic components C is completed, the mounting operation control ends.
In the above-described operation control, the case of non-stop imaging, which will be described later, is illustrated. However, in the case of stop imaging, the
Further, in the above-described operation control, only one
In addition, the
[画像処理装置]
図3は、電子部品実装装置100に搭載された画像処理装置19とその周辺の装置構成図である。
画像処理装置19は、個々に非同期に撮像を行う基板用カメラ4,4(図3では図示略)と、個々に非同期に撮像を行う部品用カメラ6,6と、各基板用カメラ4,4の照明装置(図示略)と、各部品用カメラ6の照明装置8(図4参照)と、各カメラ4,6の撮像制御及び撮像による画像データを記憶する画像入力部15と、画像データから基板マークMの位置認識、種別の識別、電子部品Cの位置及び姿勢の認識のための認識処理を行う演算処理部18とを備えている。
また、画像入力部15は、LANポート20とこれに接続された画像メモリ7とを備えており、このLANポート20には追加の部品用カメラ6の増設が可能となっている。
例えば、カメラ6からUDP(User Datagram Protocol)により画像が転送される場合、LANポート20にてパケットの取りこぼしが無いように配慮し、どの処理よりも最優先でパケットを画像に変換する必要がある。
なお、基板用カメラ4もLANポートを設けて増設可能としても良い。
[Image processing device]
FIG. 3 is a configuration diagram of the
The
The
For example, when an image is transferred from the
The
画像入力部15は演算処理部18の制御CPU11と並列で動作が可能である。
各部品用カメラ6(増設した部品用カメラ6を含む、以下、同様)は、それぞれ非同期に撮像を行い、それぞれの入力回路3を介して個別の画像メモリ7に画像データを記憶することができる。
また、図示を省略しているが、基板用カメラ4,4も非同期に撮像を行い、それぞれの入力回路を介して個別の画像メモリに画像データを記憶することができる。
そして、各画像メモリ7は、出力回路5を介してモニタ16に接続されており、各カメラ4,6により撮像した画像データを表示することができる。
また、画像入力部15では、撮像処理以外に、演算制御回路9を用いて、画像メモリ7に記憶された画像データに対して、フィルタ演算やマッチング演算などの大量の繰り返しの演算処理を制御CPU11と並列で高速に動作させることが可能である。即ち、これらの繰り返し演算処理は制御CPU11に負荷がかからないようになっている。
The
Each component camera 6 (including the added
Although not shown, the
Each
In addition to the imaging process, the
演算処理部18は、制御CPU11が画像処理を行うための作業用メモリ10と、制御CPU11を電子部品実装装置100の全体を制御するマシン制御装置13と接続するインターフェイス12とを備えている。また、制御CPU11と画像入力部15とは内部バス(PCIe)で接続されている。
そして、各カメラ6からのデータは、各画像メモリ7に格納されるのと並列して、演算制御回路9にてデータ処理が行われ、制御CPU11がアクセス可能な作業用メモリ10にデータ転送されるようになっている。
画像撮像の指令は、制御CPU11が出す。各カメラ6に撮像させる撮像要求を出した後、制御CPU11は、上述の撮像、及びデータ転送処理中は別の作業を行うことが可能である。
演算制御回路9で行うデータ処理は、撮像時だけでなく、制御CPU11の指令で、いつでも各画像メモリ7のデータに対して行うことができる。
制御CPU11は、作業用メモリ10のデータ処理中においても、演算制御回路9を制御して並列処理を行うことで効率良く作業を進めることができる。
また、マシン制御装置13からの処理要求は、コマンドとして、インターフェイス12を介して画像処理装置19に送信され、画像処理装置19での処理結果がレスポンスとして、マシン制御装置13に返信される。
The
The data from each
The
Data processing performed by the
Even during data processing in the
A processing request from the
[撮像制御]
図4は電子部品Cの撮像に関する主要な構成を示した説明図、図5は撮像方式の説明図であって図5(A)は電子部品のストップ撮像における平面図、図5(B)は基板マークのストップ撮像における平面図、図5(C)は電子部品のノンストップ撮像における平面図、図5(D)は基板マークのノンストップ撮像における平面図である。
画像処理装置19に接続された部品用カメラ6の上部に照明装置8が設けられ、撮像時には点灯するよう画像処理装置19により制御される。
マシン制御装置13は、撮像対象となる電子部品Cを各吸着ノズル108に電子部品フィーダ101からピックアップし、吸着保持した後、各吸着ノズル108を備えるヘッド106を制御して、部品用カメラ6の上に移動させ、撮像を行う。
[Imaging control]
4 is an explanatory diagram showing a main configuration relating to imaging of the electronic component C, FIG. 5 is an explanatory diagram of an imaging method, FIG. 5A is a plan view in stop imaging of the electronic component, and FIG. FIG. 5C is a plan view of non-stop imaging of an electronic component, and FIG. 5D is a plan view of non-stop imaging of a substrate mark.
An illuminating
The
[撮像方式]
撮像方式として、静止撮像としてのストップ撮像と移動撮像としてのノンストップ撮像の2つをサポートする。
図5(A)に示すように、ストップ撮像は、部品用カメラ6上で対象物である電子部品Cを静止させ、照明装置8を点灯させ、画像処理装置19に撮像を指示する。
また、ノンストップ撮像は、あらかじめ画像処理装置19に撮像タイミングを示すX軸モータのエンコーダカウンタ値をセットしておき、エンコーダパルスを画像処理装置19に入力し、図5(C)に示すように、ヘッド106の移動により設定されたカウント値になったら、画像処理装置19が照明装置8を点灯させ、部品用カメラ6による撮像を実行する。
[Imaging method]
Two imaging methods are supported: stop imaging as still imaging and non-stop imaging as moving imaging.
As shown in FIG. 5A, in stop imaging, the electronic component C that is an object is stopped on the
For non-stop imaging, an X-axis motor encoder counter value indicating imaging timing is set in the
また、基板マークMの撮像についても同様である。
即ち、ストップ撮像は、図5(B)に示すように、基板マークM上で基板用カメラ4を静止させ、照明装置を点灯させ、画像処理装置19に撮像を指示する。
また、ノンストップ撮像は、あらかじめ画像処理装置19に撮像タイミングを示すX軸モータのエンコーダカウンタ値をセットしておき、エンコーダパルスを画像処理装置19に入力し、図5(D)に示すように、ヘッド106の移動により設定されたカウント値になったら、画像処理装置19が照明装置を点灯させ、基板用カメラ4による撮像を実行する。
The same applies to the imaging of the substrate mark M.
That is, in stop imaging, as shown in FIG. 5B, the
In non-stop imaging, an X-axis motor encoder counter value indicating imaging timing is set in the
ノンストップ撮像で、ヘッド106に設けられた複数の吸着ノズル108に保持される複数の電子部品(ここでは、ノズル108,電子部品C共に三つのみを図示する)をヘッド106が部品用カメラ6上をノンストップで移動する際に、連続的に撮像し、各々の画像データを順次別々のメモリ空間に格納する。
画像処理装置19は画像撮像を最優先し、マシンの動きに合わせて所望の画像を取りこぼさないようにしている。
また、ノンストップ撮像においては、複数の電子部品Cについて個別にマシン制御装置13から画像処理装置19に認識コマンドを出すものとし、認識コマンド順序が各電子部品Cの搭載順を示すものとする。
これにより、例えば、各吸着ノズル108の並び順と各電子部品Cの搭載の順番が一致している場合には、画像処理装置19は連続処理される複数の電子部品Cが順番に撮像されると、個々の電子部品Cについてその搭載の順番を識別することができ、例えば、搭載の順番に従って認識の優先順位が定められているような場合には、これに応じた認識処理を実行することができる。
In the non-stop imaging, the
The
In non-stop imaging, a recognition command is issued from the
Thereby, for example, when the arrangement order of the
また、ノンストップ撮像において、ヘッド106の移動速度が既知であるとすると、画像処理装置19には撮像タイミングを示すX軸モータのエンコーダカウンタ値が予めセットされているので、画像処理装置19は、第1の撮像(最初の電子部品の撮像)の完了のタイミングを検知できたなら、以降の撮像(残りの電子部品の撮像)の完了のタイミングの予測が可能である。
また、画像処理装置19は、認識対象物の種別や端子数等のデータから、制御CPU11による撮像画像の認識処理に要する画像認識処理時間の予測が可能である。
このとき、画像処理装置19が、連続処理される複数の電子部品Cについて、マシン制御装置13から搭載の順番だけでなく、最後の電子部品の画像撮像完了から個々の電子部品Cの搭載位置までの移動時間という相対的なタイミング情報が受け渡される事で、ヘッド移動に支障をきたさない程度に余裕を持ったタスクのスケジューリングが可能となる。また、複数のカメラによる複数の画像入力系統の処理についても、それぞれの系統の第1の撮像がすべて完了した時点で複数の画像入力系統の処理をひとつの時間軸に並べることができるようになる。
即ち、最後の電子部品Cの画像撮像完了の時刻と相対的なタイミング情報とにより、個々の電子部品Cがそれぞれの搭載位置に到達する時刻(目標とする画像認識終了時刻)を算出することが可能である。
これにより、図3に示すように複数の画像入力系統について、非同期に撮像タイミングが重なり又は時間的に近接し、複数の認識処理を行わなければならない場合に、先の側の認識処理のスケジューリングの余裕時間になるべく影響を与えずに後の側の認識処理を割り込ませていき、複数の画像入力系統に対して、効率的に認識処理を実行することができる。この効率的な認識処理については図13の例により後述する。
If the moving speed of the
Further, the
At this time, the
That is, the time (target image recognition end time) at which each electronic component C reaches its mounting position can be calculated based on the time when the last electronic component C has completed image capturing and the relative timing information. Is possible.
As a result, as shown in FIG. 3, when a plurality of image input systems are asynchronously overlapped or close in time and a plurality of recognition processes must be performed, scheduling of the recognition process on the previous side is performed. The recognition process on the later side can be interrupted without affecting the margin time as much as possible, and the recognition process can be efficiently executed for a plurality of image input systems. This efficient recognition process will be described later with reference to the example of FIG.
[タスク構成]
次に、画像処理装置19において、画像認識のために制御CPU11により実行されるプログラムのタスク構成を図6に示す。これにより、上記タスク構成について説明する。
図6に示すタスク構成は、主に、コマンド管理を行う「タスク割り当て手段」としてのコマンド受付タスク34と、認識処理を行う三つの認識処理タスク37〜39と、サブルーチンモジュールである画像入力API(Application Program Interface)35と、タイマ割込みを処理するハンドラのボディ部であるタイマ処理46と、撮像終了割り込みを処理するハンドラのボディ部である割込み処理36とから成る。なお、認識処理タスクの個体数は、処理の数に応じて増減することが可能である。
また、図6の符号45はコマンド管理ブロック、47は画像入力ステータス管理ブロックを示している。
Task configuration
Next, FIG. 6 shows a task configuration of a program executed by the
The task configuration shown in FIG. 6 mainly includes a
In FIG. 6,
また、図6に示すタスク構成は、UDP画像変換タスク50とUDP画像認識タスク51とを備えている。エンコーダパルスなどをトリガにして入力された同期信号により、画像データ32がUDP変換タスク50に取り込まれる。このときUDPにより画像データ32が、連続した複数のパケットにより送信されることを想定すると、UDPはハンドシェイクをしないため、UDP変換タスク50は連続した複数のパケットを取りこぼさないような配慮が必要となる。多数のパケットを取りこぼしてしまい、画像処理装置19から不必要なパケット再送要求が頻発しないように、UDP変換タスク50はどの処理よりも最優先で実施されることが望ましい。
取り込みが完了するとUDP画像認識タスク51を呼び出し、画像処理を実施後、認識結果を取得する。
Further, the task configuration shown in FIG. 6 includes a UDP
When the capture is completed, the UDP
[タスク構成:コマンド受付タスク]
図3のマシン制御装置13から画像処理装置19への撮像とその撮像画像の認識処理とを実行させる要求は図6に示すコマンド30として通知される。
コマンド受付タスク34は、コマンド30を受信すると、コマンド管理ブロック45を参照し、タスクのリソースを獲得して、受け付けたコマンドを登録する。
そして、獲得した認識処理タスク37(又は38又は39)に対してコマンド30を送信し、起床させる。そして、コマンド受付タスク34は、次のコマンド待ち状態となる。
これにより、コマンド受付タスク34は「前記複数の要求に対して認識処理タスクを割り当てるタスク割り当て手段」として機能し、当該機能の実行により「タスク割り当て工程」が実行される。
[Task structure: Command reception task]
A request for executing imaging from the
When receiving the command 30, the
Then, the command 30 is transmitted to the acquired recognition processing task 37 (or 38 or 39) to wake up. Then, the
Thereby, the
認識処理タスク37(又は38又は39)はコマンドの内容を解析し、撮像要求部としての画像入力API35を呼び出し、画像撮像要求を行い、画像撮像が終了したら、ノンストップ部品認識40、ストップ部品認識41、ノンストップ基板マークM認識48、ストップ基板マークM認識49、メンテナンスコマンド43、ティーチング44の六つのカテゴリのコマンドモジュールの内、コマンド30に該当するモジュールを呼び出して、コマンド処理を実行する。
The recognition processing task 37 (or 38 or 39) analyzes the content of the command, calls the
また、それぞれのコマンド処理で図3の画像入力部15の演算制御回路9を用いたハード演算処理を行うか否かを判定し、作業用メモリ10(図3)内のコマンド管理ブロック45に保持しておく。
ハード演算処理を行う場合、コマンド処理時間に対してするハード演算処理時間の推定値の割合であるハード演算占有率を同時に求めておいてもよい。コマンド処理時間、ハード演算処理時間の推定値、及びハード演算占有率は、同じく、作業用メモリ10(図3)内のコマンド管理ブロック45に保持しておく。
Further, in each command process, it is determined whether or not the hardware calculation process using the
When performing a hard calculation process, a hard calculation occupation ratio, which is a ratio of an estimated value of the hard calculation process time to the command processing time, may be obtained at the same time. The command processing time, the estimated value of the hardware operation processing time, and the hardware operation occupancy rate are similarly held in the
また、認識処理タスク37〜39の優先順位は、コマンド受付タスク34に比べて低く設定されており、認識処理タスク37の実行中に、次のコマンドを受信したならば、コマンド受付タスク34が再び起床し、コマンド30の受信、コマンド管理ブロック45の参照、空きリソースの獲得及び受け付けたコマンドの登録が行われる。そして、獲得した認識処理タスク38(又は39)に対してコマンド30を送信し、起床させる。コマンド受付タスク34は、再び次のコマンド待ち状態となる。
Further, the priority order of the
[タスク構成:認識処理タスク]
図7は認識処理タスク37〜39が実行する処理種別毎の優先順位の一例を示す図表である。
認識処理タスク37〜39が実行する処理種別毎の優先順位は高、中、低の3レベルで段階的に定義され、処理種別と撮像方法の種類とによって優先順位が割り当てられている。優先順位のレベルや割り当てのルールは使用するRTOS(real time operation system)の仕様、実装するアプリケーションの仕様に合わせて、自由に設定することができるが、ここでは、画像処理装置19において採用されている一例を説明する。
[Task structure: Recognition task]
FIG. 7 is a chart showing an example of the priority order for each processing type executed by the
Priorities for each processing type executed by the
この電子部品実装装置100に搭載された画像処理装置19においては、ノンストップ撮像で部品認識又はマーク認識処理を行う場合には、直ぐに次コマンドが投入されて、タイトな間隔での高速な処理が要求される場合が多いので優先順位を最も高い「高」としている。それに比べて、ヘッドが止まった状態で撮像を行うストップ撮像で部品認識又はマーク認識処理を行う場合は、ノンストップ撮像よりも時間的な余裕があるので優先順位を「中」としている。また、部品認識やマーク認識のように生産中のタクトが要求される処理ではないメンテナンスコマンドに関する処理は優先順位を「低」としている。
なお、優先順位が同じタスクが複数存在する場合には、処理が可能となった順番に実行される。例えば、ノンストップ撮像の場合には、対応する撮像が完了した順番でタスクが実行される。
In the
When there are a plurality of tasks having the same priority, the tasks are executed in the order in which processing is possible. For example, in the case of non-stop imaging, tasks are executed in the order in which corresponding imaging is completed.
図8に「撮像とその撮像画像の認識処理とを実行させる複数の要求」としての複数の撮像認識コマンドが入力され、当該各コマンドが登録されて実行可能状態となった認識処理タスク37〜39の管理方法を示す。
図7に示す優先順位の設定に従って、実行タスクの切り替えは、RTOSの機能を用いて実現する。
各認識処理タスク37〜39は、いずれも、休止状態から実行可能状態に遷移すると、図8のような優先順位別のキューにつながれ、管理される。優先順位が同じタスクについては、基本的に先に実行可能状態になった順番につながれる。即ち、この画像処理装置19の例では、撮像が終了した順番に応じてキューにつながれて、同じ優先順位の中での優先度がさらに定められる。
In FIG. 8, a plurality of imaging recognition commands as “a plurality of requests for executing imaging and recognition processing of the captured images” are input, and the
According to the priority order setting shown in FIG. 7, the switching of execution tasks is realized by using the RTOS function.
When each of the
また図8に示す処理では、UDP画像変換タスク50による最優先処理を実行している。どの認識タスクよりも優先して、UDP画像変換タスク50を実行する。基本的にUDP画像変換タスク50により画像が完成した順番にUDP画像認識タスク51が呼び出され、実行可能状態になりキューにつながれる。
図8ではUDP画像認識タスク51の優先順位を「高」とした場合を図示しているがこれに限らない。例えば、ノンストップ撮像による部品又はマーク認識タスクの優先順位「高」とUDP画像変換タスク50の優先順位「最優先」との間に新たな優先順位を新規設定し、当該優先順位にUDP画像認識タスク51のキューをつないで、他の認識タスクよりも高順位で処理を実施しても良い(図8では図示しない)。
In the process shown in FIG. 8, the highest priority process by the UDP
Although FIG. 8 illustrates a case where the priority order of the UDP
但し、連続する複数の認識処理について搭載順序の指示がある場合は、キューへの挿入位置を制御し、同一優先順位のタスクについても、さらに細かな優先度を定めることができる。即ち、この搭載順序に基づく優先度は、図6のコマンド管理ブロック45に予め登録され、認識処理タスク37〜39をキューに接続する際に参照して搭載順序を比較し、搭載順序に応じたキューへの挿入位置を判定してつなげるようにする。このようにすれば、持ち時間を効率的に使え、実装装置全体として効率よく処理を進めることができる。
However, when there is an instruction for the mounting order for a plurality of consecutive recognition processes, the insertion position into the queue can be controlled, and a finer priority can be determined for tasks of the same priority. That is, the priority based on this mounting order is registered in advance in the
また、コマンド管理ブロック45(図6)に保持しておいたハード演算を行うか否かの情報は、認識処理タスク37〜39をキューに接続する際に参照して、ハード演算を行う認識処理タスクを先に実行するようキューへつなげることでハード演算中にその後ろの認識処理タスクの制御CPU11による処理を行えるようになり、そのまま後ろにつなげていた場合より、2つの認識処理タスクのトータル処理時間を短縮できる。また、同時にコマンド管理ブロック45(図6)に保持しておいたハード演算占有率を用いて、ハード演算を行い且つハード演算占有率(認識処理内で演算制御回路9によるハード演算を行う比率)が高い認識処理タスクほど、優先度を高くしてキューに対する並び替えを行うことでよりきめ細かな制御が可能となる。
例えば、キューの順番入れ替えだけでなく、同一優先レベル内で優先度に差をつけることが可能となる。
これにより、上記制御CPU11は、「前記優先順位内での認識処理の優先度をさらに定め、認識処理タスクの実行順を記憶する実行可能キューへの認識処理タスクの接続順位を前記優先度に応じて並び替える優先度設定手段」として機能し、「前記実行可能キューへの認識処理タスクの接続順位を並び替える際に、認識処理タスクがハード演算を含むか否かを判定し、ハード演算を含み、前記演算処理部との並列処理が可能な認識処理タスクについて、ハード演算占有率が高いものほど優先度を高くして並び替える」処理を行う。また、これらを実行することにより、「優先度設定工程」が実行されることとなる。
そして、RTOSは、ディスパッチ要求があると、最も優先順位の高く、その中でもキューの最も先頭につながれたタスク(例えば、図8における左上のタスク)を実行状態へと遷移させる。
Further, the information on whether or not to perform the hardware operation held in the command management block 45 (FIG. 6) is referred to when the
For example, it is possible not only to change the order of the queues but also to differentiate the priorities within the same priority level.
As a result, the
When there is a dispatch request, the RTOS has the highest priority, and among them, the task connected to the head of the queue (for example, the upper left task in FIG. 8) transitions to the execution state.
ここで、基本的な動作パターンである一軸(一つのヘッドによる部品実装動作)でのノンストップ撮像時の動作のタイミングチャートを示す図9を参考にしつつ、認識処理タスク37〜39について説明する。
ノンストップ撮像における3つの撮像認識のコマンド要求が連続して投入されると、コマンド受付タスク34はコマンド管理ブロック45の参照、タスクのリソースの獲得、受け付けたコマンドの登録の処理を繰り返す(時刻t1〜t2)。
これにより、認識処理タスク37、38及び39は、撮像認識コマンドを受信した順番に実行可能状態となり、それぞれのタスクの実行内容に基づく優先順位によって、実行状態となるタスクが決定することになる。いずれのタスクも優先順位が同じである場合には、基本的に先に実行可能状態となっているタスクが優先される。つまり、各認識処理タスク37〜39は、画像撮像が完了した順に処理されることになる。
Here, the
When three imaging recognition command requests in non-stop imaging are successively input, the
As a result, the
ノンストップ撮像で連続的に複数の電子部品の認識が行われる場合、最初に搭載される電子部品の認識処理タスクについては、同一優先順位の実行可能タスクキューの先頭につながれて、最優先で処理されるが、実行可能タスクキューの先頭に接続されたタスクが既に実行中である場合には、その次に接続するようにすれば、現在実行中のタスクを中断することがなく、画像処理装置全体として効率よく処理を進めることができる。 When multiple electronic components are recognized continuously with non-stop imaging, the first electronic component recognition processing task is connected to the top of the executable task queue of the same priority and processed with the highest priority. However, if the task connected to the head of the executable task queue is already being executed, if the next connection is made, the currently executing task is not interrupted, and the image processing apparatus As a whole, the processing can proceed efficiently.
また、認識処理タスク37〜39の優先順位は、リアルタイムに画像撮像が行えるよう、最初の画像撮像終了までは、すべての認識処理タスクに対して同様に、最も高い優先順位が設定される。これにより、認識処理タスク37が画像撮像要求を出すと、最優先で撮像が開始され、他の処理が先に実行される事により撮像が遅れを生じるような事態を排除し、適正なタイミングで撮像が実行されることとなる。そして、先に実行状態となっていた認識処理タスク37が画像撮像要求を出し(時刻t2)、続いて認識処理タスク38、39の順で撮像要求を出すこととなる。
なお、上述のように各認識処理タスク37〜39について当初は最も高い優先順位が設定されるが、認識処理タスク37の画像データが取得されると、処理種別及び撮像方法によって定められた優先順位に再設定される。このような優先順位の再設定は、カメラを複数使用する場合にも同様に行われる。即ち、制御CPU11は、「前記複数の要求に基づくそれぞれの撮像完了時に前記認識処理タスクの優先順位を設定又は更新する設定手段」として機能する。また、当該機能により「第一の設定工程」が実行される。
また、このように連続して画像撮像要求を出す場合、最初の撮像である第1画像データ撮像が行われると(時刻t3〜t4)、その終了時にのみ割込み通知要求を設定し(時刻t4)、二番目以降の撮像終了時(時刻t7,t10)についてはあえて割込み通知要求を設定しない。
Further, the priority of the
As described above, the highest priority is initially set for each of the
Further, when the image capturing request is continuously issued in this way, when the first image data capturing that is the first image capturing is performed (time t3 to t4), an interrupt notification request is set only at the end (time t4). The interrupt notification request is not set at the end of the second and subsequent imaging (time t7, t10).
画像撮像、画像データの転送など図3に示す画像入力部15のハードウエアがサポートする機能を呼び出すためのモジュールとして設けたのが画像入力API35である。画像入力API35は、ハードウエア依存部分を隠蔽し、独立性の高いアプリケーションの実装を実現している。
画像入力API35での処理は、ハードウエアのキックとその返答待ちである。画像入力API35は、サブルーチンとして呼び出されるので、認識処理タスクとして動作する。
画像入力API35を呼び出した時点で既に画像撮像が終了していれば、そのまま処理は続行されるが、画像撮像を行う場合、認識処理タスクは画像撮像が終了するまでは、休止状態となる。
An
The processing in the
If image capturing has already been completed when the
例えば、図9では、3つの認識処理タスクが撮像要求を出した後、すべてのタスクは撮像終了待ちとなっている。第1画像データ撮像が時刻t4で終了すると、撮像通知割込み33がかかり、割込み処理36が実行される(時刻t4)。割込み処理36は、割込み要因を解析し、該当する画像の撮像終了(第1画像データ)を待っている認識処理タスク37を起床する(時刻t5)。
For example, in FIG. 9, after three recognition processing tasks issue imaging requests, all tasks are waiting for completion of imaging. When the first image data imaging ends at time t4, an imaging notification interrupt 33 is activated and the interrupt
認識処理タスク37は、画像データを取得し、認識処理に移行した時点で処理種別によって、適切な優先順位に動的に切り替えられる。
このタイミングでタスクのディスパッチ処理が動作し、複数の認識処理タスクが実行可能であった場合、優先順位の高いタスクに切り替わる。
図9の場合は、時刻t5において、他に実行可能なタスクが存在しないので(認識処理タスク38,39は画像データを取得していないので)、これらの処理は行われず、そのまま、認識処理タスク37が実行される。
一方、画像入力部15は制御CPU11と並行処理が可能であるため、第2画像データ撮像処理が第1画像認識処理中に実行される(時刻t6〜t7)。
そして、認識処理結果を示すレスポンスが生成されたならば、コマンド受付タスク34に送信され、図3の画像処理装置19からマシン制御装置13へとレスポンス31が受け渡されることになる。
The
When the task dispatch process operates at this timing and a plurality of recognition processing tasks can be executed, the task is switched to a task with a higher priority.
In the case of FIG. 9, since there is no other executable task at time t5 (because the
On the other hand, since the
If a response indicating the recognition processing result is generated, the
こうして、認識処理タスク37が終了した時点で、同じ優先順位で、かつ第2画像データ撮像が終了している認識処理タスク38に制御が移る(時刻t8)。そして同様な処理を経て、第3画像データ撮像処理が第2画像認識処理中に実行される(時刻t9〜t10)と共に、認識処理結果のレスポンスが返答され、認識処理タスク38が終了したら(時刻t11)、認識処理タスク39に制御が移る(時刻t11〜t12)。
これらの過程において、画像認識処理が次の画像データ撮像の完了より早く終了しない限り、第2画像データ、第3画像データの撮像終了時に撮像通知割込みは発生しないので、同じ優先順位のタスク間での遷移は起こらない。
Thus, when the
In these processes, unless the image recognition process is completed earlier than the completion of the next image data imaging, the imaging notification interrupt does not occur at the end of the imaging of the second image data and the third image data. No transition occurs.
この画像処理装置19では、優先順位の高い認識処理は途中、極力、不用意な割り込み処理やシステムコールによるディスパッチ処理が発生しないようにタスク制御を行い、最速で画像認識の結果が得られるように考慮している。
また、図11において後述するが、低優先順位のタスクが待ち時間の経過とともに優先順位を上げて、タイムアウトエラーを防止する仕組みとして、コマンド管理ブロック45に登録された各コマンド別に、コマンド経過時間と待ち時間を管理するようにし、タイマ処理にて、時間の更新を行い、それぞれの時間を評価し、必要に応じて、優先順位の再設定、及びタスク切り替えのリクエストを発行する。
In this
As will be described later in FIG. 11, as a mechanism for preventing a timeout error by lowering the priority of a low priority task as the wait time elapses, a command elapsed time and a command elapsed time for each command registered in the
[認識処理タスクによる処理]
それでは、各タスクと処理モジュールの動作を順を追って説明する。図10に認識処理タスク37〜39による処理のフローチャートを例示する。
認識処理タスク37〜39は、迅速に画像撮像を行えるように、ステップS1のコマンド解析とステップS2の画像撮像要求とについては、コマンド受付タスク34に次いで高い優先順位で動作させる。
[Processing by recognition processing task]
Now, the operation of each task and processing module will be described step by step. FIG. 10 illustrates a flowchart of processing by the
The
まず、コマンド解析では受け渡されたコマンド文字列を解析し、処理種別に応じた優先順位を取得する(ステップS1)。
演算処理部18は、前述したように、処理種別毎の優先順位を予め定めて記憶しており(図7参照)、これが参照される。
First, in the command analysis, the passed command character string is analyzed, and the priority order according to the processing type is acquired (step S1).
As described above, the
次に、画像撮像要求の処理では、図6の画像入力API35の撮像開始I/Fを呼び出し、ハードウエアをキックする(ステップS2)。これにより、電子部品C又は基板マークMの撮像が開始される。なお、これにより、画像入力API35は、「撮像とその撮像画像の認識処理とを実行させる複数の要求に応じて前記カメラに撮像させる撮像要求を行う撮像要求部」として機能し、当該機能が実行されることにより「撮像要求工程」が実行される。
そして、画像撮像ステータス取得の処理では、画像入力API35の撮像ステータスI/Fを呼び出す(ステップS3)。
そして、撮像完了の有無を判定し(ステップS4)、撮像が終了していない場合には撮像完了待ちとなり(ステップS5)、休止状態になる。また、撮像が終了した場合には、図6に示す割込み処理36にて起床される。撮像完了の有無をチェック(ステップS4)で撮像が終了いれば、そのまま処理が続行される。
Next, in the image capturing request process, the imaging start I / F of the
In the image capturing status acquisition process, the image capturing status I / F of the
Then, it is determined whether or not imaging has been completed (step S4). If imaging has not been completed, imaging is waited for (step S5), and a pause state is entered. Further, when the imaging is finished, the user is woken up by the
そうして、撮像完了の状態で認識処理タスクに制御が移ってきたら、タスク優先順位再設定(ステップS6)を行う。設定する優先順位はコマンド解析(ステップS1)で取得済みの値である。
即ち、制御CPU11は、「複数の要求に基づくそれぞれの撮像完了時に認識処理タスクの優先順位を設定又は更新する設定手段」としての処理を行う。
ここで一旦、タスク切り替え要求を出し(ステップS7)、続いて、認識処理を行い(ステップS8)、認識処理終了後再度、タスク切り替え要求を出す(ステップS9)。なお、ステップS1〜S9の処理は、カメラを複数使用する場合も基本的には同様である。そして、ステップS9の処理を行うことにより制御CPU11は、「前記認識処理タスクの認識終了毎に前記優先順位に従って、次に実行すべき認識処理タスクを選定し、当該次の認識処理タスクに移行する進行管理手段」として機能し、「進行管理工程」を実行する。
また、タスク切り替え要求を行う(ステップS7、S9)際は、図6のコマンド管理ブロック45を参照し、登録コマンドが自身のみであるとか、自身が最も高い優先順位であるとか、タスク切り替えが発生し得ない状況であることが明確な場合は、システムコールの呼び出しは行わないようにする。
Then, when the control shifts to the recognition processing task in the imaging completed state, the task priority order is reset (step S6). The priority order to be set is a value acquired in the command analysis (step S1).
That is, the
Here, a task switching request is once issued (step S7), followed by recognition processing (step S8). After the recognition processing is completed, a task switching request is issued again (step S9). Note that the processing in steps S1 to S9 is basically the same when a plurality of cameras are used. Then, by performing the process of step S9, the
Further, when a task switching request is made (steps S7 and S9), the
[タイマ処理]
図6に示すタイマ処理46について、図11のフローチャートに基づいて説明する。このタイマ処理46では、優先順位の低いことが原因でいつまでも順番が回ってこないタスクについて、その待ち時間が予め設定された時間を超過した場合に優先順位を高くする処理が行われる。
このタイマ処理46は周期タイマハンドラに登録され、一定周期毎に呼び出される。例えば、この画像処理装置19では、最初の認識処理タスク37による処理が開始されると、それ以降1[ms]毎に呼び出されるものとする。
[Timer processing]
The
This
まず、図6のコマンド管理ブロック45を参照し、実行中の認識処理タスクのIDを取得する(ステップS11)。
次に、コマンド管理ブロック45へのコマンド登録数の回数分だけ、ステップS13〜S20の工程のループ処理を行ったか否かを判定する(ステップS12)。コマンド登録数の回数分の処理が完了した場合には、タイマ処理46を終了する。
First, referring to the
Next, it is determined whether or not the loop processing of steps S13 to S20 has been performed by the number of times of command registration in the command management block 45 (step S12). When the process for the number of command registrations is completed, the
一方、コマンド登録数の回数分の処理を完了していない場合には、登録コマンドについて、割り付けられた認識処理タスク37〜39のタスクIDを取得する(ステップS13)。
そして、ステップS11で取得したIDと比較し、実行中か否かを判定する(ステップS14)。
実行中でなければ、待ち時間を更新し(ステップS15)、予め設定しておいた判定時間と更新された待ち時間とを比較し、さらにコマンドを受け付けてからの経過時間も考慮して優先順位再設定が必要か否かを判定する(ステップS16)。
On the other hand, if the process corresponding to the number of command registrations has not been completed, the task IDs of the assigned
And it compares with ID acquired at step S11, and it is determined whether it is in execution (step S14).
If not executing, the waiting time is updated (step S15), the preset determination time is compared with the updated waiting time, and the priority order is also taken into account the elapsed time since the command was received. It is determined whether resetting is necessary (step S16).
そして、コマンドを受け付けてからの経過時間が判定時間を超過しており、優先順位の再設定が必要な場合には、タスク優先順位の再設定を行う(ステップS17)。
さらに、設定された優先順位をチェックし(ステップS18)、再設定の結果、「高」まで優先順位が上がっていた場合には、そのタスクの緊急度が高くなっているものと判断し、この時点でタスク切り替え要求を出す(ステップS19)。
最後に、カレントポジションを次エントリへ進めて(ステップS20)、ループ先頭のステップS12に戻る。
即ち、制御CPU11は、上記ステップS13〜S15の処理により、「撮像とその撮像画像の認識処理とを実行させる要求を受け付けてからの経過時間を計時する計時手段」として機能する。なお、この「計時手段」としての処理は、撮像完了からその撮像画像の認識処理の開始までの待ち時間を計時する構成としてもよい。
また、制御CPU11は、上記ステップS16,S17の処理により、「前記経過時間又は待ち時間が規定時間を超えると、前記撮像画像の認識処理の開始を待つ認識処理タスクの優先順位を上げるように再設定するタスク再設定手段」として機能する。
If the elapsed time since the command is received exceeds the determination time and the priority order needs to be reset, the task priority order is reset (step S17).
Further, the set priority order is checked (step S18). If the priority order has increased to “high” as a result of the resetting, it is determined that the urgency level of the task is high, and this A task switching request is issued at the time (step S19).
Finally, the current position is advanced to the next entry (step S20), and the process returns to step S12 at the top of the loop.
That is, the
In addition, the
[2軸時のノンストップ撮像のタイミングチャート説明]
次に、二機のヘッド106により並行して電子部品Cの搭載を実行する場合にノンストップ撮像を行った場合の例について説明する。図12は二軸時のノンストップ撮像のタイミングチャートを示している。
2つのヘッド106,106がそれぞれ3つの電子部品を保持しており、ほぼ同時に撮像が行われるよう、それぞれについてコマンド送信された場合の動きを記述している。図12では一方のヘッド106をフロントヘッド、他方のヘッド106をリアヘッドと記述する。
[Explanation of timing chart of non-stop imaging for 2 axes]
Next, an example in which non-stop imaging is performed when the electronic component C is mounted in parallel by the two
The two
まず、送信されたコマンドは、時刻t1〜t2、t2〜t3の間にコマンド受付タスク34でリアルタイムで受け付けられ、認識処理タスク37〜39が割り当てられ、コマンド送信順に撮像要求が出される。すべての撮像要求に関する設定が終了したら、その旨をマシン制御装置13に通知し、ヘッド106,106の移動が開始される。
各ヘッド106,106が部品用カメラ6,6の上を通過する時刻t4のタイミングで、それぞれの画像撮像が行われる。画像入力部15は、図3に示したように、2系統の入力回路3,3及び画像メモリ7,7を備えているので、それぞれの系統での同時撮像が可能となっている。また、画像入力部15は、制御CPU11と独立したハードモジュールであるので、画像撮像と認識処理が並列で行うことができる。
First, the transmitted command is received in real time by the
At the time t4 when the
この場合も、第1画像データ撮像が終了した場合のみ撮像通知割込みを出すよう設定されている(時刻t4)。
そして、これら2系統の撮像は同時刻の時刻t4〜t5、t7〜t9、t10〜t12に実行される。
認識処理は、初回の撮像終了の時刻t5の撮像通知割込みをトリガに開始される。
2軸なので認識処理タスクは計6つ用意され、それぞれ優先順位は同じである。
まずは、割込み通知のあったフロントヘッドの第1画像認識処理が実行される(時刻t5)。この画像処理装置19では、認識処理の終了時(時刻t8)に、画像撮像状況を調べて、次に実行すべき認識処理タスクに制御を渡すようにする。
時刻t8において、実行可能状態にあるのは、リアヘッドの第1画像認識処理のみであるのでこの処理が実行される。
その間、各ヘッド106,106の第2画像データ撮像が行われ(時刻t7〜t9)、リアヘッド106の第1画像の認識終了時の時刻t11では、フロント、リアの第2画像認識処理が実行可能状態になっている。図中では同時刻に画像撮像が終了しているが、先に待ちキューにつながれた方を優先して、フロントの第2画像認識処理(時刻t11〜t13)、リアの第2画像認識処理(時刻t13〜t14)の順で処理される。これらの間に、各ヘッド106,106の第3画像データ撮像が行われ(時刻t10〜t12)、リアの第2画像認識処理が終わると、フロントの第3画像認識処理(時刻t14〜t15)、リアの第3画像認識処理(時刻t15〜t16)の順で処理される。
Also in this case, it is set to issue an imaging notification interrupt only when the first image data imaging is completed (time t4).
These two systems of imaging are executed at times t4 to t5, t7 to t9, and t10 to t12 at the same time.
The recognition process is triggered by an imaging notification interrupt at time t5 when the first imaging ends.
Since there are two axes, a total of six recognition processing tasks are prepared, each having the same priority.
First, the first image recognition process of the front head that has received the interrupt notification is executed (time t5). In the
Since only the rear head first image recognition process is in an executable state at time t8, this process is executed.
Meanwhile, the second image data of each
図13は二軸時のノンストップ撮像において、カメラ6における撮像時刻とカメラ6から各搭載位置までヘッド106が移動するための所要時間とが既知であるために、搭載時刻(各ヘッド106,106の各搭載点までの最短の到達時刻)が移動距離からの予測により既知となる場合のタイミングチャートを示している。
例えば、フロントヘッド、リアヘッド各処理で第2及び第3の部品の搭載時刻が時刻to13、to14、to15、to16であったとする。
図12において、フロントヘッド、リアヘッド各処理で第2及び第3の部品の搭載可能な時刻は、時刻t13、t14、t15、t16であった。
FIG. 13 shows the mounting time (each
For example, it is assumed that the mounting times of the second and third components are times to13, to14, to15, and to16 in each process of the front head and the rear head.
In FIG. 12, the times at which the second and third parts can be mounted in the processes of the front head and the rear head are times t13, t14, t15, and t16.
フロントヘッドの第2及び第3部品の搭載可能な時刻t13、t15は搭載点への到達時刻より早いので問題ないが、リアヘッドの第2及び第3部品の搭載可能な時刻t14、t16においては、搭載点への搭載時刻to14、to16に対して遅延が発生してしまうことになる。
このように、画像データの撮像が完了した順に効率よく認識タスクを処理し、画像処理装置のトータル処理時間を最短で済むようスケジューリングしたとしても、電子部品実装装置としての効率は必ずしも良くはならない場合がある。
There is no problem because the times t13 and t15 at which the second and third parts of the front head can be mounted are earlier than the arrival time at the mounting point, but at the times t14 and t16 at which the second and third parts of the rear head can be mounted, A delay occurs with respect to the mounting times to14 and to16 at the mounting points.
As described above, even when the recognition tasks are processed efficiently in the order in which the image data has been captured and the total processing time of the image processing apparatus is scheduled to be minimized, the efficiency of the electronic component mounting apparatus is not necessarily improved. There is.
例えば、各部品の搭載時刻to13〜to16とともに、各部品の画像認識処理時間が分かっているならば、上記の事例においては、フロントヘッドの第2及び第3部品について、搭載点への搭載時刻to13〜to16に間に合う範囲で処理の開始を遅らし、それにより捻出できたCPU11の余裕時間にリアヘッドの第2及び第3画像認識処理を割り当てて、時刻to14、to15に対して発生していた遅延を解消することができる。
各部品の搭載時刻to13〜to16は、コマンドパラメータとして、図3のマシン制御装置13から受け渡されるものとする。搭載時刻to13〜to16は、それぞれのヘッドの第1画像データの撮像開始時刻を0とした相対時刻で表現される。これら搭載時刻to13〜to16はコマンド毎に図3の作業用メモリ10内のコマンド管理ブロック45(図6)に保持される。
For example, if the image recognition processing time of each component is known together with the mounting times to13 to to16 of each component, in the above example, the mounting times to13 at the mounting points for the second and third components of the front head. The start of the process is delayed in a range in time for ~ to16, and the second and third image recognition processes of the rear head are allocated to the margin time of the
It is assumed that the mounting times to13 to to16 of each component are transferred from the
各部品の画像認識処理時間は、部品の種別や端子数のデータから推定できる。これら各部品の画像認識処理時間は、前述したように、図3の作業用メモリ10内のコマンド管理ブロック45(図6)にコマンド処理時間の推定値として保持しておけるようになっている。例えば、予め画像認識処理時間を実測しておき、テーブル化して図3のマシン制御装置13の記憶装置に保持しておいてもよい。画像処理装置19の電源投入時に、マシン制御装置13よりテーブル化データを受け渡し、図3の作業用メモリ10内に展開しておく。図6のコマンド受付タスク34は、コマンド受付毎にこのテーブル化データを参照し、該当する画像認識処理時間(コマンド処理時間の推定値)を取得し、コマンド管理ブロック45内に保持しておく。以降、図3の制御CPU11は画像認識処理時間が必要となった場合に短時間で簡単に取得することができる。
The image recognition processing time of each component can be estimated from the component type and terminal count data. As described above, the image recognition processing time of each of these components can be held as an estimated value of the command processing time in the command management block 45 (FIG. 6) in the
また、このようなスケジューリングは、フロントヘッドとリアヘッドが非同期に動作している環境下において、複数の入力系統の要求(例えば、二つのヘッドによる認識処理の要求)が全く同時に発生することは稀であり、一度にスケジューリングをすべて完成させることはできない。まずは、先に発生した入力系統(例えば、先に要求が行われたヘッド)について、例えば前述した図12に示すタイムチャートのように最短で処理が済むスケジューリングを作成し、新たに発生した入力系統(例えば、後に要求が行われたヘッド)について、最短での処理では搭載時刻を守れないことが明らかになった時点でリスケジューリングすべきである。 In addition, in such scheduling, it is rare that requests for a plurality of input systems (for example, requests for recognition processing by two heads) occur at the same time in an environment where the front head and the rear head operate asynchronously. Yes, you cannot complete all scheduling at once. First, for a previously generated input system (for example, a head for which a request has been previously made), for example, a schedule that can be processed in the shortest time as shown in the time chart of FIG. Rescheduling should be performed when it becomes clear that the mounting time cannot be observed with the shortest processing (for example, a head for which a request was made later).
例えば、図13に示すタイミングチャートにおいて、フロントヘッドの第1部品の撮像の方がリアヘッドの第1部品の撮像より若干早かった場合を考えてみる。
まず、フロントヘッドの第1の部品の撮像完了時t5にフロントヘッド側の認識処理のスケジューリングが完成する。このとき、リアヘッドでの認識処理が発生するかどうかはまだ分からないので、図12に示すタイミングチャートのように画像撮像が完了した順にスケジューリングされることになる。その後、リアヘッドの第1の部品の撮像完了のイベントを受け取り(図ではt5となっているが厳密には若干t5よりも遅れる)、フロントヘッド、リアヘッドで並列して動作しなければならないことが分かる。
For example, in the timing chart shown in FIG. 13, consider the case where the imaging of the first part of the front head is slightly earlier than the imaging of the first part of the rear head.
First, the recognition process scheduling on the front head side is completed at time t5 when imaging of the first part of the front head is completed. At this time, since it is not yet known whether or not the recognition processing at the rear head occurs, the scheduling is performed in the order in which the image capturing is completed as shown in the timing chart of FIG. After that, an event of completion of imaging of the first component of the rear head is received (in the figure, it is t5, but strictly a little behind t5), and it is understood that the front head and the rear head must operate in parallel. .
このときに、はじめて双方のヘッドの認識処理を同じ時間軸で並べて見ることができるようになるので、このイベントをリスケジューリングのタイミングとする。リスケジューリングの対象は未実行、すなわち、キューイングされている認識タスクである。
それぞれの認識タスクについて、画像認識処理時間と搭載時刻から処理の開始を遅延させることが可能な余裕時間を割り出す。
割り出された余裕時間分だけ処理の開始を遅延させた結果、他の認識タスクと処理が重なる場合には、搭載時刻からの遅延時間が最小になるようにキューの接続順序を入れ替え、さらに必要に応じて、2つのタスクについて同一優先順位のレベル内で優先度に差をつけるようにし、スケジュール制御を行う。
例えば、図13の例では、フロントヘッドの第2及び第3画像処理について余裕時間分だけ処理の開始を遅延させるだけでは、リアヘッドの第2及び第3画像処理と処理が重なりを生じるが、フロントヘッドの第2画像処理とリアヘッドの第2画像処理、フロントヘッドの第3画像処理とリアヘッドの第3画像処理のそれぞれについて、キューの接続順序を入れ替え、同一優先レベル内で優先度に差をつけることにより処理の順番の入れ替えることにより、全ての画像処理が各々の搭載時刻までに終了し、ヘッドの待ち時間を解消又は低減することが可能となる。
At this time, since the recognition processes of both heads can be viewed side by side on the same time axis for the first time, this event is set as the rescheduling timing. The target of rescheduling is a recognition task that has not been executed, that is, queued.
For each recognition task, a margin time that can delay the start of the process is determined from the image recognition processing time and the installation time.
As a result of delaying the start of processing by the determined margin time, if processing overlaps with other recognition tasks, the queue connection order is changed so that the delay time from the installation time is minimized, and further required Accordingly, the priority control is performed for the two tasks within the same priority level, and the schedule control is performed.
For example, in the example of FIG. 13, the processing of the second and third image processing of the front head is overlapped with the processing of the second and third image processing of the rear head only by delaying the start of the processing by the margin time. For each of the second image processing of the head, the second image processing of the rear head, the third image processing of the front head, and the third image processing of the rear head, the connection order of the queues is changed, and the priority is differentiated within the same priority level. Thus, by changing the order of processing, all the image processing is completed by each mounting time, and it becomes possible to eliminate or reduce the waiting time of the head.
制御CPU11は、上記スケジュール制御を行うことにより、「認識処理タスクの実行順を記憶する実行可能キューへの認識処理タスクの接続順位を並び替える接続順位補正手段」として機能し、「前記複数の要求に基づくそれぞれの撮像画像の認識処理に要する画像認識処理時間及び前記複数の要求に基づくそれぞれの撮像画像の認識処理について目標とする画像認識処理終了時刻(搭載時刻)とに基づいて、前記複数の要求に基づくそれぞれの撮像画像の認識処理の遅延時間を求め、それぞれの前記遅延時間の合計が低減するように認識処理タスクを並び替える」処理を行う。また、上記処理により「接続順位補正工程」が実行される。
The
またさらに、余裕時間が短くて、その時間内では完全に処理を終えることができない場合、この余裕時間を有効に使うようにタスクのスイッチングを行う。まず、開始時刻が遅い方のタスク(以降、後のタスク)の優先度を開始時刻が早い方のタスク(以降、先のタスク)より高く設定しておく。後のタスクは、搭載時刻に間に合う時刻に起床するようアラームをかけておき、先のタスクを実行する。アラーム時刻になり、後のタスクが起床すると、こちらの方が優先度が高いので認識処理タスクが切り替わる。後のタスクの処理が終わると、再び先のタスクに切り替わる。タスクのスイッチングのため、画像処理装置のトータルの処理時間は増加するが、ヘッドの待ち時間は最短で済み、電子部品実装装置としての効率はUpする。 Furthermore, when the margin time is short and the processing cannot be completed completely within that time, the task is switched so that the margin time is used effectively. First, the priority of the task with the later start time (hereinafter, the later task) is set higher than the task with the earlier start time (hereinafter, the preceding task). For the later task, an alarm is given to wake up at a time in time for the installation time, and the previous task is executed. When the alarm time comes and a later task wakes up, the recognition process task is switched because this one has higher priority. When the processing of the subsequent task is completed, it switches to the previous task again. Although the total processing time of the image processing apparatus increases due to task switching, the waiting time of the head is minimized, and the efficiency as an electronic component mounting apparatus is increased.
また、これらのリスケジューリング処理は、撮像完了イベントではなく、撮像露光のイベントを追加し、これをトリガにして動作させてもよい。
即ち、図13に示すように、リアヘッドとフロントヘッドに対応する複数(二台)のカメラ6,6の中で最後の順番で連続撮像を行うカメラ(リアヘッド側)の連続撮像における最初の撮像(リアヘッドの第1画像データ撮像)の露光完了をトリガとして割込が発生し、認識処理タスクの並び替え(リスケジューリング)を実行する構成とすることが望ましい。なお、カメラ6を三台以上使用する場合には、2番目以降の順番で連続撮像を行うカメラの連続撮像における最初の撮像の露光完了をトリガとして割込が発生し、認識処理タスクの並び替え(リスケジューリング)を実行することが望ましい。
これにより、露光完了からデータ転送完了までの制御CPU11の待ち時間を有効活用でき、より速くリスケジューリングを終えることができる。
In addition, these rescheduling processes may be performed by adding an imaging exposure event instead of an imaging completion event and using this event as a trigger.
That is, as shown in FIG. 13, the first imaging (continuous imaging) of the camera (rear head side) that performs continuous imaging in the last order among a plurality (two) of
Thereby, the waiting time of the
なお、図13に示すように、フロントヘッド側の第1画像データ撮像における露光時にも割込が発生するが、この時点では、リアヘッド側における搭載時刻及び遅延の発生の有無が判断できないので、リスケジューリングは実行されない。
また、カメラが3台以上存在し、これらが連続的に撮像行う場合(より厳密には、撮像のタイミングが近いことにより各カメラの撮像画像データの認識処理がタイミング的に重合を生じる場合)には、最後に撮像を行うカメラの第1画像データ撮像における露光時にリスケジューリングを実行する。
As shown in FIG. 13, an interrupt occurs during exposure in the first image data capture on the front head side, but at this time, it is impossible to determine the mounting time on the rear head side and whether or not a delay has occurred. Scheduling is not performed.
Also, when there are three or more cameras and these are continuously imaged (more strictly, when the recognition processing of the captured image data of each camera is overlapped in timing due to the close timing of imaging). Performs rescheduling at the time of exposure in the first image data imaging of the camera that performs imaging last.
[2軸でストップ撮像とノンストップ撮像とを実行するタイミングチャート説明(1)]
図14は、低優先順位のストップ撮像コマンドとノンストップ撮像の重複時のタイミングチャートについて撮像方法・処理種別のみで優先順位の設定をした場合を示したものである。
例えば、フロントヘッド106が、3つの電子部品を保持しており、ノンストップ撮像を行うのとほぼ同時刻にリアヘッド106でストップ撮像コマンドが実行され、ストップ撮像の画像撮像終了の方が早く終了した場合の動きを記述している。
[Timing chart for executing stop imaging and non-stop imaging with two axes (1)]
FIG. 14 shows a case where the priority order is set only by the imaging method / process type in the timing chart when the low-priority stop imaging command and the non-stop imaging overlap.
For example, the
まず、送信されたコマンドは、時刻t1〜t2、t2〜t3の間にコマンド受付タスク34でリアルタイムで受け付けられ、認識処理タスクが割り当てられ、コマンド送信順に撮像要求が出される。
フロントヘッド106については、ノンストップ撮像の要求であるので、3つの撮像要求に関する設定が終了したら、その旨をマシン制御装置13に通知し、フロントヘッド106の移動が開始される。
リアヘッド106については、ストップ撮像の要求である。コマンド送信時には、ヘッド106は既に部品用カメラ6上に位置しているので、撮像要求に続いて、フロントヘッド106より早い時刻t4で撮像が開始される。
一方、フロントヘッドの撮像は時刻t4に遅れて時刻t5〜t8、t10〜t12、t13〜t15に実行される。
First, the transmitted command is received in real time by the
Since the
The
On the other hand, the imaging of the front head is executed at times t5 to t8, t10 to t12, and t13 to t15 after the time t4.
リアヘッド106における認識処理は、リアヘッド106の撮像終了の時刻t6の撮像通知割込みをトリガに開始される。
認識処理タスクは計4つで、優先順位は、フロントヘッド106の3つが「高」、リアヘッド106の1つが「中」に設定されている。
また、この図14の例のフロントヘッド106の画像認識処理は次の画像撮像終了よりも早く終了し、次の画像認識処理の開始までに空き時間が出来るような場合を事例としている。
The recognition process in the
There are a total of four recognition processing tasks, and the priority is set to “high” for three of the front heads 106 and “medium” for one of the rear heads 106.
Further, the case where the image recognition process of the
時刻t6では、実行可能状態の認識処理タスクはリアヘッド106の1つだけなので、時刻t7からリアヘッド106の認識処理タスクが実行中となる。
その後、時刻t8でフロントヘッド106の第1画像データ撮像が終了し、撮像通知割込みが入る。この時点でフロントヘッド106の第1画像認識処理タスクが実行可能状態となる。2つの実行可能状態の認識処理タスクで優先順位を比較し、実行タスクは、フロントヘッドの第1画像認識処理を行う認識処理タスクに切り替わる。
そして、第1画像認識処理の実行中に、第2画像データ撮像が時刻t10で開始され、時刻t11にフロントヘッドの第1画像認識処理は終了するが、この時点で、第2画像データの撮像は終了していない。そのため、実行可能なリアヘッドの認識処理タスクが再び実行タスクとなる。
At time t6, since there is only one recognition processing task in the executable state in the
Thereafter, the first image data imaging of the
Then, during the execution of the first image recognition process, the second image data imaging starts at time t10, and the first image recognition process of the front head ends at time t11. At this time, the imaging of the second image data is completed. Is not finished. Therefore, an executable rear head recognition processing task becomes an execution task again.
ノンストップ撮像処理において、認識処理時に時間がかかり、認識処理終了時に既に次の認識処理の画像データが用意されている場合は、途中で撮像通知割込みは発生しない。
しかし、図14に示すように、次の画像処理の画像データが間に合っていない場合(撮像が完了していない場合)には、前の認識処理の終了時、画像撮像状況をチェックした際に、次の認識処理の画像撮像について、撮像通知割込みの発生要求を立てておく。
すると、第2画像データ撮像終了の時刻t12に撮像通知割込みが発生し、実行タスクをリアヘッドの認識処理タスクからフロントヘッドの第2画像認識処理を行う認識処理タスクに切り替えることができる。
In the non-stop imaging process, when the recognition process takes time, and image data for the next recognition process is already prepared at the end of the recognition process, an imaging notification interrupt does not occur in the middle.
However, as shown in FIG. 14, when the image data of the next image processing is not in time (when imaging has not been completed), when the image capturing status is checked at the end of the previous recognition processing, A request for generating an imaging notification interrupt is made for imaging of the next recognition process.
Then, an imaging notification interruption occurs at the time t12 when the second image data imaging ends, and the execution task can be switched from the rear head recognition processing task to the recognition processing task for performing the front head second image recognition processing.
同様の仕組みで、フロントヘッドの第2画像認識処理タスクが終了する時刻t14で、タスク切り替えが起こり、リアヘッドの認識処理タスクが実行タスクとなる。そして、フロントヘッドの第3画像データ撮像が終了する時刻t15で撮像通知割込みが発生し、フロントヘッドの第3画像認識処理を行う認識処理タスクが実行タスクとなり、処理が終了する時刻t17でリアヘッドの認識処理タスクが唯一の実行可能状態のタスクとなるので、やっと制御が戻り、残りの処理を実行して時刻t18にすべての処理が終了となる。
このように優先順位が「中」の設定であると、他の認識処理タスクがすべて終了しないと処理の順番が回ってこない。
With a similar mechanism, task switching occurs at time t14 when the second image recognition processing task for the front head ends, and the recognition processing task for the rear head becomes an execution task. Then, an imaging notification interrupt is generated at time t15 when the front head third image data imaging ends, the recognition processing task for performing the third image recognition processing of the front head becomes an execution task, and at the time t17 when the processing ends, the rear head Since the recognition processing task is the only task in the executable state, control is finally returned, the remaining processing is executed, and all processing ends at time t18.
In this way, when the priority is set to “medium”, the processing order does not turn unless all other recognition processing tasks are completed.
[2軸でストップ撮像とノンストップ撮像とを実行するタイミングチャート説明(2)]
図15に待ち時間の累積時間により低優先順位のタスクの優先順位を動的に変動させるためのタイマ処理を組み込んだ場合のタイミングチャートを示す。この処理は、前述した図14の処理に図11に示したタイマ処理を組み込んだものであり、各ヘッド106,106の動作自体は図14と同じである。
この図15の処理は、時刻t8〜t11の待ち時間の間に、周期的に実行されるタイマ処理が入ると、リアヘッド106の認識処理タスクに所定時間以上の待ち時間が生じている場合に、その優先順位が再設定され、「中」から「高」に切り替えられる。
[Timing chart for executing stop imaging and non-stop imaging with two axes (2)]
FIG. 15 shows a timing chart in the case of incorporating a timer process for dynamically changing the priority of a low priority task according to the accumulated waiting time. In this process, the timer process shown in FIG. 11 is incorporated into the process shown in FIG. 14, and the operations of the
The processing of FIG. 15 is performed when a periodically executed timer processing is entered during the waiting time from time t8 to t11, and when a waiting time of a predetermined time or more occurs in the recognition processing task of the
これにより、フロントヘッド106の第1画像認識処理の終了時の時刻t11において、リアヘッド106の画像認識処理にタスク切替が行われる。
そして、このリアヘッド106の画像認識処理の終了時の時刻t14では、第2画像認識処理を実行する認識処理タスクが実行可能となっているので、当該認識処理タスクにタスク切り替えが行われる。
さらに、第2画像認識処理の終了時の時刻t16では、第3画像認識処理を実行する認識処理タスクが実行可能となっているので、当該認識処理タスクにタスク切り替えが行われる。
Thereby, task switching is performed for the image recognition processing of the
At time t14 when the image recognition process of the
Furthermore, at time t16 at the end of the second image recognition process, since the recognition process task for executing the third image recognition process can be executed, the task is switched to the recognition process task.
このように、優先順位「中」のタスクのレスポンス時間が、優先順位の繰り上げにより、短縮、改善される。
また、これに伴い、割込処理の発生頻度が低減して、全体の処理時間も短縮される。
なお、この処理では、一般的に実行される周期的に時間の経過を報知するタイマ処理に優先順位の更新機能を持たせているので、発明の課題である割込処理の低減の趣旨に反するものではない。
As described above, the response time of the task having the priority “medium” is shortened and improved by raising the priority.
As a result, the occurrence frequency of interrupt processing is reduced and the overall processing time is also shortened.
In this process, a timer process that notifies the passage of time periodically is provided with a priority update function, which is contrary to the purpose of reducing the interrupt process, which is an object of the invention. It is not a thing.
[1軸で搭載順序を考慮してノンストップ撮像とを実行するタイミングチャート説明]
図16に1軸でノンストップ撮像を行う場合であって、三つの電子部品の搭載の順序を反映させて認識処理を実行する場合のタイミングチャートを示す。
このノンストップ撮像では、第3撮像画像の電子部品Cが最初に搭載され、第2撮像画像の電子部品Cが二番目に搭載され、第1撮像画像の電子部品Cが最後に搭載される場合の認識処理である。この場合、搭載に順番を反映すると、いずれも処理の優先順位は「高」であるが、その中でも、優先順位が、第3撮像画像>第2撮像画像>第1撮像画像となる。
ヘッド106の動作が図11の例と同じように制御される場合に、上述の有せ印順位を適用すると、まず、撮像要求が行われ(時刻t1〜t2)、撮像の順番に従って第1画像データ撮像が行われる(時刻t3〜t4)。
撮像終了時には、撮像通知割込が入り、割込処理が行われる結果、処理が可能な状態である第1画像認識処理を実行する認識処理タスクの処理が開始される(時刻t5)。
この時、第1画像認識処理の処理時間の長く、その実行中に第2画像データ撮像(時刻t6〜t7)と第3画像データ撮像(時刻t8〜t9)とが完了した場合、第3画像データ撮像の終了時の優先順位の更新において、第3画像認識処理の認識処理タスクが、タスクキューに対して、第2画像認識処理の認識処理タスクより前につながれた状態となる。
従って、第1画像認識処理が終了すると(時刻t10)、第3画像認識処理の認識処理タスクにタスクが切り替えられる。
さらに、第3画像認識処理が終了すると(時刻t11)、第2画像認識処理の認識処理タスクにタスクが切り替えられ、時刻t12で処理全体が終了する。
[Explanation of timing chart for non-stop imaging in consideration of mounting order on one axis]
FIG. 16 shows a timing chart in the case where non-stop imaging is performed with one axis and the recognition process is executed by reflecting the mounting order of three electronic components.
In this non-stop imaging, the electronic component C of the third captured image is mounted first, the electronic component C of the second captured image is mounted second, and the electronic component C of the first captured image is mounted last. Recognition process. In this case, when the order is reflected in the mounting, the priority of the processing is “high”, but among these, the priority is the third captured image> the second captured image> the first captured image.
When the operation of the
At the end of imaging, an imaging notification interrupt is entered, and as a result of the interrupt process being performed, the process of the recognition process task for executing the first image recognition process in a processable state is started (time t5).
At this time, if the processing time of the first image recognition processing is long and the second image data imaging (time t6 to t7) and the third image data imaging (time t8 to t9) are completed during the execution, the third image In the update of the priority order at the end of data imaging, the recognition process task of the third image recognition process is connected to the task queue before the recognition process task of the second image recognition process.
Therefore, when the first image recognition process ends (time t10), the task is switched to the recognition process task of the third image recognition process.
Furthermore, when the third image recognition process ends (time t11), the task is switched to the recognition process task of the second image recognition process, and the entire process ends at time t12.
[発明の実施の形態における効果]
上記画像処理装置19は、複数の撮像認識コマンドに基づいて撮像とその撮像画像の認識処理とを行う際に、撮像終了時に認識処理タスクの優先順位を更新し、認識処理タスクの認識終了毎に優先順位に従って、次に実行すべき認識処理タスクを選定し、当該次の認識処理タスクに移行する。
これにより、一の認識処理が終了したときに、次に実行可能に認識処理タスクが存在すれば割込処理を介することなく次に認識処理につなぐことができ、割り込み通知、タスク切り替えを最小限に止め、OSのオーバーヘッド、キャッシュの入れ替え処理を削減することで、作業効率を向上することが可能となる。
[Effects of the embodiment of the invention]
The
As a result, when one recognition process is completed, if there is a recognition process task that can be executed next, it can be connected to the next recognition process without an interrupt process, and interrupt notification and task switching can be minimized. It is possible to improve the work efficiency by reducing the OS overhead and cache replacement processing.
また、画像処理装置19では、処理種別にて認識処理タスクの優先順位を動的に切り替えることで、作業効率を向上できる。
さらに、処理待ち時間の経過に合わせて認識処理タスクの優先順位を上げることで、低優先順位の処理のタイムアウトを防止できる。
また、ノンストップ撮像する対象物について、撮像順に認識される場合に限らず、認識順を制御できるタスク管理手段を設けたことで、軸の搭載点までの移動時間を含めた範囲で効率良く、各部品の認識時間の配分ができ、システム全体として効率向上を図ることができる。なお、この場合、認識の順番を全ての電子部品Cについて搭載の順番に従わせる場合に限らず、一部の電子部品Cのみについて、例えば、最初に搭載が行われる電子部品のみについて認識を優先するというような補正を行うことも可能である。
また、認識の順番を全ての電子部品Cについて搭載の順番に従わせる場合には、よりきめ細かな認識順の制御が可能となり、理屈的には最後の搭載点までの移動時間をフルに使って、各部品の認識時間の配分ができ、システム全体として効率向上を図ることができる。
Further, in the
Further, by raising the priority of the recognition processing task as the processing wait time elapses, it is possible to prevent a time-out of low priority processing.
In addition, the object to be non-stop imaged is not limited to being recognized in the imaging order, but by providing a task management means that can control the recognition order, it is efficient in a range including the movement time to the axis mounting point, The recognition time of each part can be distributed, and the efficiency of the entire system can be improved. In this case, the order of recognition is not limited to the order of mounting for all the electronic components C, but priority is given to recognition for only some of the electronic components C, for example, only the electronic components that are mounted first. It is also possible to perform such correction.
In addition, when the order of recognition is made to follow the order of mounting for all the electronic components C, it becomes possible to control the order of recognition more finely, and theoretically, the travel time to the last mounting point is fully used. The recognition time of each part can be distributed, and the efficiency of the entire system can be improved.
さらに、画像処理装置19では、認識処理タスク37〜39がハード演算を含む場合に、そのハード演算占有率が高いものほど実行可能キューへの認識処理タスクの接続順位の優先度を高くするよう並び替える補正を行うことから、演算制御回路9によるハード演算によって得られる演算処理部18の制御CPU11の空き時間を次の認識処理タスクが有効活用することができ、複数の認識処理のトータルでの処理時間をより短くすることが可能となる。
例えば、図17は、図12のリアヘッド第1画像認識処理がハード演算を含むように変わった場合のタイミングチャートを示している。
リアヘッド第1画像認識処理(t8〜t13)に含まれるハード演算実行区間(t10〜t11)は、制御CPU11の空き時間となり、この時間(t10〜t11)にフロントヘッド第2認識処理を実行することができ、t18の終了時間をt10〜t11の時間だけ短縮することが可能となる。
Further, in the
For example, FIG. 17 shows a timing chart when the rear head first image recognition process of FIG. 12 is changed to include a hardware operation.
The hardware calculation execution section (t10 to t11) included in the rear head first image recognition process (t8 to t13) is a free time of the
さらに、画像処理装置19では、複数の要求に基づくそれぞれの撮像画像の認識処理に要する画像認識処理時間と複数の要求に基づくそれぞれの撮像画像の認識処理について目標とする画像認識処理終了時刻とが既知又は取得可能である場合に、各カメラ6,6の連続撮像を開始した時刻とそれぞれの撮像画像の認識処理に要する画像認識処理時間とから、個々の撮像画像の認識処理の終了時刻を算出することができる。そして、個々の撮像について、算出した画像認識処理の終了時刻と目標とする画像認識処理終了時刻と比較することで遅延の発生及び遅延時間を求めることが可能である。
上記複数のカメラ6,6による連続撮像を行った場合に、個々の撮像の何れかは目標とする画像認識処理終了時刻に対する余裕時間を生じる場合があるので(例えば図13のフロントヘッドにおける第2及び第3画像認識処理)、余裕時間を生じる撮像の認識処理タスクと遅延を生じる撮像の認識処理タスク(例えば図13のリアヘッドにおける第2及び第3画像認識処理)の接続順位をそれぞれ入れ替えることで、いずれの認識処理タスクも遅延を解消する場合がある。
Further, in the
When continuous imaging by the plurality of
このような入れ替えによって遅延を解消する認識処理タスクの組み合わせを適宜探索し、実行可能キューへの認識処理タスクの接続順位を並び替えることにより、個々の撮像の認識処理の遅延を低減又は解消し、複数のカメラの連続撮像の認識処理のトータルでの処理時間をより短くすることが可能となる。
特に上記のリスケジューリングでは、複数のカメラ6,6の中で最後の順番で連続撮像を行うカメラ6(リアヘッド側)の連続撮像における最初の撮像(第1画像データ撮像)の露光完了をトリガとして、遅延時間の合計を低減させるための認識処理タスクの並び替えを実行するので、撮像完了を待たずに並び替える認識処理タスクの組み合わせを探索する処理を開始することができ、認識処理のトータルでの処理時間をさらに短くすることが可能となる。
By appropriately searching for a combination of recognition processing tasks that eliminate the delay by such replacement and rearranging the connection order of the recognition processing tasks to the executable queue, the delay of the recognition processing of each imaging is reduced or eliminated, It is possible to shorten the total processing time of the recognition processing for continuous imaging of a plurality of cameras.
In particular, in the rescheduling described above, the exposure completion of the first imaging (first image data imaging) in the continuous imaging of the camera 6 (rear head side) that performs continuous imaging in the last order among the plurality of
4 基板用カメラ
6 部品用カメラ
7 画像メモリ
11 制御CPU
15 画像入力部
18 演算処理部
19 画像処理装置
34 コマンド受付タスク(タスク割り当て手段)
35 画像入力API(撮像要求部)
37〜39 認識処理タスク
C 電子部品(対象物)
4
DESCRIPTION OF
35 Image Input API (Imaging Request Unit)
37-39 Recognition processing task C Electronic component (object)
Claims (6)
当該演算処理部と並列処理可能であって複数のカメラが接続される画像入力部と、
画像データを格納する画像メモリとを備え、
前記演算処理部は、
撮像とその撮像画像の認識処理とを実行させる複数の要求に応じて前記カメラに撮像させる撮像要求を行う撮像要求部と、
前記複数の要求に対して認識処理タスクを割り当てるタスク割り当て手段とを有し、
前記複数のカメラが非同期に連続撮像して得られる複数の画像データを処理する画像処理装置において、
前記複数の要求に基づくそれぞれの撮像完了時に前記認識処理タスクの優先順位を設定又は更新する設定手段と、
前記認識処理タスクの認識終了毎に前記優先順位に従って、次に実行すべき認識処理タスクを選定し、当該次の認識処理タスクに移行する進行管理手段と、
前記優先順位内での認識処理の優先度をさらに定め、認識処理タスクの実行順を記憶する実行可能キューへの認識処理タスクの接続順位を前記優先度に応じて並び替える優先度設定手段を備え、
前記優先度設定手段は、前記実行可能キューへの認識処理タスクの接続順位を並び替える際に、認識処理タスクがハード演算を含むか否かを判定し、ハード演算を含み、前記演算処理部との並列処理が可能な認識処理タスクについて、ハード演算占有率が高いものほど優先度を高くして並び替えることを特徴とする画像処理装置。 An arithmetic processing unit;
An image input unit capable of parallel processing with the arithmetic processing unit and connected to a plurality of cameras;
An image memory for storing image data;
The arithmetic processing unit includes:
An imaging requesting unit for performing an imaging request to be captured by the camera in response to a plurality of requests for executing imaging and recognition processing of the captured image;
Task assignment means for assigning recognition processing tasks to the plurality of requests,
In the image processing apparatus for processing a plurality of image data obtained by continuously imaging the plurality of cameras asynchronously,
Setting means for setting or updating the priority order of the recognition processing task when each imaging based on the plurality of requests is completed;
A progress management means for selecting a recognition processing task to be executed next in accordance with the priority every time recognition of the recognition processing task is completed, and shifting to the next recognition processing task;
A priority setting unit that further determines the priority of the recognition process within the priority order and rearranges the connection order of the recognition process task to the executable queue that stores the execution order of the recognition process task according to the priority; ,
The priority setting means determines whether the recognition processing task includes a hardware operation when rearranging the connection order of the recognition processing task to the executable queue, includes a hardware operation, and includes the arithmetic processing unit and An image processing apparatus characterized in that the recognition processing tasks that can be processed in parallel are rearranged with a higher priority as the hardware operation occupancy is higher.
当該演算処理部と並列処理可能であって複数のカメラが接続される画像入力部と、
画像データを格納する画像メモリとを備え、
前記演算処理部は、
撮像とその撮像画像の認識処理とを実行させる複数の要求に応じて前記カメラに撮像させる撮像要求を行う撮像要求部と、
前記複数の要求に対して認識処理タスクを割り当てるタスク割り当て手段とを有し、
前記複数のカメラが非同期に連続撮像して得られる複数の画像データを処理する画像処理装置において、
前記複数の要求に基づくそれぞれの撮像完了時に前記認識処理タスクの優先順位を設定又は更新する設定手段と、
前記認識処理タスクの認識終了毎に前記優先順位に従って、次に実行すべき認識処理タスクを選定し、当該次の認識処理タスクに移行する進行管理手段と、
認識処理タスクの実行順を記憶する実行可能キューへの認識処理タスクの接続順位を並び替える接続順位補正手段を備え、
前記接続順位補正手段は、
前記複数の要求に基づくそれぞれの撮像画像の認識処理に要する画像認識処理時間及び前記複数の要求に基づくそれぞれの撮像画像の認識処理について目標とする画像認識処理終了時刻とに基づいて、前記複数の要求に基づくそれぞれの撮像画像の認識処理の遅延時間を求め、それぞれの前記遅延時間の合計が低減するように認識処理タスクを並び替えることを特徴とする画像処理装置。 An arithmetic processing unit;
An image input unit capable of parallel processing with the arithmetic processing unit and connected to a plurality of cameras;
An image memory for storing image data;
The arithmetic processing unit includes:
An imaging requesting unit for performing an imaging request to be captured by the camera in response to a plurality of requests for executing imaging and recognition processing of the captured image;
Task assignment means for assigning recognition processing tasks to the plurality of requests,
In the image processing apparatus for processing a plurality of image data obtained by continuously imaging the plurality of cameras asynchronously,
Setting means for setting or updating the priority order of the recognition processing task when each imaging based on the plurality of requests is completed;
A progress management means for selecting a recognition processing task to be executed next in accordance with the priority every time recognition of the recognition processing task is completed, and shifting to the next recognition processing task;
A connection order correction means for rearranging the connection order of the recognition processing tasks to the executable queue for storing the execution order of the recognition processing tasks;
The connection order correction means includes:
Based on the image recognition processing time required for the recognition processing of each captured image based on the plurality of requests and the target image recognition processing end time for the recognition processing of each captured image based on the plurality of requests, An image processing apparatus characterized by obtaining a delay time of recognition processing of each captured image based on a request and rearranging the recognition processing tasks so that a total of the delay times is reduced.
前記複数のカメラの中で2番目以降の順番で連続撮像を行うカメラの連続撮像における最初の撮像の露光完了をトリガとして認識処理タスクの並び替えを実行することを特徴とする請求項2記載の画像処理装置。 The connection order correction means includes:
The recognition processing task is rearranged by using, as a trigger, exposure completion of the first imaging in continuous imaging of a camera that performs continuous imaging in the second and subsequent orders among the plurality of cameras. Image processing device.
当該演算処理部と並列処理可能であって複数のカメラが接続される画像入力部と、
画像データを格納する画像メモリとを備え、
前記複数のカメラが非同期に連続撮像して得られる複数の画像データを処理する画像処理装置が行う画像処理方法において、
撮像とその撮像画像の認識処理とを実行させる複数の要求に応じて前記カメラに撮像させる撮像要求を行う撮像要求工程と、
前記複数の要求に対して認識処理タスクを割り当てるタスク割り当て工程と、
前記複数の要求に基づく毎回の撮像完了時に前記認識処理タスクの優先順位を設定又は更新する設定工程とを備え、
前記認識処理タスクの認識終了毎に前記優先順位に従って、次に実行すべき認識処理タスクを選定し、当該次の認識処理タスクに移行する進行管理工程と、
前記優先順位内での認識処理の優先度をさらに定め、認識処理タスクの実行順を記憶する実行可能キューへの認識処理タスクの接続順位を前記優先度に応じて並び替える優先度設定工程とを備え、
前記優先度設定工程は、前記実行可能キューへの認識処理タスクの接続順位を並び替える際に、認識処理タスクがハード演算を含むか否かを判定し、ハード演算を含み、前記演算処理部との並列処理が可能な認識処理タスクについて、ハード演算占有率が高いものほど優先度を高くして並び替えることを特徴とする画像処理方法。 An arithmetic processing unit;
An image input unit capable of parallel processing with the arithmetic processing unit and connected to a plurality of cameras;
An image memory for storing image data;
In an image processing method performed by an image processing apparatus that processes a plurality of image data obtained by continuously imaging the plurality of cameras asynchronously,
An imaging request step for making an imaging request for imaging by the camera in response to a plurality of requests for executing imaging and recognition processing of the captured image;
A task assignment step for assigning recognition processing tasks to the plurality of requests;
A setting step for setting or updating the priority order of the recognition processing task at the time of completion of each imaging based on the plurality of requests,
A progress management step of selecting a recognition processing task to be executed next in accordance with the priority every time recognition of the recognition processing task is finished, and shifting to the next recognition processing task;
A priority setting step for further determining the priority of the recognition process within the priority order, and rearranging the connection order of the recognition process task to the executable queue storing the execution order of the recognition process task according to the priority. Prepared,
The priority setting step determines whether the recognition processing task includes a hardware operation when rearranging the connection order of the recognition processing task to the executable queue, includes a hardware operation, includes the arithmetic processing unit, An image processing method characterized in that the recognition processing tasks that can be processed in parallel are rearranged at a higher priority as the hardware computation occupancy is higher.
当該演算処理部と並列処理可能であって複数のカメラが接続される画像入力部と、
画像データを格納する画像メモリとを備え、
前記複数のカメラが非同期に連続撮像して得られる複数の画像データを処理する画像処理装置が行う画像処理方法において、
撮像とその撮像画像の認識処理とを実行させる複数の要求に応じて前記カメラに撮像させる撮像要求を行う撮像要求工程と、
前記複数の要求に対して認識処理タスクを割り当てるタスク割り当て工程と、
前記複数の要求に基づく毎回の撮像完了時に前記認識処理タスクの優先順位を設定又は更新する設定工程とを備え、
前記認識処理タスクの認識終了毎に前記優先順位に従って、次に実行すべき認識処理タスクを選定し、当該次の認識処理タスクに移行する進行管理工程と、
認識処理タスクの実行順を記憶する実行可能キューへの認識処理タスクの接続順位を並び替える接続順位補正工程を備え、
前記接続順位補正工程は、
前記複数の要求に基づくそれぞれの撮像画像の認識処理に要する画像認識処理時間及び前記複数の要求に基づくそれぞれの撮像画像の認識処理について目標とする画像認識処理終了時刻とに基づいて、前記複数の要求に基づくそれぞれの撮像画像の認識処理の遅延時間を求め、それぞれの前記遅延時間の合計が低減するように認識処理タスクを並び替えることを特徴とする画像処理方法。 An arithmetic processing unit;
An image input unit capable of parallel processing with the arithmetic processing unit and connected to a plurality of cameras;
An image memory for storing image data;
In an image processing method performed by an image processing apparatus that processes a plurality of image data obtained by continuously imaging the plurality of cameras asynchronously,
An imaging request step for making an imaging request for imaging by the camera in response to a plurality of requests for executing imaging and recognition processing of the captured image;
A task assignment step for assigning recognition processing tasks to the plurality of requests;
A setting step for setting or updating the priority order of the recognition processing task at the time of completion of each imaging based on the plurality of requests,
A progress management step of selecting a recognition processing task to be executed next in accordance with the priority every time recognition of the recognition processing task is finished, and shifting to the next recognition processing task;
A connection order correction step for rearranging the connection order of the recognition processing tasks to the executable queue for storing the execution order of the recognition processing tasks;
The connection order correction step includes:
Based on the image recognition processing time required for the recognition processing of each captured image based on the plurality of requests and the target image recognition processing end time for the recognition processing of each captured image based on the plurality of requests, An image processing method comprising: obtaining a delay time of recognition processing of each captured image based on a request, and rearranging the recognition processing tasks so that a total of the delay times is reduced.
前記複数のカメラの中で2番目以降の順番で連続撮像を行うカメラの連続撮像における最初の撮像の露光完了をトリガとして認識処理タスクの並び替えを実行することを特徴とする請求項5記載の画像処理方法。 The connection order correction step includes:
6. The rearrangement of recognition processing tasks is executed by using the completion of exposure of the first imaging in a continuous imaging of a camera that performs continuous imaging in the second and subsequent orders among the plurality of cameras as a trigger. Image processing method.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013051290A JP6075912B2 (en) | 2013-03-14 | 2013-03-14 | Image processing apparatus and image processing method |
CN201410096426.1A CN104052926B (en) | 2013-03-14 | 2014-03-14 | Image processing apparatus and image processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013051290A JP6075912B2 (en) | 2013-03-14 | 2013-03-14 | Image processing apparatus and image processing method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014178801A JP2014178801A (en) | 2014-09-25 |
JP6075912B2 true JP6075912B2 (en) | 2017-02-08 |
Family
ID=51505259
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013051290A Active JP6075912B2 (en) | 2013-03-14 | 2013-03-14 | Image processing apparatus and image processing method |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP6075912B2 (en) |
CN (1) | CN104052926B (en) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6519656B2 (en) * | 2015-07-24 | 2019-05-29 | 富士通株式会社 | Manufacturing process control system, manufacturing process control method and manufacturing process control program |
CN106453834B (en) * | 2016-09-07 | 2019-08-27 | 努比亚技术有限公司 | Mobile terminal and camera image pickup method |
KR102527925B1 (en) * | 2017-11-29 | 2023-05-03 | 에스케이하이닉스 주식회사 | Memory system and operating method thereof |
JP2019161249A (en) * | 2018-03-07 | 2019-09-19 | Juki株式会社 | Image processing device, mounting device, image processing method, and program |
JP6890101B2 (en) * | 2018-04-13 | 2021-06-18 | 日東電工株式会社 | An image identification device and an article manufacturing device equipped with an image identification device |
JP7030964B2 (en) * | 2018-05-11 | 2022-03-07 | 富士フイルム株式会社 | Shooting system |
JP2020080119A (en) | 2018-11-14 | 2020-05-28 | 日本電信電話株式会社 | Processing request management device, processing request management method, and program |
JP7236939B2 (en) * | 2019-06-03 | 2023-03-10 | 日立Astemo株式会社 | Control device and control method |
JP7405564B2 (en) * | 2019-11-06 | 2023-12-26 | Juki株式会社 | Image processing device, sewing machine, and image processing method |
CN110913138B (en) * | 2019-11-28 | 2021-03-02 | Oppo广东移动通信有限公司 | Continuous shooting method, device, terminal and computer readable storage medium |
TWI800983B (en) | 2021-11-16 | 2023-05-01 | 華碩電腦股份有限公司 | Method for image processing |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62284437A (en) * | 1986-05-31 | 1987-12-10 | Nec Corp | Task control system |
US5394548A (en) * | 1992-10-09 | 1995-02-28 | Fujitsu Limited | Multi-media scheduling system |
JP3215264B2 (en) * | 1994-06-29 | 2001-10-02 | 科学技術庁航空宇宙技術研究所長 | Schedule control apparatus and method |
JP2006065844A (en) * | 1995-10-26 | 2006-03-09 | Matsushita Electric Ind Co Ltd | File system |
JP3762519B2 (en) * | 1997-06-30 | 2006-04-05 | 松下電器産業株式会社 | Component recognition method, component recognition device, and component mounting device |
JPH11232401A (en) * | 1998-02-10 | 1999-08-27 | Dainippon Printing Co Ltd | Card information rewriting device |
JP4091289B2 (en) * | 2001-10-31 | 2008-05-28 | 株式会社東芝 | X-ray computed tomography system |
EP1526685A1 (en) * | 2003-10-24 | 2005-04-27 | International University Bremen Gmbh | Inter-Cell Interference mitigation technique using reservation indicators |
JP2007074425A (en) * | 2005-09-07 | 2007-03-22 | Juki Corp | Camera switching system |
JP2007102399A (en) * | 2005-10-03 | 2007-04-19 | Seiko Epson Corp | Data processor |
JP5381142B2 (en) * | 2009-02-12 | 2014-01-08 | 株式会社ニコン | Imaging device and imaging apparatus |
US20120229481A1 (en) * | 2010-12-13 | 2012-09-13 | Ati Technologies Ulc | Accessibility of graphics processing compute resources |
US9727385B2 (en) * | 2011-07-18 | 2017-08-08 | Apple Inc. | Graphical processing unit (GPU) implementing a plurality of virtual GPUs |
-
2013
- 2013-03-14 JP JP2013051290A patent/JP6075912B2/en active Active
-
2014
- 2014-03-14 CN CN201410096426.1A patent/CN104052926B/en active Active
Also Published As
Publication number | Publication date |
---|---|
CN104052926B (en) | 2018-12-11 |
JP2014178801A (en) | 2014-09-25 |
CN104052926A (en) | 2014-09-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6075912B2 (en) | Image processing apparatus and image processing method | |
JP4095032B2 (en) | Method and apparatus for scheduling requests to a dynamic random access memory device | |
KR102450528B1 (en) | System and method of application aware efficient io scheduler | |
US20130290974A1 (en) | Workflow control of reservations and regular jobs using a flexible job scheduler | |
US8521930B1 (en) | Method and apparatus for scheduling transactions in a host-controlled packet-based bus environment | |
JP2007012929A (en) | Method for checking interference of surface mounting machine, device for checking interference, surface mounting machine with the device and mounting system | |
EP2988583A1 (en) | Substrate working device, substrate working method, and substrate working system | |
JP2010016115A (en) | Component mounting method | |
JP2013142949A (en) | Device and method for processing image | |
JP6476196B2 (en) | Maintenance guidance system and maintenance guidance method | |
JP5130030B2 (en) | Electronic component mounting device | |
JP6448766B2 (en) | Mounting apparatus and mounting method | |
JP4750664B2 (en) | Component mounting method | |
JP5969789B2 (en) | Electronic component mounting equipment | |
CN111930488B (en) | Priority inheritance method and system for task scheduling of operating system | |
JP6139948B2 (en) | Component mounting equipment | |
JP5794856B2 (en) | Electronic component mounting apparatus and electronic component mounting method | |
JP3762519B2 (en) | Component recognition method, component recognition device, and component mounting device | |
CN112165562B (en) | Object photographing method and device in carrying process | |
JP4712287B2 (en) | Electronic component mounting apparatus and electronic component mounting method | |
JP7088809B2 (en) | Work work device, work work system, and control method of work work device | |
JP7474988B2 (en) | Component mounting system and control method for component mounting machine | |
JP2013239665A (en) | Component mounting apparatus | |
JP5659255B2 (en) | Component mounting apparatus, component mounting method, mounting program, and setup method in component mounting apparatus | |
JP2010097985A (en) | Method for controlling surface mounting device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160218 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20161130 |
|
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: 20161213 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170107 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6075912 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |