JP2009116381A - Program creation device for image processing controller - Google Patents

Program creation device for image processing controller Download PDF

Info

Publication number
JP2009116381A
JP2009116381A JP2007285068A JP2007285068A JP2009116381A JP 2009116381 A JP2009116381 A JP 2009116381A JP 2007285068 A JP2007285068 A JP 2007285068A JP 2007285068 A JP2007285068 A JP 2007285068A JP 2009116381 A JP2009116381 A JP 2009116381A
Authority
JP
Japan
Prior art keywords
unit
flowchart
branch
processing
image processing
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.)
Pending
Application number
JP2007285068A
Other languages
Japanese (ja)
Inventor
Takashi Hirano
高志 平野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Keyence Corp
Original Assignee
Keyence Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Keyence Corp filed Critical Keyence Corp
Priority to JP2007285068A priority Critical patent/JP2009116381A/en
Publication of JP2009116381A publication Critical patent/JP2009116381A/en
Pending legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a program creation device capable of suppressing that no wire connection of a processing unit or erroneous wire connection between processing units occurs when creating a flow chart. <P>SOLUTION: This program creation device comprises: a unit list display part 202 for displaying the processing units inside a processing unit storage part 201 as a unit list; a flow chart display part 206 for displaying the flow chart 47 comprising the processing unit on an execution flow; a processing unit insertion part 211 for inserting the processing unit selected on the unit list into a position on the execution flow indicated by operation input; a program generation part 207 for generating a control program of an image processing controller based on the flow chart; and a transfer part 208 for transferring the control program to the image processing controller 11. The processing unit insertion part 211 inserts a branch unit 62a and a confluence unit 62b in a pair when inserting a bypass unit into the flow chart 47. <P>COPYRIGHT: (C)2009,JPO&INPIT

Description

本発明は、画像処理コントローラ用のプログラム作成装置に係り、さらに詳しくは、被写体を撮影して得られるカメラ画像に基づいて判定信号を出力する画像処理コントローラの制御プログラムを作成するプログラム作成装置の改良に関する。   The present invention relates to a program creation device for an image processing controller, and more particularly, to improve a program creation device that creates a control program for an image processing controller that outputs a determination signal based on a camera image obtained by photographing a subject. About.

検査対象物を撮影して得られるカメラ画像を画像処理し、検査対象物の形状、位置、カメラ画像に基づく判定結果を示す判定信号などを処理結果として出力する画像処理コントローラには、一連の処理手順を変更可能なものが知られている(例えば、特許文献1)。通常、一連の処理手順をこの様な画像処理コントローラに実行させるための制御プログラムは、パーソナルコンピュータなどの情報処理端末上で動作するエディタ(ソフトウェア)を用いて作成される。ユーザは、作成した制御プログラムを画像処理コントローラに転送することにより、検査対象物に対して所望の検査を行うことができる。   The image processing controller that performs image processing on a camera image obtained by photographing the inspection object and outputs a determination signal indicating the determination result based on the shape, position, and camera image of the inspection object as a processing result includes a series of processes. A method that can change the procedure is known (for example, Patent Document 1). Usually, a control program for causing such an image processing controller to execute a series of processing procedures is created using an editor (software) operating on an information processing terminal such as a personal computer. The user can perform a desired inspection on the inspection object by transferring the created control program to the image processing controller.

エディタを用いて画像処理コントローラの制御プログラムを作成する場合、まず、所定の画像処理を示す複数の処理ブロックを画面上で配列させることによってフローチャートが生成される。そして、このフローチャートを実行形式に変換させることによって制御プログラムが作成される。画面上で処理ブロックを配列させる際は、ユーザが処理ブロック間を結線することにより、所望の実行フローが形成される。この様な従来のプログラム作成装置では、ユーザが処理ブロック間を結線することによってフローチャートが作成されるので、結線し忘れたり、誤結線した場合に、正常に動作しない制御プログラムが作成されてしまうという問題があった。例えば、実行フローを複数の枝フローに分岐させる分岐ブロックを配置した際に、枝フローを他の処理ブロックに結線し忘れることが考えられる。或いは、実行フロー上の処理ブロックを誤って削除してしまい、実行フローが切れてしまうことが考えられる。
特開平9−288568号公報
When creating a control program for an image processing controller using an editor, first, a flowchart is generated by arranging a plurality of processing blocks indicating predetermined image processing on the screen. And a control program is created by converting this flowchart into an execution form. When processing blocks are arranged on the screen, a desired execution flow is formed by the user connecting the processing blocks. In such a conventional program creation device, a flow chart is created by the user connecting the processing blocks, so that if the user forgets to connect or if the connection is incorrect, a control program that does not operate normally is created. There was a problem. For example, when a branch block that branches an execution flow into a plurality of branch flows is arranged, it may be considered that the branch flow is forgotten to be connected to another processing block. Alternatively, it is possible that a processing block on the execution flow is deleted by mistake and the execution flow is cut off.
JP-A-9-288568

上述した通り、従来の画像処理コントローラ用のプログラム作成装置では、ユーザが処理ブロック間を結線することによってフローチャートが作成されるので、結線し忘れたり、誤結線した場合に、正常に動作しない制御プログラムが作成されてしまうという問題があった。   As described above, in a conventional program creation device for an image processing controller, a flowchart is created by a user connecting between processing blocks. Therefore, a control program that does not operate normally if a connection is forgotten or an incorrect connection is made. There was a problem that would be created.

本発明は、上記の事情に鑑みてなされたものであり、画像処理コントローラの制御プログラムを作成する場合に、正常に動作しない制御プログラムが作成されるのを抑制することができる画像処理コントローラ用のプログラム作成装置を提供することを目的とする。特に、複数の処理ユニットを実行フロー上に配置することによってフローチャートを作成する際に、処理ユニットの未結線や処理ユニット間の誤結線が生じるのを抑制することができるプログラム作成装置を提供することを目的とする。   The present invention has been made in view of the above circumstances, and for creating an image processing controller control program, it is possible to suppress the creation of a control program that does not operate normally. An object is to provide a program creation device. In particular, to provide a program creation device capable of suppressing the occurrence of unconnected wiring of processing units or erroneous connection between processing units when creating a flowchart by arranging a plurality of processing units on an execution flow. With the goal.

また、複数の処理ユニットを実行フロー上に配置することによって生成されたフローチャートを編集する際の操作性を向上させたプログラム作成装置を提供することを目的とする。特に、処理ユニットの未結線や処理ユニット間の誤結線を生じさせることなく、フローチャートを編集することができるプログラム作成装置を提供することを目的とする。   It is another object of the present invention to provide a program creation device with improved operability when editing a flowchart generated by arranging a plurality of processing units on an execution flow. In particular, it is an object of the present invention to provide a program creation device capable of editing a flowchart without causing unconnection of processing units or erroneous connection between processing units.

第1の本発明による画像処理コントローラ用のプログラム作成装置は、被写体を撮影して得られるカメラ画像に基づいて判定信号を出力する画像処理コントローラの制御プログラムを作成するプログラム作成装置であって、パラメータが変更可能な画像処理を示す2以上の画像処理ユニット、並びに、実行フローを2つの枝フローに分岐させる分岐ユニット及びこの分岐ユニットによって分岐された枝フローを合流させる合流ユニットからなるバイパスユニットを処理ユニットとして保持する処理ユニット記憶手段と、上記処理ユニット記憶手段に保持されている処理ユニットをユニット一覧として表示するユニット一覧表示手段と、スタートシンボルにおいて開始し、エンドシンボルにおいて終了する実行フロー上の上記処理ユニットによって構成されたフローチャートを表示するフローチャート表示手段と、上記ユニット一覧上で選択された処理ユニットを操作入力によって指示された上記フローチャート内の実行フロー上の位置に挿入し、フローチャートを書き換える処理ユニット挿入手段と、上記フローチャートに基づいて、画像処理コントローラの制御プログラムを生成するプログラム生成手段と、上記制御プログラムを画像処理コントローラへ転送する転送手段とを備え、上記処理ユニット挿入手段が、上記バイパスユニットをフローチャート内に挿入する場合に、上記分岐ユニット及び上記合流ユニットを対にして挿入するように構成される。   A program creation device for an image processing controller according to a first aspect of the present invention is a program creation device that creates a control program for an image processing controller that outputs a determination signal based on a camera image obtained by photographing a subject, and includes a parameter 2 or more image processing units that can change image processing, and a bypass unit that includes a branch unit that divides an execution flow into two branch flows and a merge unit that merges branch flows branched by the branch units Processing unit storage means held as a unit, unit list display means for displaying the processing units held in the processing unit storage means as a unit list, and the above on the execution flow starting at a start symbol and ending at an end symbol By processing unit A flowchart display means for displaying the flowchart configured as described above, and a processing unit insertion means for rewriting the flowchart by inserting the processing unit selected on the unit list at a position on the execution flow in the flowchart indicated by the operation input. And a program generation means for generating a control program for the image processing controller based on the flowchart, and a transfer means for transferring the control program to the image processing controller. The processing unit insertion means is a flowchart for the bypass unit. When inserting into the inside, it is comprised so that the said branch unit and the said merge unit may be inserted in a pair.

このプログラム作成装置では、ユニット一覧上で選択された処理ユニットを操作入力によって指示されたフローチャート内の実行フロー上の位置に挿入することによって、フローチャートが書き換えられる。その際、バイパスユニットをフローチャート内に挿入する場合には、分岐ユニット及び合流ユニットが対にして挿入される。この様な構成によれば、バイパスユニットをフローチャート内に挿入する場合に、分岐ユニットと、分岐ユニットによって分岐された枝フローを合流させる合流ユニットとを対にして実行フロー上に挿入されるので、枝フローを他の処理ユニットに結線し忘れたり、誤結線するのを防止することができる。   In this program creation device, the flowchart is rewritten by inserting the processing unit selected on the unit list at a position on the execution flow in the flowchart instructed by the operation input. At that time, when the bypass unit is inserted into the flowchart, the branch unit and the merge unit are inserted in pairs. According to such a configuration, when the bypass unit is inserted into the flowchart, the branch unit and the merge unit that merges the branch flow branched by the branch unit are inserted into the execution flow as a pair. It is possible to prevent the branch flow from being forgotten to be connected to another processing unit or erroneously connected.

第2の本発明による画像処理コントローラ用のプログラム作成装置は、上記構成に加え、操作入力に基づいて上記枝フローを追加し、同一のバイパスユニットを構成する分岐ユニット及び合流ユニット間の枝フローを増加させる枝フロー追加手段を備えて構成される。この様な構成によれば、操作入力によって枝フローを追加することができるので、バイパスユニットの枝フローを必要に応じて増やすことができる。   A program creation device for an image processing controller according to a second aspect of the present invention adds the above branch flow based on an operation input in addition to the above configuration, and the branch flow between the branch unit and the merge unit constituting the same bypass unit. A branch flow adding means for increasing is provided. According to such a configuration, a branch flow can be added by an operation input, so that the branch flow of the bypass unit can be increased as necessary.

第3の本発明による画像処理コントローラ用のプログラム作成装置は、上記構成に加え、上記処理ユニット記憶手段が、実行フローを繰り返す際の始点を示す繰返し開始ユニット及び終点を示す繰返し終了ユニットからなる繰返しユニットを処理ユニットとして保持し、上記処理ユニット挿入手段が、上記繰返しユニットをフローチャート内に挿入する場合に、上記繰返し開始ユニット及び上記繰返し終了ユニットを対にして挿入するように構成される。この様な構成によれば、実行フローを繰り返させる繰返しユニットをフローチャート内に挿入する場合に、開始ユニット及び終了ユニットを対にして実行フロー上に挿入されるので、開始ユニットや終了ユニットを配置し忘れるのを防止することができる。   According to a third aspect of the present invention, there is provided a program creation device for an image processing controller, wherein the processing unit storage means includes a repetition start unit indicating a start point and a repetition end unit indicating an end point when the execution flow is repeated. The unit is held as a processing unit, and the processing unit insertion means is configured to insert the repetition start unit and the repetition end unit in pairs when the repetition unit is inserted into the flowchart. According to such a configuration, when a repeating unit that repeats the execution flow is inserted in the flowchart, the start unit and the end unit are inserted into the execution flow as a pair. It is possible to prevent forgetting.

第4の本発明による画像処理コントローラ用のプログラム作成装置は、上記構成に加え、上記フローチャート上で選択された処理ユニットを実行フロー上で移動させ、フローチャートを書き換える処理ユニット移動手段を備え、上記処理ユニット移動手段が、上記バイパスユニットを移動させる場合に、分岐ユニット及び合流ユニット間の他の処理ユニットも同時に移動させるように構成される。この様な構成によれば、バイパスユニットを移動させる場合に、分岐ユニット及び合流ユニット間の他の処理ユニットも同時に移動されるので、処理ユニットの未結線や処理ユニット間の誤結線を生じさせることなく、フローチャートを編集することができる。   A program creation device for an image processing controller according to a fourth aspect of the present invention includes a processing unit moving means for moving the processing unit selected on the flowchart in the execution flow and rewriting the flowchart in addition to the above-described configuration. When the unit moving means moves the bypass unit, the other processing units between the branch unit and the merging unit are also moved at the same time. According to such a configuration, when the bypass unit is moved, other processing units between the branch unit and the merging unit are also moved at the same time, so that the processing unit is not connected or an incorrect connection is generated between the processing units. The flowchart can be edited.

第5の本発明による画像処理コントローラ用のプログラム作成装置は、上記構成に加え、上記フローチャート上で選択された処理ユニットを操作入力によって指示された当該フローチャート内の実行フロー上の位置にコピーし、フローチャートを書き換える処理ユニットコピー手段を備え、上記処理ユニットコピー手段が、上記バイパスユニットをコピーする場合に、分岐ユニット及び合流ユニット間の他の処理ユニットも同時にコピーするように構成される。この様な構成によれば、バイパスユニットをコピーする場合に、分岐ユニット及び合流ユニット間の他の処理ユニットも同時にコピーされるので、処理ユニットの未結線や処理ユニット間の誤結線を生じさせることなく、フローチャートを編集することができる。   A program creation device for an image processing controller according to a fifth aspect of the present invention, in addition to the above configuration, copies a processing unit selected on the flowchart to a position on the execution flow in the flowchart instructed by an operation input, A processing unit copy means for rewriting the flowchart is provided, and when the processing unit copy means copies the bypass unit, the other processing units between the branch unit and the merge unit are also copied at the same time. According to such a configuration, when the bypass unit is copied, other processing units between the branch unit and the merging unit are also copied at the same time, so that the processing unit is not connected or an incorrect connection is generated between the processing units. The flowchart can be edited.

第6の本発明による画像処理コントローラ用のプログラム作成装置は、上記構成に加え、処理ユニット間の実行フローを折り畳んで表示させるための折畳みアイコンを上記分岐ユニットに隣接させて上記フローチャート内に表示し、上記折畳みアイコンの操作に基づいて分岐ユニット及び合流ユニット間の実行フローを省略してフローチャートを表示させる実行フロー折畳み手段を備えて構成される。この様な構成によれば、折畳みアイコンを操作することによって分岐ユニット及び合流ユニット間の実行フローを省略してフローチャートが表示されるので、フローチャートを編集する際のフローチャートの見易さを向上させることができる。   A program creation device for an image processing controller according to a sixth aspect of the present invention displays, in the above flowchart, a folding icon for folding and displaying an execution flow between processing units adjacent to the branch unit in addition to the above configuration. An execution flow folding means for displaying a flowchart while omitting the execution flow between the branch unit and the merging unit based on the operation of the folding icon is configured. According to such a configuration, by operating the folding icon, the execution flow between the branch unit and the merging unit is omitted and the flowchart is displayed, so that it is easy to view the flowchart when editing the flowchart. Can do.

本発明による画像処理コントローラ用のプログラム作成装置によれば、バイパスユニットをフローチャート内に挿入する場合に、分岐ユニットと、分岐ユニットによって分岐された枝フローを合流させる合流ユニットとを対にして実行フロー上に挿入されるので、枝フローを他の処理ユニットに結線し忘れたり、誤結線するのを防止することができる。従って、複数の処理ユニットを実行フロー上に配置することによってフローチャートを作成する際に、処理ユニットの未結線や処理ユニット間の誤結線が生じるのを抑制することができるので、画像処理コントローラの制御プログラムを作成する場合に、正常に動作しない制御プログラムが作成されるのを抑制することができる。   According to the program creation device for an image processing controller according to the present invention, when a bypass unit is inserted in a flowchart, an execution flow is made by pairing a branch unit with a merge unit that merges branch flows branched by the branch unit. Since it is inserted above, it is possible to prevent the branch flow from being forgotten to be connected to another processing unit or from being erroneously connected. Therefore, when creating a flowchart by arranging a plurality of processing units on the execution flow, it is possible to suppress the occurrence of unconnected wiring of processing units or erroneous connection between processing units. When creating a program, it is possible to suppress the creation of a control program that does not operate normally.

また、バイパスユニットを移動させる場合に、分岐ユニット及び合流ユニット間の他の処理ユニットも同時に移動されるので、処理ユニットの未結線や処理ユニット間の誤結線を生じさせることなく、フローチャートを編集することができる。また、バイパスユニットをコピーする場合に、分岐ユニット及び合流ユニット間の他の処理ユニットも同時にコピーされるので、処理ユニットの未結線や処理ユニット間の誤結線を生じさせることなく、フローチャートを編集することができる。従って、複数の処理ユニットを実行フロー上に配置することによって生成されたフローチャートを編集する際の操作性を向上させることができる。   In addition, when the bypass unit is moved, other processing units between the branch unit and the merging unit are also moved at the same time, so that the flowchart can be edited without causing unconnected connection of the processing units or erroneous connection between the processing units. be able to. In addition, when copying the bypass unit, other processing units between the branch unit and the merge unit are also copied at the same time, so the flowchart can be edited without causing unconnected connection of processing units or erroneous connection between processing units. be able to. Therefore, it is possible to improve the operability when editing the flowchart generated by arranging a plurality of processing units on the execution flow.

<検査システム>
図1は、本発明の実施の形態によるプログラム作成装置を含む検査システムの一構成例を示した斜視図である。この検査システムは、検査対象物の搬送ライン上に配置される画像処理装置1と、この画像処理装置1の制御プログラムを生成するPC(パーソナルコンピュータ)2とからなる。
<Inspection system>
FIG. 1 is a perspective view showing a configuration example of an inspection system including a program creation device according to an embodiment of the present invention. This inspection system includes an image processing apparatus 1 arranged on a conveyance line of an inspection object and a PC (personal computer) 2 that generates a control program for the image processing apparatus 1.

画像処理装置1は、画像処理コントローラ11、カメラ12、ディスプレイ13a及び操作ユニット13bからなり、検査対象物から得られたカメラ画像に基づいて判定信号を出力するセンサー装置である。この判定信号は、図示しないPLC(Programmable Logic Controller:プログラマブルコントローラ)などへ入力され、画像処理装置1は、FA(Factory Automation)センサーとして使用される。   The image processing device 1 is a sensor device that includes an image processing controller 11, a camera 12, a display 13a, and an operation unit 13b, and outputs a determination signal based on a camera image obtained from an inspection object. This determination signal is input to a PLC (Programmable Logic Controller) not shown, and the image processing apparatus 1 is used as an FA (Factory Automation) sensor.

カメラ12は、被写体を撮影して画像データを生成し、カメラ画像として出力する撮像装置であり、画像処理コントローラ11に着脱可能に接続される。カメラ12は、例えば、検査対象物が搬送される搬送ライン上に配置される。   The camera 12 is an imaging device that shoots a subject, generates image data, and outputs it as a camera image, and is detachably connected to the image processing controller 11. For example, the camera 12 is disposed on a transport line on which the inspection object is transported.

ディスプレイ13aは、検査対象物を撮影して得られたカメラ画像やカメラ画像に基づく画像処理結果を表示するための出力装置である。操作ユニット13bは、ディスプレイ13a上でフォーカス位置を移動させたり、メニュー項目を選択するための入力装置である。   The display 13a is an output device for displaying a camera image obtained by photographing an inspection object and an image processing result based on the camera image. The operation unit 13b is an input device for moving a focus position on the display 13a and selecting a menu item.

画像処理コントローラ11は、カメラ12からのカメラ画像を取り込んで処理し、カメラ画像に基づいて行った判定結果を示す判定信号を処理結果として出力する画像処理装置1の本体ユニットである。   The image processing controller 11 is a main unit of the image processing apparatus 1 that captures and processes a camera image from the camera 12 and outputs a determination signal indicating a determination result made based on the camera image as a processing result.

この画像処理コントローラ11には、最大で4台のカメラ12が接続され、これらのカメラ12から取得したカメラ画像に基づいて画像処理が行われる。画像処理コントローラ11から出力される判定信号は、製品の良否などの判定結果を示す信号として生成される。   Up to four cameras 12 are connected to the image processing controller 11, and image processing is performed based on camera images acquired from these cameras 12. The determination signal output from the image processing controller 11 is generated as a signal indicating a determination result such as product quality.

また、画像処理コントローラ11には、ディスプレイ13a及び操作ユニット13bが接続されており、PC2を接続しなくても、操作ユニット13bを入力装置とし、ディスプレイ13aを出力装置として動作させることができる。   Further, the display 13a and the operation unit 13b are connected to the image processing controller 11, and the operation unit 13b can be operated as an input device and the display 13a can be operated as an output device without being connected to the PC 2.

PC2は、画像処理コントローラ11の制御プログラムを作成するプログラム作成装置であり、PC2上で動作するエディタ(ソフトウェア)によって制御プログラムが生成される。画像処理コントローラ11の制御プログラムを作成する際、PC2上でシミュレーションして動作確認することができる。   The PC 2 is a program creation device that creates a control program for the image processing controller 11, and a control program is generated by an editor (software) operating on the PC 2. When creating a control program for the image processing controller 11, a simulation can be performed on the PC 2 to confirm the operation.

PC2と画像処理装置1の画像処理コントローラ11とは、イーサネット(Ethernet:登録商標)などの通信ネットワークを介して接続される。PC2には、複数の画像処理コントローラ11が着脱可能に接続される。PC2上で作成した制御プログラムを画像処理コントローラ11に転送することにより、画像処理コントローラ11内の制御プログラムを書き換えることができる。また、画像処理コントローラ11内の制御プログラムを取り込んでPC2上で編集することもできる。   The PC 2 and the image processing controller 11 of the image processing apparatus 1 are connected via a communication network such as Ethernet (registered trademark). A plurality of image processing controllers 11 are detachably connected to the PC 2. By transferring the control program created on the PC 2 to the image processing controller 11, the control program in the image processing controller 11 can be rewritten. It is also possible to take in a control program in the image processing controller 11 and edit it on the PC 2.

<システム構成>
図2は、図1の検査システムのシステム構成の一例を示したブロック図である。この検査システム100は、1台のPC2と、通信ネットワーク3を介してPC2に接続された複数の画像処理装置1により構成される。PC2上で作成された制御プログラムは、検査設定データ22としてメモリ21内に格納される。
<System configuration>
FIG. 2 is a block diagram showing an example of the system configuration of the inspection system of FIG. The inspection system 100 includes a single PC 2 and a plurality of image processing apparatuses 1 connected to the PC 2 via the communication network 3. The control program created on the PC 2 is stored in the memory 21 as inspection setting data 22.

PC2上で作成された検査設定データ22は、通信ネットワーク3を介して画像処理コントローラ11に転送される。このとき、転送先を指定して検査設定データ22を転送することにより、所望の画像処理コントローラ11について、メモリ14内の検査設定データ15を更新し、或いは、メモリ14内に新たな検査設定データを追加することができる。   The examination setting data 22 created on the PC 2 is transferred to the image processing controller 11 via the communication network 3. At this time, by specifying the transfer destination and transferring the inspection setting data 22, the inspection setting data 15 in the memory 14 is updated for the desired image processing controller 11, or new inspection setting data is stored in the memory 14. Can be added.

この画像処理コントローラ11では、フラッシュメモリなどのメモリ14内に複数の検査設定データ15が保持されている。各検査設定データ15は、処理手順や検査内容が異なる制御プログラムであり、ユーザ操作に基づいて実行対象とする実行対象とする検査設定データ15を変更することができる。   In the image processing controller 11, a plurality of examination setting data 15 is held in a memory 14 such as a flash memory. Each inspection setting data 15 is a control program having a different processing procedure and inspection content, and can change the inspection setting data 15 to be executed as an execution target based on a user operation.

PC2では、通信ネットワーク3によって接続されている画像処理コントローラ11から検査設定データ15を取得して編集する動作が行われる。   In the PC 2, an operation for acquiring and editing the examination setting data 15 from the image processing controller 11 connected by the communication network 3 is performed.

<エディタ画面>
図3は、図2の検査システム100におけるPC2の動作の一例を示した図であり、検査設定データ22を作成するためのエディタ画面40が示されている。エディタ画面40は、PC2上で検査設定データを新たに作成し、或いは、画像処理コントローラ11から取得した検査設定データを編集するための編集画面であり、PC2上に表示される。
<Editor screen>
FIG. 3 is a diagram showing an example of the operation of the PC 2 in the inspection system 100 of FIG. 2, and shows an editor screen 40 for creating the inspection setting data 22. The editor screen 40 is an editing screen for newly creating inspection setting data on the PC 2 or editing inspection setting data acquired from the image processing controller 11, and is displayed on the PC 2.

このエディタ画面40は、それぞれ表示位置や表示範囲が変更可能な複数のウィンドウ画面からなる。具体的には、システムビューウィンドウ41、パーツリストウィンドウ42、ユニットプロパティウィンドウ43、ビジョンビューウィンドウ44及びリザルトビューウィンドウ45からなる。   The editor screen 40 includes a plurality of window screens whose display positions and display ranges can be changed. Specifically, it consists of a system view window 41, a parts list window 42, a unit property window 43, a vision view window 44, and a result view window 45.

システムビューウィンドウ41は、システム構成や編集対象とする検査設定データを一覧表示するためのウィンドウ画面であり、コントローラ一覧画面41a及びワークスペース一覧画面41bからなる。   The system view window 41 is a window screen for displaying a list of system configuration and examination setting data to be edited, and includes a controller list screen 41a and a workspace list screen 41b.

コントローラ一覧画面41aは、PC2に接続されている画像処理コントローラ11を一覧表示するための画面であり、画像処理コントローラ11を示すアイコンや、画像処理コントローラ11内に保持されている検査設定データ15を示すアイコンが表示されている。   The controller list screen 41 a is a screen for displaying a list of the image processing controllers 11 connected to the PC 2. The controller list screen 41 a displays icons indicating the image processing controller 11 and inspection setting data 15 held in the image processing controller 11. An icon is displayed.

画像処理コントローラ11や検査設定データ15を示す各アイコンは、ツリー形式で表示されている。すなわち、画像処理コントローラ11を上階層とし、この画像処理コントローラ11内に保持されている検査設定データ15を下階層として、検査設定データ15がどの画像処理コントローラ11に保持されているのかが識別可能なように表示されている。   The icons indicating the image processing controller 11 and the inspection setting data 15 are displayed in a tree format. That is, it is possible to identify which image processing controller 11 holds the inspection setting data 15 with the image processing controller 11 as the upper layer and the inspection setting data 15 held in the image processing controller 11 as the lower layer. It is displayed as follows.

ワークスペース一覧画面41bは、編集対象とする検査設定データを一覧表示するための画面であり、画像処理コントローラ11ごとに設けられるメモリ21上の作業領域を示すアイコンや、検査設定データを示すアイコンが表示されている。画像処理コントローラ11ごとに設けられるメモリ21上の作業領域は、該当する画像処理コントローラ11に関連付けられており、ワークスペースとして表示されている。つまり、PC2上には、検査設定データが画像処理コントローラ11ごとに保持され、画像処理コントローラ11ごとのワークスペースにおいて編集が行われる。   The workspace list screen 41b is a screen for displaying a list of inspection setting data to be edited. An icon indicating a work area on the memory 21 provided for each image processing controller 11 or an icon indicating inspection setting data. It is displayed. A work area on the memory 21 provided for each image processing controller 11 is associated with the corresponding image processing controller 11 and displayed as a work space. That is, inspection setting data is held for each image processing controller 11 on the PC 2, and editing is performed in a work space for each image processing controller 11.

この様な作業領域を示すアイコンや検査設定データを示すアイコンは、ツリー形式で表示されている。すなわち、画像処理コントローラ11に対応するワークスペースを上階層とし、このワークスペース内の検査設定データを下階層として、検査設定データがどのワークスペースに存在するのかが識別可能なように表示されている。   Such icons indicating work areas and icons indicating inspection setting data are displayed in a tree format. That is, the workspace corresponding to the image processing controller 11 is set as the upper hierarchy, and the examination setting data in this workspace is set as the lower hierarchy, so that the workspace in which the examination setting data exists can be identified. .

コントローラ一覧画面41aの見出し欄に配置されている更新ボタン(アイコン)を操作すれば、画像処理コントローラ11から新たに検査設定データが取得され、PC2上に保持されている検査設定データやシステム構成が最新のものに更新される。また、登録ボタンを操作すれば、PC2上で作成された検査設定データが画像処理コントローラ11に転送される。   When an update button (icon) arranged in the heading column of the controller list screen 41a is operated, new inspection setting data is acquired from the image processing controller 11, and the inspection setting data and system configuration held on the PC 2 are changed. Updated to the latest. If the registration button is operated, the examination setting data created on the PC 2 is transferred to the image processing controller 11.

ワークスペース一覧画面41bの見出し欄に配置されている更新ボタン(アイコン)を操作すれば、画像処理コントローラ11から取得された検査設定データによって、編集対象とする検査設定データが更新される。また、追加ボタンを操作すれば、新たな作業領域が設けられ、検査設定データを示すアイコンが追加される。   When the update button (icon) arranged in the heading column of the workspace list screen 41b is operated, the examination setting data to be edited is updated with the examination setting data acquired from the image processing controller 11. When the add button is operated, a new work area is provided, and an icon indicating inspection setting data is added.

パーツリストウィンドウ42は、検査設定データを作成する際に選択可能な処理ユニットをユニット一覧として表示するためのウィンドウ画面である。処理ユニットは、パラメータが変更可能な処理を示すシンボルであり、画像処理を示す画像処理ユニット、撮像処理を示す撮像ユニット、フロー制御処理を示す制御ユニット、及び、出力処理を示す出力ユニットがある。この様な処理ユニットを後述するフロービューウィンドウ内のフローチャート上に配置することによって、所望のフローシーケンスからなる検査設定データが作成される。   The parts list window 42 is a window screen for displaying processing units that can be selected when creating inspection setting data as a unit list. The processing unit is a symbol indicating processing whose parameters can be changed, and includes an image processing unit indicating image processing, an imaging unit indicating imaging processing, a control unit indicating flow control processing, and an output unit indicating output processing. By arranging such processing units on a flowchart in a flow view window described later, inspection setting data including a desired flow sequence is created.

パーツリストウィンドウ42内には、複数の処理ユニットが表示される。この例では、処理の種類によって処理ユニットが8つのカテゴリーに区分され、各カテゴリーを示すアイコンが表示されている。具体的には、「画像入力」、「計測」、「制御」、「演算」、「タイミング」、「表示」、「出力」及び「コマンド出力」のカテゴリーに区分されている。   A plurality of processing units are displayed in the parts list window 42. In this example, the processing units are divided into eight categories depending on the type of processing, and icons indicating each category are displayed. Specifically, it is divided into categories of “image input”, “measurement”, “control”, “calculation”, “timing”, “display”, “output”, and “command output”.

「画像入力」は、撮像に関する処理ユニットが属するカテゴリーであり、カメラ画像を取り込む撮像ユニットが属している。撮像ユニットには、シャッタースピード、カメラ感度、フラッシュ遅延時間、フラッシュオン時間、撮像対象カメラ、フラッシュ端子及びトリガ端子を指定するためのパラメータがプロパティとして関連付けられている。   “Image input” is a category to which a processing unit related to imaging belongs, and an imaging unit that captures a camera image belongs to it. Parameters for designating the shutter speed, camera sensitivity, flash delay time, flash on time, imaging target camera, flash terminal, and trigger terminal are associated with the imaging unit as properties.

「計測」は、計測に関する処理ユニットが属するカテゴリーであり、パターンサーチユニット、エッジ位置検出ユニット、ブロブ検出ユニット、色検査ユニットなどの画像処理ユニットが属している。   “Measurement” is a category to which a processing unit related to measurement belongs, and includes an image processing unit such as a pattern search unit, an edge position detection unit, a blob detection unit, and a color inspection unit.

パターンサーチは、カメラ画像上のサーチ領域内を走査して予め登録されたパターン画像と一致する位置を検出する処理である。エッジ位置検出は、カメラ画像上の計測領域について、検出方向に垂直な方向の平均濃度を求め、検出方向の濃度変化からエッジの位置を検出する処理である。   The pattern search is a process for detecting a position that matches a previously registered pattern image by scanning the search area on the camera image. Edge position detection is a process of obtaining an average density in a direction perpendicular to the detection direction for a measurement region on a camera image and detecting the edge position from the density change in the detection direction.

ブロブ検出は、カメラ画像を2値化し、同一濃度を有する画素の塊をブロブとして抽出して、計測領域内に存在するブロブの数、面積、重心位置を検出する処理である。色検査は、検査領域内の色を測定する処理であり、色に対応する数値が計測結果として抽出される。   The blob detection is a process of binarizing the camera image, extracting a block of pixels having the same density as a blob, and detecting the number, area, and barycentric position of the blob existing in the measurement region. The color inspection is a process of measuring the color in the inspection area, and a numerical value corresponding to the color is extracted as a measurement result.

「制御」は、制御に関する処理ユニットが属するカテゴリーであり、繰返しユニット、バイパスユニット、エンドシンボルなどの制御ユニットが属している。繰返しユニットは、実行フローを繰り返す際の始点を示す繰返し開始ユニットと、終点を示す繰返し終了ユニットとからなる処理ユニットであり、所定の条件が満たされるまで開始ユニット及び終了ユニット間の実行フローを繰り返させる処理を示す。   “Control” is a category to which processing units related to control belong, and control units such as a repeat unit, a bypass unit, and an end symbol belong to it. The repeat unit is a processing unit composed of a repeat start unit indicating the start point when repeating the execution flow and a repeat end unit indicating the end point, and the execution flow between the start unit and the end unit is repeated until a predetermined condition is satisfied. Shows the processing to be performed.

バイパスユニットは、実行フローを2つの枝フローに分岐させる分岐ユニットと、この分岐ユニットによって分岐された枝フローを合流させる合流ユニットとからなる処理ユニットであり、所定の条件で実行フローを分岐させる処理を示す。エンドシンボルは、1回のフローシーケンスを終了させるための表示オブジェクトである。   The bypass unit is a processing unit that includes a branch unit that branches the execution flow into two branch flows and a merge unit that joins the branch flows branched by the branch unit. The bypass unit is a process that branches the execution flow under a predetermined condition. Indicates. The end symbol is a display object for ending one flow sequence.

「演算」は、演算に関する処理ユニットが属するカテゴリーであり、数値演算ユニットなどの画像処理ユニットが属している。「タイミング」は、フロー遷移の停止動作に関する処理ユニットが属するカテゴリーであり、ウェイトユニット、イベント待ちユニットなどの制御ユニットが属している。ウェイトユニットは、所定時間だけフロー遷移を停止させる処理を示す。イベント待ちユニットは、端子入力や変数値が所定の状態となるまでフロー遷移を停止させる処理を示す。   “Calculation” is a category to which a processing unit related to calculation belongs, and an image processing unit such as a numerical calculation unit belongs to it. “Timing” is a category to which a processing unit related to a flow transition stop operation belongs, and a control unit such as a wait unit or an event waiting unit belongs to it. The weight unit indicates a process of stopping the flow transition for a predetermined time. The event waiting unit indicates a process of stopping the flow transition until the terminal input or the variable value is in a predetermined state.

「表示」は、表示に関する処理ユニットが属するカテゴリーであり、グラフィック表示ユニットなどの画像処理ユニットが属している。グラフィック表示ユニットは、変数を参照してグラフィックを描画する処理を示す。   “Display” is a category to which a processing unit relating to display belongs, and to which an image processing unit such as a graphic display unit belongs. The graphic display unit indicates a process of drawing a graphic with reference to a variable.

「出力」は、出力に関する処理ユニットが属するカテゴリーであり、端子出力ユニット、結果出力ユニット、画像出力ユニットなどの出力ユニットが属している。端子出力ユニットには、参照先ユニット、判定結果及び判定結果の出力先端子を指定するためのパラメータがプロパティとして関連付けられている。結果出力ユニットには、参照先ユニット、処理結果を示す数値データ、数値データを出力する際のデータ形式(テキスト形式又はバイナリ形式)、及び、数値データの出力先を指定するためのパラメータがプロパティとして関連付けられている。画像出力ユニットには、参照先ユニット、カメラ画像、画像データを出力する際のデータ形式、及び、画像データの出力先を指定するためのパラメータがプロパティとして関連付けられている。   “Output” is a category to which a processing unit related to output belongs, and output units such as a terminal output unit, a result output unit, and an image output unit belong to this category. The terminal output unit is associated with a reference destination unit, a determination result, and a parameter for specifying an output destination terminal of the determination result as properties. In the result output unit, the reference destination unit, numeric data indicating the processing result, the data format (text format or binary format) for outputting the numeric data, and parameters for specifying the output destination of the numeric data are the properties. Associated. The image output unit is associated with a reference destination unit, a camera image, a data format for outputting image data, and parameters for designating the output destination of the image data as properties.

「コマンド出力」は、コマンド出力に関する処理ユニットが属するカテゴリーであり、コマンド発行ユニットなどの出力ユニットが属している。   “Command output” is a category to which a processing unit related to command output belongs, and an output unit such as a command issuing unit belongs to it.

ユニットプロパティウィンドウ43は、コントローラ一覧画面41a、ワークスペース一覧画面41b又はフロービューウィンドウ上で選択された処理ユニットのプロパティを表示するためのウィンドウ画面である。   The unit property window 43 is a window screen for displaying the properties of the processing unit selected on the controller list screen 41a, the work space list screen 41b or the flow view window.

ビジョンビューウィンドウ44は、コントローラ一覧画面41a、ワークスペース一覧画面41b又はフロービューウィンドウ上で選択された処理ユニットに関連付けられているカメラ画像を表示するためのウィンドウ画面である。   The vision view window 44 is a window screen for displaying a camera image associated with the processing unit selected on the controller list screen 41a, the work space list screen 41b, or the flow view window.

リザルトビューウィンドウ45は、コントローラ一覧画面41a、ワークスペース一覧画面41b又はフロービューウィンドウ上で選択された処理ユニットのパラメータと、シミュレーション結果とを表示するためのウィンドウ画面である。   The result view window 45 is a window screen for displaying the parameters of the processing unit selected on the controller list screen 41a, the work space list screen 41b or the flow view window, and the simulation result.

このエディタ画面40では、システムビューウィンドウ41の下部に配置されているフロービューボタン41cを操作すれば、上述したシステムビューウィンドウ41に代えて、フロービューウィンドウを表示させることができる。フロービューウィンドウは、画像処理コントローラ11に実行させる処理手順をフローチャートとして表示するウィンドウ画面であり、ワークスペース一覧画面41b上で選択された検査設定データが表示される。   On this editor screen 40, if a flow view button 41c arranged at the bottom of the system view window 41 is operated, a flow view window can be displayed instead of the system view window 41 described above. The flow view window is a window screen that displays a processing procedure to be executed by the image processing controller 11 as a flowchart, and displays examination setting data selected on the work space list screen 41b.

また、リザルトビューウィンドウ45の下部に配置されている抽出一覧ボタン45aを操作すれば、リザルトビューウィンドウ45に代えて、抽出一覧ウィンドウを表示させることができる。抽出一覧ウィンドウは、リザルトビューウィンドウ45上で選択されたパラメータ及び処理結果を抽出して処理ユニットごとの抽出結果を一覧表示するためのウィンドウ画面である。   Further, by operating the extraction list button 45 a arranged at the lower part of the result view window 45, the extraction list window can be displayed instead of the result view window 45. The extraction list window is a window screen for extracting the parameters and processing results selected on the result view window 45 and displaying a list of extraction results for each processing unit.

<フロービューウィンドウ>
図4は、図2の検査システム100におけるPC2の動作の一例を示した図であり、フロービューウィンドウ46が表示されたエディタ画面40が示されている。フロービューウィンドウ46は、検査設定データを新たに作成し、或いは、画像処理コントローラ11から取得した検査設定データを編集するために、処理手順を示すフローチャート47を表示するウィンドウ画面である。
<Flow view window>
FIG. 4 is a diagram showing an example of the operation of the PC 2 in the inspection system 100 of FIG. 2, and shows an editor screen 40 on which a flow view window 46 is displayed. The flow view window 46 is a window screen that displays a flowchart 47 showing a processing procedure for newly creating examination setting data or editing examination setting data acquired from the image processing controller 11.

フロービューウィンドウ46には、複数の処理ユニット48を配列することによって構成されたフローチャート47が表示されている。フローチャート47には、スタートシンボル「S」において開始し、エンドシンボル「E」において終了する実行フロー上で時系列に実行される処理ユニットが表されている。ユーザは、この様な実行フロー上に処理ユニット48を配置することによって所望の検査設定データを構成することができる。   In the flow view window 46, a flow chart 47 configured by arranging a plurality of processing units 48 is displayed. The flowchart 47 shows processing units that are executed in time series on the execution flow that starts at the start symbol “S” and ends at the end symbol “E”. The user can configure desired inspection setting data by arranging the processing unit 48 on such an execution flow.

フロービューウィンドウ46の下部に配置されているシステムビューボタン46aを操作すれば、このフロービューウィンドウ46に代えて、システムビューウィンドウ41を表示させることができる。   By operating a system view button 46 a arranged at the bottom of the flow view window 46, the system view window 41 can be displayed instead of the flow view window 46.

フロービューウィンドウ46上で選択されている処理ユニットは、フォーカス表示され、ユニットプロパティウィンドウ43内にそのプロパティが表示される。ユニットプロパティウィンドウ43内には、編集ボタン43aが配置され、編集ボタン43aを操作すれば、処理ユニットのプロパティを編集するための編集ダイアログが表示される。プロパティの編集ダイアログは、ユーザ操作に基づいて処理ユニットのパラメータを指定し、或いは、既に指定されているパラメータを変更するためのダイアログ画面である。   The processing unit selected on the flow view window 46 is displayed in focus, and its properties are displayed in the unit property window 43. An edit button 43a is arranged in the unit property window 43. When the edit button 43a is operated, an edit dialog for editing the properties of the processing unit is displayed. The property editing dialog is a dialog screen for designating a parameter of a processing unit based on a user operation or changing an already designated parameter.

<フローチャート>
図5は、図2の検査システム100におけるPC2の動作の一例を示した図であり、フロービューウィンドウ46内のフローチャート47の一例が示されている。このフローチャート47は、スタートシンボル61aで開始し、エンドシンボル61bで終了する実行フロー上に複数の処理ユニットが配置されている。
<Flowchart>
FIG. 5 is a diagram showing an example of the operation of the PC 2 in the inspection system 100 of FIG. 2, and an example of the flowchart 47 in the flow view window 46 is shown. In the flowchart 47, a plurality of processing units are arranged on the execution flow starting with the start symbol 61a and ending with the end symbol 61b.

フロービューウィンドウ46上でフローチャート47を作成編集する場合、パーツリストウィンドウ42を用いて作業が行われる。例えば、フローチャート47内に処理ユニットを挿入する際には、パーツリストウィンドウ42上で所望の処理ユニットを選択し、マウスポインタなどで実行フロー上の位置を指定することによって挿入される。   When the flowchart 47 is created and edited on the flow view window 46, the part list window 42 is used for work. For example, when a processing unit is inserted into the flowchart 47, it is inserted by selecting a desired processing unit on the parts list window 42 and designating a position on the execution flow with a mouse pointer or the like.

この例では、フローチャート47が、分岐ユニット62a、撮像ユニット、色検査ユニット、数値演算ユニット、合流ユニット62b、ブロブ検出ユニット、繰返し開始ユニット65a、エッジ位置検出ユニット、パターンサーチユニット、繰返し終了ユニット65b及びグラフィック表示ユニットをこの順序で実行フロー上に配置することによって構成されている。   In this example, the flowchart 47 includes a branch unit 62a, an imaging unit, a color inspection unit, a numerical operation unit, a merge unit 62b, a blob detection unit, a repeat start unit 65a, an edge position detection unit, a pattern search unit, a repeat end unit 65b, and The graphic display units are arranged on the execution flow in this order.

分岐ユニット62a及び合流ユニット62bは、バイパスユニットを構成する制御ユニットであり、実行フロー上にバイパスユニットを挿入する際には、常に分岐ユニット62a及び合流ユニット62bを対にして挿入される。   The branch unit 62a and the merge unit 62b are control units that constitute a bypass unit. When the bypass unit is inserted into the execution flow, the branch unit 62a and the merge unit 62b are always inserted as a pair.

この例では、スタートシンボル61aからの実行フローが分岐ユニット62aにより2つの枝フロー63に分岐され、この分岐ユニット62aで分岐された枝フローが合流ユニット62bにおいて合流されている。その際、一方の枝フロー63は、撮像ユニット、色検査ユニット及び数値演算ユニットを経て合流ユニット62bに達しているのに対して、他方の枝フロー63は、撮像ユニットを経て合流ユニット62bに達するバイパス経路(迂回路)となっている。   In this example, the execution flow from the start symbol 61a is branched into two branch flows 63 by the branch unit 62a, and the branch flows branched by the branch unit 62a are merged in the merge unit 62b. At this time, one branch flow 63 reaches the merging unit 62b via the imaging unit, the color inspection unit, and the numerical operation unit, whereas the other branch flow 63 reaches the merging unit 62b via the imaging unit. It is a bypass route (bypass).

繰返し開始ユニット65a及び繰返し終了ユニット65bは、繰返しユニットを構成する制御ユニットであり、実行フロー上に繰返しユニットを挿入する際にも、繰返し開始ユニット65a及び繰返し終了ユニット65bを対にして挿入される。   The repeat start unit 65a and the repeat end unit 65b are control units that constitute the repeat unit. When the repeat unit is inserted into the execution flow, the repeat start unit 65a and the repeat end unit 65b are inserted as a pair. .

この例では、繰返し開始ユニット65a及び繰返し終了ユニット65b間にエッジ位置検出ユニット及びパターンサーチユニットが配置されており、実行時にはエッジ位置検出ユニット及びパターンサーチユニットの処理が繰り返される。   In this example, the edge position detection unit and the pattern search unit are arranged between the repetition start unit 65a and the repetition end unit 65b, and the processing of the edge position detection unit and the pattern search unit is repeated at the time of execution.

フローチャート47内の分岐ユニット62a及び繰返し開始ユニット65aには、折畳みアイコン64aが配置されている。この折畳みアイコン64aは、制御ユニット間の実行フローを折り畳ませるためのアイコンであり、処理ユニットに隣接させて表示される。例えば、分岐ユニット62aに隣接表示されている折畳みアイコン64aをマウスポインタなどで操作すれば、分岐ユニット62a及び合流ユニット62b間の実行フローを省略してフローチャート47を表示させることができる。   In the branch unit 62a and the repeat start unit 65a in the flowchart 47, a folding icon 64a is arranged. The folding icon 64a is an icon for folding the execution flow between the control units, and is displayed adjacent to the processing unit. For example, when the folding icon 64a displayed adjacent to the branch unit 62a is operated with a mouse pointer or the like, the execution flow between the branch unit 62a and the merge unit 62b can be omitted and the flowchart 47 can be displayed.

また、フローチャート47上で選択されている処理ユニットは、フォーカス表示67され、ユニットプロパティウィンドウ43内に当該処理ユニットのプロパティを表示させ、或いは、編集対象として当該処理ユニットのプロパティを変更することができる。   Further, the processing unit selected on the flowchart 47 is displayed as a focus 67, and the property of the processing unit can be displayed in the unit property window 43, or the property of the processing unit can be changed as an editing target. .

<バイパスユニットの挿入>
図6は、図2の検査システム100におけるPC2の動作の一例を示した図であり、図5のフローチャート47内にバイパスユニットを挿入した場合が示されている。フローチャート47内の実行フロー上にバイパスユニットを挿入する場合、分岐ユニット62aと合流ユニット62bとを対にして挿入される。すなわち、1回の挿入操作によって、分岐ユニット62a及び合流ユニット62bが同時に配置され、枝フローが自動的に生成される。
<Insert bypass unit>
FIG. 6 is a diagram showing an example of the operation of the PC 2 in the inspection system 100 of FIG. 2, and shows a case where a bypass unit is inserted in the flowchart 47 of FIG. When the bypass unit is inserted on the execution flow in the flowchart 47, the branch unit 62a and the merging unit 62b are inserted as a pair. That is, the branch unit 62a and the merge unit 62b are simultaneously arranged by one insertion operation, and the branch flow is automatically generated.

この例では、繰返し終了ユニットとグラフィック表示ユニットとの間にバイパスユニットが挿入され、分岐ユニット62aによって分岐された2つの枝フロー63が形成されている。   In this example, a bypass unit is inserted between the repeat end unit and the graphic display unit, and two branch flows 63 branched by the branch unit 62a are formed.

この様に、バイパスユニットをフローチャート47内に挿入する場合、分岐ユニットや合流ユニットを単独では挿入することはできず、必ず分岐ユニットと合流ユニットとが同時に挿入される。なお、繰返しユニットをフローチャート47内に挿入する場合も、バイパスユニットを挿入する場合と同様にして行われ、必ず繰返し開始ユニット65aと繰返し終了ユニット65bとが同時に挿入される。   As described above, when the bypass unit is inserted into the flowchart 47, the branch unit and the merge unit cannot be inserted alone, and the branch unit and the merge unit are always inserted at the same time. Note that the insertion of the repeat unit into the flowchart 47 is performed in the same manner as when the bypass unit is inserted, and the repeat start unit 65a and the repeat end unit 65b are always inserted at the same time.

<バイパスユニットの移動>
図7及び図8は、図2の検査システム100におけるPC2の動作の一例を示した図であり、図5のフローチャート47内のバイパスユニットを移動させる場合が示されている。図7には、移動対象68として選択された複数の処理ユニットが示されている。バイパスユニットを構成する分岐ユニット62a又は合流ユニット62bのいずれかを選択すると、分岐ユニット62a及び合流ユニット62b間の他の処理ユニットも同時に選択される。
<Movement of bypass unit>
7 and 8 are diagrams showing an example of the operation of the PC 2 in the inspection system 100 of FIG. 2, and the case where the bypass unit in the flowchart 47 of FIG. 5 is moved is shown. FIG. 7 shows a plurality of processing units selected as the movement target 68. When either the branch unit 62a or the merge unit 62b constituting the bypass unit is selected, other processing units between the branch unit 62a and the merge unit 62b are also selected at the same time.

具体的には、分岐ユニット62a又は合流ユニット62bのいずれかを移動対象として選択すれば、これらの処理ユニットと、これらの処理ユニット間に配置されている他の処理ユニット、すなわち、一方の枝フロー上の撮像ユニット、色検査ユニット及び数値演算ユニット、並びに、他方の枝フロー上の撮像ユニットとが移動対象68として同時に選択される。   Specifically, if one of the branching unit 62a and the merging unit 62b is selected as the movement target, these processing units and other processing units arranged between these processing units, that is, one branch flow. The upper imaging unit, the color inspection unit, the numerical operation unit, and the imaging unit on the other branch flow are simultaneously selected as the movement target 68.

図8には、図7の移動対象68として選択された処理ユニットを実行フロー上で移動させた場合が示されている。この例では、移動対象68として選択された処理ユニットが、エッジ位置検出ユニットとパターンサーチユニットとの間の実行フロー上に移動されている。   FIG. 8 shows a case where the processing unit selected as the movement target 68 in FIG. 7 is moved on the execution flow. In this example, the processing unit selected as the movement target 68 is moved on the execution flow between the edge position detection unit and the pattern search unit.

移動対象として選択された処理ユニットの移動は、まず、実行フロー上から移動対象の処理ユニットを切り取り、そして、切り取った処理ユニットをマウスポインタなどによって指示された実行フロー上の位置に挿入することにより行われる。   To move a processing unit selected as a movement target, first cut the processing unit to be moved from the execution flow, and insert the cut processing unit at a position on the execution flow indicated by the mouse pointer or the like. Done.

この様に、バイパスユニットをフローチャート47内で移動させる場合、分岐ユニット62a及び合流ユニット62b間に配置されている他の処理ユニットも移動対象として同時に選択され、これらの処理ユニットが一体的に移動される。   As described above, when the bypass unit is moved in the flowchart 47, the other processing units arranged between the branch unit 62a and the merging unit 62b are simultaneously selected as moving targets, and these processing units are moved together. The

なお、バイパスユニットを実行フロー上の他の位置にコピーする場合も、移動の場合と同様にして行われる。また、バイパスユニットをフローチャート47内から削除する場合、分岐ユニット62aや合流ユニット62bを単独では削除することはできず、常に分岐ユニット62aと合流ユニット62bとが同時に削除される。その際、分岐ユニット62a及び合流ユニット62b間に他の処理ユニットが存在すれば、これらの処理ユニットも同時に削除される。   Note that copying the bypass unit to another position on the execution flow is performed in the same manner as in the case of movement. Further, when the bypass unit is deleted from the flowchart 47, the branch unit 62a and the merge unit 62b cannot be deleted alone, and the branch unit 62a and the merge unit 62b are always deleted at the same time. At this time, if other processing units exist between the branch unit 62a and the merge unit 62b, these processing units are also deleted at the same time.

<枝フローの追加>
図9は、図2の検査システム100におけるPC2の動作の一例を示した図であり、フローチャート47内におけるバイパスユニットの枝フローを増加させた場合が示されている。同一のバイパスユニットを構成する分岐ユニット62aと合流ユニット62bとの間の枝フローは、必要に応じて増やすことができる。
<Add branch flow>
FIG. 9 is a diagram showing an example of the operation of the PC 2 in the inspection system 100 of FIG. 2, and shows a case where the branch flow of the bypass unit in the flowchart 47 is increased. The branch flow between the branch unit 62a and the merge unit 62b constituting the same bypass unit can be increased as necessary.

分岐ユニット62a及び合流ユニット62b間の枝フローは、例えば、フローチャート47上で分岐ユニット62aを操作することによって追加される。この例では、分岐ユニット62aから色検査ユニットへの枝フローと、パターンサーチユニットへの枝フローとは別個の新たな枝フロー69が形成されている。   The branch flow between the branch unit 62a and the merge unit 62b is added by operating the branch unit 62a on the flowchart 47, for example. In this example, a new branch flow 69 is formed separately from the branch flow from the branch unit 62a to the color inspection unit and the branch flow to the pattern search unit.

この様に、分岐ユニット62aは、実行フローを3以上の枝フローに分岐させることもできる。同一の分岐ユニット62aによって分岐された全ての枝フローは、当該分岐ユニットと同一のバイパスユニットを構成する合流ユニット62bによって合流される。   In this way, the branch unit 62a can also branch the execution flow into three or more branch flows. All branch flows branched by the same branch unit 62a are merged by a merge unit 62b constituting the same bypass unit as the branch unit.

図10は、図2の検査システム100におけるPC2の動作の一例を示した図であり、フローチャート47内における枝フロー中にエンドシンボル61bを挿入させた場合が示されている。分岐ユニット62aによって分岐された枝フロー中に、エンドシンボル61bを挿入した場合、当該エンドシンボル61bよりも下流側の枝フローが実線表示から破線表示70に変更される。   FIG. 10 is a diagram showing an example of the operation of the PC 2 in the inspection system 100 of FIG. 2, and shows a case where the end symbol 61 b is inserted in the branch flow in the flowchart 47. When the end symbol 61b is inserted into the branch flow branched by the branch unit 62a, the branch flow downstream of the end symbol 61b is changed from the solid line display to the broken line display 70.

この例では、分岐ユニット62aからエッジ位置検出ユニットを経て合流ユニット62bに達する枝フロー中におけるエッジ位置検出ユニットと合流ユニット62bとの間に、エンドシンボル61bが挿入されている。この様に、エンドシンボル61b以降の枝フローを破線表示70することによって、フローシーケンスが切断されていることを視覚的に認識することができる。   In this example, an end symbol 61b is inserted between the edge position detection unit and the merge unit 62b in the branch flow that reaches the merge unit 62b from the branch unit 62a through the edge position detection unit. In this way, by displaying the branch flow after the end symbol 61b in a broken line 70, it can be visually recognized that the flow sequence is cut.

<実行フローの折畳み表示>
図11は、図2の検査システム100におけるPC2の動作の一例を示した図であり、図5のフローチャート47内の折畳みアイコン64aを操作して分岐ユニット62a及び合流ユニット62b間の実行フローを折り畳ませた場合が示されている。分岐ユニット62aに隣接表示されている折畳みアイコン64aを操作すると、分岐ユニット62a及び合流ユニット62b間の実行フローを省略してフローチャート47が表示される。
<Folded display of execution flow>
FIG. 11 is a diagram showing an example of the operation of the PC 2 in the inspection system 100 of FIG. 2, and the execution flow between the branch unit 62a and the merge unit 62b is folded by operating the folding icon 64a in the flowchart 47 of FIG. The case is shown. When the folding icon 64a displayed adjacent to the branch unit 62a is operated, the execution flow between the branch unit 62a and the merge unit 62b is omitted, and the flowchart 47 is displayed.

この例では、分岐ユニット62aよりも下流側の撮像ユニットから合流ユニット62bまでの処理ユニットが非表示とされ、その間の実行フローが省略されている。すなわち、分岐ユニット62aの次にブロブ検出ユニットが表示されている。   In this example, the processing units from the imaging unit downstream of the branch unit 62a to the merging unit 62b are not displayed, and the execution flow between them is omitted. That is, the blob detection unit is displayed next to the branch unit 62a.

この様に、折り畳ませた分岐ユニット62aには、展開アイコン64bが配置されている。この展開アイコン64bは、制御ユニット間の実行フローを展開させるためのアイコンであり、処理ユニットに隣接させて表示される。分岐ユニット62aに隣接表示されている展開アイコン64bをマウスポインタなどで操作すれば、処理ユニットの非表示が解除され、分岐ユニット62a及び合流ユニット62b間の実行フローを省略せずに表示させることができる。   In this way, the expanded icon 64b is arranged in the folded branch unit 62a. The expansion icon 64b is an icon for expanding the execution flow between the control units, and is displayed adjacent to the processing unit. If the expansion icon 64b displayed adjacent to the branch unit 62a is operated with a mouse pointer or the like, the non-display of the processing unit is canceled and the execution flow between the branch unit 62a and the merge unit 62b can be displayed without omission. it can.

<実行フローのグループ化>
図12は、図2の検査システム100におけるPC2の動作の一例を示した図であり、フローチャート47内の実行フローをグループ化した場合が示されている。フローチャート47内の実行フローは、編集対象として一体的に扱うために、必要に応じてグループ化することができる。このグループ化は、実行フロー上で範囲を指定することによって行われ、連続する複数の処理ユニットを同一のグループに属するものとして表示させることができる。
<Group execution flow>
FIG. 12 is a diagram showing an example of the operation of the PC 2 in the inspection system 100 of FIG. 2, and shows a case where the execution flows in the flowchart 47 are grouped. The execution flow in the flowchart 47 can be grouped as necessary in order to integrally handle it as an editing target. This grouping is performed by designating a range on the execution flow, and a plurality of consecutive processing units can be displayed as belonging to the same group.

同一グループに属している複数の処理ユニットは、実行フロー上で一体的に移動させ、コピーし、或いは、削除することができる。   A plurality of processing units belonging to the same group can be moved together in the execution flow, copied, or deleted.

この例では、エッジ位置検出ユニット、パターンサーチユニット及び色検出ユニットを含む範囲が指定され、これらの処理ユニットがグループ化されている。先頭の処理ユニット、すなわち、エッジ位置検出ユニットには、グループの識別情報を表示するためのグループ化シンボル71が当該処理ユニットに隣接して配置されている。また、グループ化シンボル71から末尾の処理ユニット、すなわち、色検査ユニットにかけて同一グループを示す引き出し線73が表示されている。   In this example, a range including an edge position detection unit, a pattern search unit, and a color detection unit is designated, and these processing units are grouped. In the first processing unit, that is, the edge position detection unit, a grouping symbol 71 for displaying group identification information is arranged adjacent to the processing unit. Further, a lead line 73 indicating the same group is displayed from the grouping symbol 71 to the last processing unit, that is, the color inspection unit.

また、グループ化シンボル71には、グループ内の実行フローを折り畳ませるための折畳みアイコン72aが隣接表示されている。この折畳みアイコン72aをマウスポインタなどで操作すれば、同一グループに属している処理ユニットを非表示とし、グループ内の実行フローを省略してフローチャート47を表示させることができる。   Further, the grouping symbol 71 is adjacently displayed with a folding icon 72a for folding the execution flow in the group. By operating the folding icon 72a with a mouse pointer or the like, the processing units belonging to the same group can be hidden, the execution flow in the group can be omitted, and the flowchart 47 can be displayed.

また、グループ内の処理ユニットには、アクセントカラーの表示領域74が設けられ、表示領域74の色によって同一グループに属する処理ユニットを視覚的に識別することができる。   The processing units in the group are provided with an accent color display area 74, and the processing units belonging to the same group can be visually identified by the color of the display area 74.

図13は、図2の検査システム100におけるPC2の動作の一例を示した図であり、実行フローを重複させてグループ化した場合が示されている。実行フローの一部を重複させてグループ化する場合、重複させる数が増えると、引き出し線73の数が増大して識別しづらくなることが考えられる。   FIG. 13 is a diagram showing an example of the operation of the PC 2 in the inspection system 100 of FIG. 2, and shows a case where execution flows are grouped by overlapping. When a part of the execution flow is overlapped and grouped, if the number of overlaps increases, the number of lead lines 73 may increase, making it difficult to identify.

本実施の形態では、グループ化の際に重複させる数が所定数を越えると、複数のグループ化シンボル71について引き出し線73の共通化が行われる。例えば、エッジ位置検出ユニット、パターンサーチユニット及び色検出ユニットを含む同一の範囲を指定して、6つのグループが形成された場合、第1のグループから第5のグループまでは、別個の引き出し線73が形成されているのに対して、第6のグループは、第5のグループと引き出し線73が共通化されている。   In the present embodiment, when the number to be overlapped at the time of grouping exceeds a predetermined number, the lead lines 73 are made common to a plurality of grouped symbols 71. For example, when six groups are formed by designating the same range including the edge position detection unit, the pattern search unit, and the color detection unit, separate lead lines 73 are provided from the first group to the fifth group. In the sixth group, the fifth group and the lead line 73 are shared.

<エディタの機能構成>
図14は、図2の検査システム100におけるPC2の構成例を示したブロック図であり、画像処理コントローラ11の制御プログラムを作成するエディタの機能構成の一例が示されている。このPC2は、処理ユニット記憶部201、ユニット一覧表示部202、操作入力部203、フローチャート編集部204、フローチャート記憶部205、フローチャート表示部206、プログラム生成部207、メモリ21、転送部208及び実行フロー折畳み部209により構成される。
<Functional structure of editor>
FIG. 14 is a block diagram illustrating a configuration example of the PC 2 in the inspection system 100 of FIG. 2, and illustrates an example of a functional configuration of an editor that creates a control program for the image processing controller 11. The PC 2 includes a processing unit storage unit 201, a unit list display unit 202, an operation input unit 203, a flowchart editing unit 204, a flowchart storage unit 205, a flowchart display unit 206, a program generation unit 207, a memory 21, a transfer unit 208, and an execution flow. The folding unit 209 is configured.

ユニット一覧表示部202は、処理ユニット記憶部201に保持されている処理ユニットをユニット一覧としてパーツリストウィンドウ42内に表示する動作を行っている。操作入力部203は、ユーザ操作に基づいて入力信号を生成し、フローチャート編集部204へ出力する動作を行っている。   The unit list display unit 202 performs an operation of displaying the processing units held in the processing unit storage unit 201 in the parts list window 42 as a unit list. The operation input unit 203 performs an operation of generating an input signal based on a user operation and outputting it to the flowchart editing unit 204.

フローチャート表示部206は、フローチャート記憶部205に保持されているフローチャートをフロービューウィンドウ46内に表示する動作を行っている。   The flowchart display unit 206 performs an operation of displaying the flowchart stored in the flowchart storage unit 205 in the flow view window 46.

プログラム生成部207は、フローチャート記憶部205に保持されているフローチャートを実行形式に変換することにより、画像処理コントローラ11の制御プログラム、すなわち、検査設定データを生成する動作を行っている。メモリ21には、プログラム生成部207により生成された検査設定データや画像処理コントローラ11から取得した検査設定データが保持される。転送部208は、メモリ21内の検査設定データ22を画像処理コントローラ11へ転送する動作を行っている。   The program generation unit 207 performs an operation of generating a control program for the image processing controller 11, that is, inspection setting data, by converting the flowchart held in the flowchart storage unit 205 into an execution format. The memory 21 holds inspection setting data generated by the program generation unit 207 and inspection setting data acquired from the image processing controller 11. The transfer unit 208 performs an operation of transferring the inspection setting data 22 in the memory 21 to the image processing controller 11.

フローチャート編集部204は、処理ユニット挿入部211、枝フロー追加部212、処理ユニット移動部213及び処理ユニットコピー部214からなり、フローチャート記憶部205に保持されているフローチャートをユーザ操作に基づいて編集する動作を行っている。   The flowchart editing unit 204 includes a processing unit insertion unit 211, a branch flow addition unit 212, a processing unit moving unit 213, and a processing unit copy unit 214, and edits a flowchart held in the flowchart storage unit 205 based on a user operation. It is operating.

処理ユニット挿入部211は、ユニット一覧上で選択された処理ユニットをユーザが指示したフローチャート47内の実行フロー上の位置に挿入し、フローチャート記憶部205内のフローチャートを書き換える動作を行っている。この処理ユニット挿入部211では、バイパスユニットをフローチャート47内に挿入する場合に、分岐ユニット62a及び合流ユニット62bを対にして挿入させる。また、繰返しユニットをフローチャート47内に挿入する場合には、繰返し開始ユニット65a及び繰返し終了ユニット65bを対にして挿入させる。   The processing unit insertion unit 211 inserts the processing unit selected on the unit list at a position on the execution flow in the flowchart 47 designated by the user, and performs an operation of rewriting the flowchart in the flowchart storage unit 205. In the processing unit insertion unit 211, when the bypass unit is inserted into the flowchart 47, the branch unit 62a and the merging unit 62b are inserted in pairs. When the repeat unit is inserted into the flowchart 47, the repeat start unit 65a and the repeat end unit 65b are inserted in pairs.

枝フロー追加部212は、ユーザ操作に基づいて枝フロー63を追加し、同一のバイパスユニットを構成する分岐ユニット62a及び合流ユニット62b間の枝フロー63を増加させる動作を行っている。   The branch flow adding unit 212 performs an operation of adding the branch flow 63 based on a user operation and increasing the branch flow 63 between the branch unit 62a and the merge unit 62b configuring the same bypass unit.

処理ユニット移動部213は、フローチャート47上で選択された処理ユニットを実行フロー上で移動させ、フローチャート記憶部205内のフローチャートを書き換える動作を行っている。この処理ユニット移動部213では、バイパスユニットを移動させる場合に、分岐ユニット62a及び合流ユニット62b間の他の処理ユニットも同時に移動させる。   The processing unit moving unit 213 moves the processing unit selected on the flowchart 47 on the execution flow, and performs an operation of rewriting the flowchart in the flowchart storage unit 205. In the processing unit moving unit 213, when the bypass unit is moved, other processing units between the branch unit 62a and the merging unit 62b are also moved simultaneously.

処理ユニットコピー部214は、フローチャート47上で選択された処理ユニットをユーザが指示した当該フローチャート47内の実行フロー上の位置にコピーし、フローチャート記憶部205内のフローチャートを書き換える動作を行っている。この処理ユニットコピー部214では、バイパスユニットをコピーする場合に、分岐ユニット62a及び合流ユニット62b間の他の処理ユニットも同時にコピーさせる。   The processing unit copy unit 214 performs the operation of copying the processing unit selected on the flowchart 47 to the position on the execution flow in the flowchart 47 instructed by the user and rewriting the flowchart in the flowchart storage unit 205. In the processing unit copy unit 214, when the bypass unit is copied, other processing units between the branch unit 62a and the merging unit 62b are also copied at the same time.

実行フロー折畳み部209は、処理ユニット間の実行フローを折り畳んで表示させるための折畳みアイコン64aを分岐ユニット62aに隣接させてフローチャート47内に表示し、折畳みアイコン64aの操作に基づいて分岐ユニット62a及び合流ユニット62b間の実行フローを省略してフローチャート47を表示させる動作を行っている。   The execution flow folding unit 209 displays a folding icon 64a for folding and displaying the execution flow between the processing units in the flowchart 47 adjacent to the branch unit 62a. Based on the operation of the folding icon 64a, the branch unit 62a and The operation of displaying the flowchart 47 is performed by omitting the execution flow between the merging units 62b.

本実施の形態によれば、バイパスユニットをフローチャート47内に挿入する場合に、分岐ユニット62aと、分岐ユニット62aによって分岐された枝フロー63を合流させる合流ユニット62bとを対にして実行フロー上に挿入されるので、枝フローを他の処理ユニットに結線し忘れたり、誤結線するのを防止することができる。   According to the present embodiment, when the bypass unit is inserted into the flowchart 47, the branch unit 62a and the merge unit 62b that merges the branch flow 63 branched by the branch unit 62a are paired on the execution flow. Since it is inserted, it is possible to prevent the branch flow from being forgotten to be connected to another processing unit or from being erroneously connected.

また、バイパスユニットを移動させる場合に、分岐ユニット62a及び合流ユニット62b間の他の処理ユニットも同時に移動されるので、処理ユニットの未結線や処理ユニット間の誤結線を生じさせることなく、フローチャート47を編集することができる。折畳みアイコン64aを操作することによって分岐ユニット62a及び合流ユニット62b間の実行フローを省略してフローチャート47が表示されるので、フローチャート47を編集する際のフローチャートの見易さを向上させることができる。   In addition, when the bypass unit is moved, the other processing units between the branch unit 62a and the merging unit 62b are also moved at the same time. Can be edited. By operating the folding icon 64a, the execution flow between the branch unit 62a and the merging unit 62b is omitted and the flowchart 47 is displayed. Therefore, it is possible to improve the visibility of the flowchart when editing the flowchart 47.

本発明の実施の形態によるプログラム作成装置を含む検査システムの一構成例を示した斜視図である。It is the perspective view which showed one structural example of the test | inspection system containing the program creation apparatus by embodiment of this invention. 図1の検査システムのシステム構成の一例を示したブロック図である。It is the block diagram which showed an example of the system configuration | structure of the inspection system of FIG. 図2の検査システム100におけるPC2の動作の一例を示した図であり、検査設定データ22を作成するためのエディタ画面40が示されている。FIG. 3 is a diagram showing an example of the operation of the PC 2 in the inspection system 100 of FIG. 2, and shows an editor screen 40 for creating inspection setting data 22. 図2の検査システム100におけるPC2の動作の一例を示した図であり、フロービューウィンドウ46が表示されたエディタ画面40が示されている。FIG. 4 is a diagram showing an example of the operation of the PC 2 in the inspection system 100 of FIG. 2 and shows an editor screen 40 on which a flow view window 46 is displayed. 図2の検査システム100におけるPC2の動作の一例を示した図であり、フロービューウィンドウ46内のフローチャート47の一例が示されている。FIG. 4 is a diagram showing an example of the operation of the PC 2 in the inspection system 100 of FIG. 2, and shows an example of a flowchart 47 in the flow view window 46. 図2の検査システム100におけるPC2の動作の一例を示した図であり、図5のフローチャート47内にバイパスユニットを挿入した場合が示されている。FIG. 6 is a diagram showing an example of the operation of the PC 2 in the inspection system 100 of FIG. 2, and shows a case where a bypass unit is inserted in the flowchart 47 of FIG. 5. 図2の検査システム100におけるPC2の動作の一例を示した図であり、移動対象68として選択された複数の処理ユニットが示されている。FIG. 3 is a diagram showing an example of the operation of the PC 2 in the inspection system 100 of FIG. 2, in which a plurality of processing units selected as the movement target 68 are shown. 図2の検査システム100におけるPC2の動作の一例を示した図であり、移動対象68の処理ユニットを実行フロー上で移動させた場合が示されている。3 is a diagram showing an example of the operation of the PC 2 in the inspection system 100 of FIG. 2, and shows a case where the processing unit of the movement target 68 is moved on the execution flow. 図2の検査システム100におけるPC2の動作の一例を示した図であり、バイパスユニットの枝フローを増加させた場合が示されている。It is the figure which showed an example of operation | movement of PC2 in the test | inspection system 100 of FIG. 2, and the case where the branch flow of a bypass unit is increased is shown. 図2の検査システム100におけるPC2の動作の一例を示した図であり、枝フロー中にエンドシンボル61bを挿入させた場合が示されている。It is the figure which showed an example of operation | movement of PC2 in the test | inspection system 100 of FIG. 2, and the case where the end symbol 61b is inserted in the branch flow is shown. 図2の検査システム100におけるPC2の動作の一例を示した図であり、実行フローを折り畳ませた場合が示されている。It is the figure which showed an example of operation | movement of PC2 in the test | inspection system 100 of FIG. 2, and the case where the execution flow is folded is shown. 図2の検査システム100におけるPC2の動作の一例を示した図であり、フローチャート47内の実行フローをグループ化した場合が示されている。It is the figure which showed an example of operation | movement of PC2 in the test | inspection system 100 of FIG. 2, and the case where the execution flow in the flowchart 47 is grouped is shown. 図2の検査システム100におけるPC2の動作の一例を示した図であり、実行フローを重複させてグループ化した場合が示されている。It is the figure which showed an example of operation | movement of PC2 in the test | inspection system 100 of FIG. 2, and the case where an execution flow is overlapped and grouped is shown. 図2の検査システム100におけるPC2の構成例を示したブロック図であり、エディタの機能構成の一例が示されている。FIG. 3 is a block diagram showing a configuration example of a PC 2 in the inspection system 100 of FIG. 2, showing an example of a functional configuration of an editor.

符号の説明Explanation of symbols

1 画像処理装置
2 PC
3 通信ネットワーク
11 画像処理コントローラ
12 カメラ
13a ディスプレイ
13b 操作ユニット
14,21 メモリ
15,22 検査設定データ
40 エディタ画面
47 フローチャート
48 処理ユニット
100 検査システム
201 処理ユニット記憶部
202 ユニット一覧表示部
203 操作入力部
204 フローチャート編集部
205 フローチャート記憶部
206 フローチャート表示部
207 プログラム生成部
208 転送部
209 実行フロー折畳み部
1 Image processing device 2 PC
3 communication network 11 image processing controller 12 camera 13a display 13b operation unit 14, 21 memory 15, 22 inspection setting data 40 editor screen 47 flowchart 48 processing unit 100 inspection system 201 processing unit storage unit 202 unit list display unit 203 operation input unit 204 Flowchart editing unit 205 Flowchart storage unit 206 Flowchart display unit 207 Program generation unit 208 Transfer unit 209 Execution flow folding unit

Claims (6)

被写体を撮影して得られるカメラ画像に基づいて判定信号を出力する画像処理コントローラの制御プログラムを作成するプログラム作成装置において、
パラメータが変更可能な画像処理を示す2以上の画像処理ユニット、並びに、実行フローを2つの枝フローに分岐させる分岐ユニット及びこの分岐ユニットによって分岐された枝フローを合流させる合流ユニットからなるバイパスユニットを処理ユニットとして保持する処理ユニット記憶手段と、
上記処理ユニット記憶手段に保持されている処理ユニットをユニット一覧として表示するユニット一覧表示手段と、
スタートシンボルにおいて開始し、エンドシンボルにおいて終了する実行フロー上の上記処理ユニットによって構成されたフローチャートを表示するフローチャート表示手段と、
上記ユニット一覧上で選択された処理ユニットを操作入力によって指示された上記フローチャート内の実行フロー上の位置に挿入し、フローチャートを書き換える処理ユニット挿入手段と、
上記フローチャートに基づいて、画像処理コントローラの制御プログラムを生成するプログラム生成手段と、
上記制御プログラムを画像処理コントローラへ転送する転送手段とを備え、
上記処理ユニット挿入手段が、上記バイパスユニットをフローチャート内に挿入する場合に、上記分岐ユニット及び上記合流ユニットを対にして挿入することを特徴とする画像処理コントローラ用のプログラム作成装置。
In a program creation device for creating a control program for an image processing controller that outputs a determination signal based on a camera image obtained by photographing a subject,
A bypass unit comprising two or more image processing units indicating image processing whose parameters can be changed, a branch unit for branching the execution flow into two branch flows, and a merge unit for joining the branch flows branched by the branch units Processing unit storage means for holding as a processing unit;
Unit list display means for displaying the processing units held in the processing unit storage means as a unit list;
Flowchart display means for displaying a flowchart constituted by the processing unit on the execution flow starting at the start symbol and ending at the end symbol;
Processing unit insertion means for inserting the processing unit selected on the unit list at a position on the execution flow in the flowchart indicated by the operation input, and rewriting the flowchart;
Program generating means for generating a control program for the image processing controller based on the flowchart,
Transfer means for transferring the control program to the image processing controller,
A program creation device for an image processing controller, wherein the processing unit insertion means inserts the branch unit and the merging unit as a pair when the bypass unit is inserted in the flowchart.
操作入力に基づいて上記枝フローを追加し、同一のバイパスユニットを構成する分岐ユニット及び合流ユニット間の枝フローを増加させる枝フロー追加手段を備えたことを特徴とする請求項1に記載の画像処理コントローラ用のプログラム作成装置。   The image according to claim 1, further comprising branch flow adding means for adding the branch flow based on an operation input and increasing a branch flow between a branch unit and a merging unit constituting the same bypass unit. Program creation device for processing controller. 上記処理ユニット記憶手段が、実行フローを繰り返す際の始点を示す繰返し開始ユニット及び終点を示す繰返し終了ユニットからなる繰返しユニットを処理ユニットとして保持し、
上記処理ユニット挿入手段が、上記繰返しユニットをフローチャート内に挿入する場合に、上記繰返し開始ユニット及び上記繰返し終了ユニットを対にして挿入することを特徴とする請求項1に記載の画像処理コントローラ用のプログラム作成装置。
The processing unit storage means holds, as a processing unit, a repetition unit composed of a repetition start unit indicating a start point and a repetition end unit indicating an end point when the execution flow is repeated,
2. The image processing controller for an image processing controller according to claim 1, wherein the processing unit insertion means inserts the repetition start unit and the repetition end unit in pairs when the repetition unit is inserted in the flowchart. Program creation device.
上記フローチャート上で選択された処理ユニットを実行フロー上で移動させ、フローチャートを書き換える処理ユニット移動手段を備え、
上記処理ユニット移動手段が、上記バイパスユニットを移動させる場合に、分岐ユニット及び合流ユニット間の他の処理ユニットも同時に移動させることを特徴とする請求項1に記載の画像処理コントローラ用のプログラム作成装置。
A processing unit moving means for moving the processing unit selected on the flowchart on the execution flow and rewriting the flowchart;
2. The program creation device for an image processing controller according to claim 1, wherein when the processing unit moving means moves the bypass unit, the other processing units between the branch unit and the merging unit are also moved simultaneously. .
上記フローチャート上で選択された処理ユニットを操作入力によって指示された当該フローチャート内の実行フロー上の位置にコピーし、フローチャートを書き換える処理ユニットコピー手段を備え、
上記処理ユニットコピー手段が、上記バイパスユニットをコピーする場合に、分岐ユニット及び合流ユニット間の他の処理ユニットも同時にコピーすることを特徴とする請求項1に記載の画像処理コントローラ用のプログラム作成装置。
The processing unit selected on the flowchart is copied to a position on the execution flow in the flowchart instructed by the operation input, and includes a processing unit copy means for rewriting the flowchart.
2. The program creation apparatus for an image processing controller according to claim 1, wherein when the processing unit copying means copies the bypass unit, the other processing units between the branch unit and the merging unit are also copied simultaneously. .
処理ユニット間の実行フローを折り畳んで表示させるための折畳みアイコンを上記分岐ユニットに隣接させて上記フローチャート内に表示し、上記折畳みアイコンの操作に基づいて分岐ユニット及び合流ユニット間の実行フローを省略してフローチャートを表示させる実行フロー折畳み手段を備えたことを特徴とする請求項1に記載の画像処理コントローラ用のプログラム作成装置。   A folding icon for displaying the execution flow between processing units in a folded state is displayed in the flowchart adjacent to the branch unit, and the execution flow between the branch unit and the merge unit is omitted based on the operation of the folding icon. The program creation apparatus for an image processing controller according to claim 1, further comprising execution flow folding means for displaying a flowchart.
JP2007285068A 2007-11-01 2007-11-01 Program creation device for image processing controller Pending JP2009116381A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007285068A JP2009116381A (en) 2007-11-01 2007-11-01 Program creation device for image processing controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007285068A JP2009116381A (en) 2007-11-01 2007-11-01 Program creation device for image processing controller

Publications (1)

Publication Number Publication Date
JP2009116381A true JP2009116381A (en) 2009-05-28

Family

ID=40783503

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007285068A Pending JP2009116381A (en) 2007-11-01 2007-11-01 Program creation device for image processing controller

Country Status (1)

Country Link
JP (1) JP2009116381A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011043363A (en) * 2009-08-19 2011-03-03 Keyence Corp Image processor and image processing method
US9256459B2 (en) 2012-06-05 2016-02-09 Ricoh Company, Limited Information processing apparatus, workflow generating system, and workflow generating method
KR101743868B1 (en) * 2016-01-26 2017-06-07 네이버 주식회사 Method and system for image processing

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011043363A (en) * 2009-08-19 2011-03-03 Keyence Corp Image processor and image processing method
US9256459B2 (en) 2012-06-05 2016-02-09 Ricoh Company, Limited Information processing apparatus, workflow generating system, and workflow generating method
KR101743868B1 (en) * 2016-01-26 2017-06-07 네이버 주식회사 Method and system for image processing

Similar Documents

Publication Publication Date Title
JP2009116377A (en) Device for creating program for use in image processing controller
JP5415182B2 (en) Image processing apparatus, program creation support apparatus, and image processing method
JP5060677B2 (en) Image processing controller and inspection support system
JP5074896B2 (en) Inspection support system and image processing controller
JP2018534552A (en) Inspection program editing environment including integrated alignment program planning and editing functions
JP2007128306A (en) Image processing apparatus
JP5060674B2 (en) Program creation device for image processing controller
JP4929133B2 (en) Inspection support system
JP2009123069A (en) Program creation apparatus for image processing controller
JPH09288568A (en) Image processor and execution flow preparing method for the same
JP5060675B2 (en) Program creation device for image processing controller
JP2009116381A (en) Program creation device for image processing controller
JP4944737B2 (en) Program creation device for image processing controller
JP5696194B2 (en) Program creation support apparatus and image processing apparatus
JP2013016013A (en) Development support device and development support method
JP4944751B2 (en) Image processing controller
JP5060676B2 (en) Program creation apparatus and inspection support system for image processing controller
JP6936271B2 (en) Reinforcement measurement system and bar arrangement measurement method
JP6566152B2 (en) System construction support apparatus and system configuration diagram creation method
TWI702494B (en) Alarm function setting device, alarm function setting system and recording medium
CN111052070A (en) User interface development support device, user interface development support method, and user interface development support program
JP7334617B2 (en) Program execution device, program execution method and program
JP2018136913A (en) Image processing apparatus
JP2016071472A (en) Editing support system, editing support method and editing support program
CN117309866A (en) Inspection setting device