JP3456002B2 - 画像処理検査装置 - Google Patents

画像処理検査装置

Info

Publication number
JP3456002B2
JP3456002B2 JP00727494A JP727494A JP3456002B2 JP 3456002 B2 JP3456002 B2 JP 3456002B2 JP 00727494 A JP00727494 A JP 00727494A JP 727494 A JP727494 A JP 727494A JP 3456002 B2 JP3456002 B2 JP 3456002B2
Authority
JP
Japan
Prior art keywords
image processing
program
processing inspection
inspection apparatus
computer
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.)
Expired - Fee Related
Application number
JP00727494A
Other languages
English (en)
Other versions
JPH07210657A (ja
Inventor
俊樹 山根
祥雅 藤原
真之 服部
義彦 杉本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Electric Works Co Ltd
Original Assignee
Matsushita Electric Works Ltd
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 Matsushita Electric Works Ltd filed Critical Matsushita Electric Works Ltd
Priority to JP00727494A priority Critical patent/JP3456002B2/ja
Publication of JPH07210657A publication Critical patent/JPH07210657A/ja
Application granted granted Critical
Publication of JP3456002B2 publication Critical patent/JP3456002B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Image Processing (AREA)
  • Stored Programmes (AREA)
  • Image Analysis (AREA)
  • Processing Or Creating Images (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、工場などの生産設備と
して、生産工程上の製品の良否判定検査などに用いられ
る画像処理検査装置に関するものである。
【0002】
【従来の技術】従来、工場などにおいて人の視覚によっ
ていた各種の目視検査を、正確、高速且つ自動的に行う
ものとして、画像処理検査装置が提供され、昨今では数
多く導入されるようになっている。この種の画像処置検
査装置では、一般的には、まず被測定対象となる生産ラ
イン上に流れてくる工程途中の製品をカメラで画像信号
として取り込み、様々な画像処理を行った後、演算され
た数値あるいは良否の判定結果を出力する。この場合、
ユーザは、必要な演算結果や判定結果を得るために、様
々な計測条件、判定条件を検査の前に予め設定する必要
がある。
【0003】上記条件とは、例えば、検査の開始の条件
設定、カメラによって取り込まれた濃淡画像を白黒の2
値化画像にするしきい値の設定、画像内の検査に必要な
箇所の設定(検査用のライン、ウインドウの設定)、入
力画像に対する設定された検査箇所の位置ずれを補正す
る機能の設定、夫々の検査ラインや検査ウインドウから
得られた情報(製品の面積や傾きなど)を組み合わせて
演算して結果を得るための演算式の設定などがある。ま
た、上述の各種計測条件や判定条件は、製品毎に固有の
ものであるので、これらの条件を製品毎に品種データと
して管理している。
【0004】ところで、ユーザが上記画像処理検査装置
が有している様々な機能を自分自身で使用者設定(カス
マイズ)できるように、カスタマイズしたい内容をユ
ーザ自身がプログラムを記述することで実現できるよう
なユーザプログラミング型の画像処理検査装置が広く導
入されている。この種のユーザプログラミング型の画像
処理検査装置におけるユーザプログラムの開発は、ソー
スプログラムからデバッグまでの全てを、画像処理検査
装置本体だけで行うものと、外部のコンピュータ(一般
的にパーソナルコンピュータ)などと接続して開発を行
うものとに、大きく2つに分類される。
【0005】ここで、前者の場合、画像処理検査装置単
体で全ての処理が行えるが、ソースプログラム編集のた
めエディタ機能が貧弱になり、また機能の拡張性にも乏
しい。これに対して、後者は、汎用のパーソナルコンピ
ュータなどの豊富なソフト資産が使えるため、ソースプ
ログラムの作成編集には高機能なスクリーンエディタ等
を用いることができる。また、機能の拡張についても、
本体内部に持っていない機能も、外部でソフトウエアを
開発した後に転送することで実現できる。
【0006】
【発明が解決しようとする課題】ところで、上記後者の
場合、画像処理検査装置とパーソナルコンピュータとの
接続は、専用インターフェースボードなどを用いたパラ
レルインターフェースとしての接続が主流である。この
場合、専用インターフェースボードの性格上、パーソナ
ルコンピュータのメーカや機種に依存してしまう。この
ため、例えば工場などの現場で、開発やデバッグを行う
場合、現場にパーソナルコンピュータがあっても、メー
カや機種が違うため使用できない。さらに、専用インタ
ーフェースボードが用意できないために、開発が行えな
いという欠点があった。
【0007】本発明は上述の点に鑑みて為されたもので
あり、その目的とするところは、専用インターフェース
ボードがなくても、パーソナルコンピュータを用いてユ
ーザプログラムの開発が行える画像処理検査装置を提供
することにある。
【0008】
【課題を解決するための手段】請求項1の発明は、上記
目的を達成するために、画像処理検査装置本体と汎用の
コンピュータとを夫々付属のシリアルインターフェース
で接続してユーザプログラムを開発することで、ユーザ
が画像処理検査装置本体の機能をユーザの仕様に基づい
てカスタマイズすることができる画像処理検査装置にお
いて、ユーザが記述するソースプログラムはコンピュー
タで作成編集し、画像処理検査装置本体上で動作する実
行形式プログラムは、コンピュータでユーザプログラム
から作成し、出来上がった実行形式プログラムをシリア
ルインターフェースでコンピュータから画像処理検査装
置本体に転送し、動作の確認やデバッグは、コンピュー
タからのコマンドの授受によって、あるいは画像処理検
査装置本体の操作キーないしはキーボードあるいはマウ
スなどの入力デバイスの操作で行い、さらにデバッグが
完了した時点で、画像処理検査装置本体の備える不揮発
性記憶装置あるいは不揮発性記憶素子に転送して実行形
式プログラムを保存し、以降は不揮発性記憶装置あるい
は不揮発性記憶素子に保存された実行形式プログラムを
画像処理検査装置本体単体で実行させるようにしてあ
る。
【0009】請求項2の発明は、画像処理検査装置本体
のシリアルインターフェースに接続されるロボットなど
の外部機器が存在する場合にも、外部機器を接続したま
まで、ユーザプログラムの開発が行えるようにするため
に、上記画像処理検査装置本体のシリアルインターフェ
ースとして、汎用に使用されるシリアルインターフェー
スとは別にユーザプログラム開発専用のインターフェー
スを個別に設けてある。
【0010】請求項3の発明は、画像処理検査装置本体
のシリアルインターフェースに接続されるロボットなど
の外部機器が存在する場合にも、外部機器を接続したま
まで、ユーザプログラムの開発が行え、しかも新たに画
像処理検査装置本体のシリアルインターフェースを増設
する必要を無くすために、画像処理検査装置本体が、マ
ンマシンインターフェースとしてのキーボードやマウス
などの入力デバイスを備えている場合において、上記コ
ンピュータを接続するシリアルインターフェースとし
て、画像処理検査装置本体が備える入力デバイスを接続
するためのシリアルインターフェースを用いてある。
【0011】請求項3の発明において、キーボードを接
続するためのシリアルインターフェースを通してコンピ
ュータを画像処理検査装置本体に接続した場合におい
て、キーボードを接続した場合と同様の入力が行えるよ
うにするために、請求項4の発明では、コンピュータの
表示装置上にキーボードを表現した画面を表示し、その
画面を仮想キーボードとして、コンピュータのキーボー
ドやマウスなどのポインティングデバイスを用いてキー
ボードの機能を代行させた入力を行うようにすればよ
い。
【0012】請求項3の発明において、マウスなどのポ
インティングデバイスを接続するためのシリアルインタ
ーフェースを通してコンピュータを画像処理検査装置本
体に接続した場合において、ポインティングデバイスを
接続した場合と同様の入力が行えるようにするために、
請求項5の発明では、コンピュータのマウスなどのポイ
ンティングデバイスを画像処理検査装置本体の仮想ポイ
ンティングデバイスとして用い、仮想ポインティングデ
バイスの操作で、画像処理検査装置本体のポインティン
グデバイスの機能を代行させた入力を行うようにしてあ
る。
【0013】請求項6の発明は、画像処理検査装置本体
に転送した実行形式プログラムがその実行形式プログラ
ムに対応するかを管理できるようにするために、ユーザ
プログラムから実行形式プログラムをコンピュータ上で
作成する際に、実行形式プログラム内にどのユーザプロ
グラムから作成されたものであるかを示す管理番号を付
け、その管理番号付きの実行形式プログラムをコンピュ
ータから画像処理検査装置本体に転送し、デバック完了
時点で不揮発性記憶装置あるいは不揮発性記憶素子に格
納し、コンピュータからのコマンドによって画像処理検
査装置本体からコンピュータに管理番号を送るようにし
てある。
【0014】請求項7の発明は、異機種との互換性を確
保するために、ユーザプログラム開発言語としてC言語
を用いることが望ましい。請求項7の発明において、ユ
ーザの使いやすいあるいは使い慣れた優れたソフトウエ
アを積極的に利用して、ユーザプログラムの開発が行え
るようにするために、請求項8に示すように、ユーザプ
ログラムの言語を認識する言語認識部と、認識した言語
の文法を解釈する文法解釈部と、これにより得られた情
報よりC言語を生成するC言語プログラム作成部よりな
るプリプロセッサを設けることがさらに好ましい。
【0015】請求項9の発明は、行単位のデバッグを行
うことを可能とするために、コンピュータで実行形式プ
ログラムの作成に際して、ソースプログラムの1行毎に
対応した上記実行形式プログラムの開始アドレステーブ
ルをコンピュータで作成し、上記実行形式プログラムと
実行形式プログラムの開始アドレステーブルとの両方
を、シリアルインターフェースでコンピュータから画像
処理検査装置本体に転送し、画像処理検査装置本体に実
行形式プログラムの任意のアドレス間のみ実行させるこ
とができるモニタプログラムを設け、コンピュータから
は、実行させたいソースプログラムの行に対応する数値
を画像処理検査装置本体に送り、モニタプログラム側
で、モニタへの戻り命令を上記実行形式プログラムに挿
入することによって、ユーザのソースプログラムの行単
位のデバッグを行っている。
【0016】
【作用】請求項1の発明は、上述のように構成すること
により、コンピュータと画像処理検査装置本体をシリア
ルインターフェースで接続し、ユーザプログラムの開発
で、ソースプログラムの作成編集を行うと共に、実行形
式プログラムの作成をコンピュータ上で行い、得られた
実行形式プログラムをシリアルインターフェースを通し
て画像処理検査装置本体に転送し、コンピュータからデ
バッグ用のコマンドを送信することで、デバッグを行
う。さらに、ユーザプログラムの開発が終了すると、転
送された実行形式プログラムを画像処理検査装置本体の
備える不揮発性記憶装置あるいは不揮発性記憶素子に転
送して実行形式プログラムを保存し、以降は不揮発性記
憶装置あるいは不揮発性記憶素子に保存された実行形式
プログラムを画像処理検査装置本体単体で実行させる。
これにより、専用インターフェースボードがなくても、
ユーザの使いやすいあるいは使い慣れた優れたソフトウ
エアを積極的に利用して、ユーザプログラムの開発が行
え、開発終了後は、画像処理検査装置本体単体でユーザ
プログラムを動作させることを可能とする。
【0017】請求項2の発明は、上記画像処理検査装置
本体のシリアルインターフェースとして、汎用に使用さ
れるシリアルインターフェースとは別にユーザプログラ
ム開発専用のインターフェースを個別に設け、画像処理
検査装置本体に対して外部機器とコンピュータとを接続
することを可能とする。これにより、画像処理検査装置
本体のシリアルインターフェースに接続されるロボット
などの外部機器が存在する場合にも、外部機器を接続し
たままで、ユーザプログラムの開発を行えるようにす
る。
【0018】請求項3の発明は、上記コンピュータを接
続するシリアルインターフェースとして、画像処理検査
装置本体が備える入力デバイスを接続するためのシリア
ルインターフェースを用いることにより、画像処理検査
装置本体のシリアルインターフェースに接続されるロボ
ットなどの外部機器が存在する場合にも、外部機器を接
続したままで、ユーザプログラムの開発が行えるように
する。また、新たに画像処理検査装置本体のシリアルイ
ンターフェースを増設する必要を無くす。
【0019】請求項4の発明は、コンピュータの表示装
置上にキーボードを表現した画面を表示し、その画面を
仮想キーボードとして、コンピュータのキーボードやマ
ウスなどのポインティングデバイスを用いてキーボード
の機能を代行させた入力を行い、キーボードを接続する
ためのシリアルインターフェースを通してコンピュータ
を画像処理検査装置本体に接続した場合において、キー
ボードを接続した場合と同様の入力を行うことを可能と
する。
【0020】請求項5の発明は、コンピュータのマウス
などのポインティングデバイスを画像処理検査装置本体
の仮想ポインティングデバイスとして用い、仮想ポイン
ティングデバイスの操作で、画像処理検査装置本体のポ
インティングデバイスの機能を代行させた入力を行うこ
とにより、マウスなどのポインティングデバイスを接続
するためのシリアルインターフェースを通してコンピュ
ータを画像処理検査装置本体に接続した場合において、
ポインティングデバイスを接続した場合と同様の入力を
行うことを可能とする。
【0021】請求項6の発明は、ユーザプログラムから
実行形式プログラムをコンピュータ上で作成する際に、
実行形式プログラム内にどのユーザプログラムから作成
されたものであるかを示す管理番号を付け、その管理番
号付きの実行形式プログラムをコンピュータから画像処
理検査装置本体に転送し、デバック完了時点で不揮発性
記憶装置あるいは不揮発性記憶素子に格納し、コンピュ
ータからのコマンドによって画像処理検査装置本体から
コンピュータに管理番号を送ることにより、画像処理検
査装置本体に転送した実行形式プログラムを管理番号か
ら判別できるようにする。
【0022】請求項7の発明は、ユーザプログラム開発
言語としてC言語を用いて、異機種との互換性を確保す
る。請求項8の発明は、ユーザプログラムの言語を認識
する言語認識部と、認識した言語の文法を解釈する文法
解釈部と、これにより得られた情報よりC言語を生成す
るC言語プログラム作成部よりなるプリプロセッサを備
えることにより、ユーザプログラム開発言語としてC言
語を用いた場合において、プリプロセッサで異なる言語
をC言語に変換できるようにし、ユーザの使いやすいあ
るいは使い慣れた優れたプログラム言語を積極的に利用
して、ユーザプログラムの開発が行えるようにする。
【0023】請求項9の発明では、上述のようにして、
コンピュータから実行させたいソースプログラムの行に
対応する数値を画像処理検査装置本体に送り、ソースプ
ログラムの行単位のデバッグを行うことを可能とする。
【0024】
【実施例】(実施例1) 本実施例の画像処理検査装置は、図1に示すように、製
品の画像を取り込むカメラ2と、カメラ2で取り込んだ
画像あるいはその画像に処理を施した画像、演算条件、
判定条件などの様々な情報を表示するモニタ3と、マン
マシンインターフェースとしてのキーボード4と、画像
処理検査装置本体1とで構成されている。この画像処理
検査装置では、基本的な操作は、画像処理検査装置本体
1の前面パネル上にある操作キー11を用いて行えるよ
うにしてある。但し、キーボード4を用いても、全く同
様の操作が行えるようにしてあり、複雑な操作(例え
ば、文字入力など)はキーボード4を積極的に利用して
行う。
【0025】図2は画像処理検査装置本体1を背面から
見た図を示し、カメラ2を接続するためのカメラ接続用
コネクタ12、モニタ3を接続するためのビデオ信号出
力コネクタ13、RS−232C準拠のシリアルインタ
ーフェースコネクタ14、パラレルインターフェースコ
ネクタなどの各種インターフェース15が標準で装備さ
れている。ここで、図2の場合には、カメラ接続用コネ
クタ12は1つであるが、本体1の機能に応じて複数の
カメラ2を接続することができるようにしたものもあ
る。なお、本実施例の場合には、キーボード4を接続す
るためのキーボードコネクタ16は、図1に示すよう
に、前面パネルに設けてある。但し、キーボードコネク
タ16は、例えば背面パネルなど別の箇所に設けてもな
んら問題はない。
【0026】本体1に設けられたRS−232Cシリア
ルインターフェース14は、画像取込み、検査の開始、
演算結果の要求、判定結果の要求などの様々な命令を、
外部の装置から画像処理検査装置に与え、画像処理検査
装置はそれに対する応答を行うことで、外部の装置との
命令やデータのやりとりを行っている。これに対して、
パラレルインターフェース15も、画像の取込み、品種
データの切り換え、検査の開始などの様々な命令を外部
から与えることができる。しかし、その主たる用途は、
検査を実行して得られた演算結果や判定結果のデータを
出力することにある。
【0027】多くの場合、ユーザは画像処理検査装置が
提供してくれる様々の機能を、さらにユーザが自分自身
でカスタマイズしたいという要求を持っている。例え
ば、図1において、生産組立ラインL上を次々と流れて
くる製品Aの画像をカメラ2で取込み、ユーザが予め品
種データとして登録した様々な演算条件や判定条件に基
づいて取り込んだ画像に対して処理を行い、その結果を
モニタ3に表示する場合を考える。なお、図1では表面
実装型のフラットパッケージ(QFP)タイプのIC
(A)の取付位置の検査を行う場合を示してある。
【0028】図1において、生産組立ラインLを流れる
製品Aの種類に応じて送られてくる品種データを切り換
えるための品種切換信号や、製品がカメラ2に画像とし
て取り込むことができる所定位置に達して、検査の準備
ができた時点で送られてくる検査開始信号は、画像処理
検査装置本体1に例えばパラレルインターフェース15
を通じて取り込まれる。画像処理検査装置は、この品種
切換信号に基づいて内部に保存された複数の品種データ
の中から必要な品種データを選択する。また、検査開始
信号が取り込まれると同時に、品種データに設定された
様々の演算条件、判定条件に基づいた検査シーケンスを
行う。そして、検査の結果、製品が検査条件に対して、
良品であるか、不良品であるかを、ユーザに目視で知ら
せるため、例えばモニタ3の画面に、良品である場合に
は「OK」、不良品である場合には「NG」と表示させ
るようにする。
【0029】以上のような一連の動作において、特に最
後のモニタ3の画面に製品が検査条件に対して、良品で
あるか、不良品であるかを、ユーザ自身で自由に表示さ
せる場合、画像処理検査装置本体1が標準で持つ機能で
なく、ユーザプログラムによって実現される。ところ
で、昨今ではパーソナルコンピュータの普及がめざまし
く、学術機関や企業、さらには一般家庭まで浸透してい
るといっても過言でない。従って、画像処理検査装置が
用いられるような現場、あるいはユーザプログラムを開
発するような場所にも、汎用のパーソナルコンピュータ
が1台あるいは2台は用意されていると考えて良い。さ
らに、パーソナルコンピュータのハードウエアの普及に
より、様々な機能を有しユーザの使い勝手を満足させる
ようなプログラム言語が様々メーカにより発表あるいは
販売されている。従来のユーザプログラミング型の画像
処理検査装置には、本体内部にソースプログラムを作成
編集するエディタ機能、テスト実行、デバッグの機能を
全て用意し、単体でユーザプログラムを開発できるよう
にしたものもある。しかし、これからの画像処理検査装
置のユーザプログラム開発環境は、上述のような汎用の
パーソナルコンピュータを積極的に利用して、パーソナ
ルコンピュータに加えて、ユーザの使いやすい、あるい
は使い慣れた、優れたプログラム言語で行うことが望ま
しい。但し、常時画像処理検査装置に接続しなければ、
ユーザプログラムを動作させることができないのでは不
便である。そこで、ソースプログラムを作成編集し、デ
バッグを行って正常に動作することが確認された時点で
ある開発終了後は、画像処理検査装置単体でユーザプロ
グラムが動作しなければならない。
【0030】以上のような開発環境において、パーソナ
ルコンピュータと画像処理検査装置を接続する必要があ
る。この場合、従来では、専用インターフェースボード
をパーソナルコンピュータに搭載し、さらに必要に応じ
て画像処理検査装置にも専用インターフェースボードを
搭載し、パラレルインターフェースとして接続すること
が主流であった。様々なデバッグ機能を実現するために
は、例えばマイコン開発装置としてよく使われているイ
ンサーキットエミュレータが持つデバッグ機能を実現す
るためには、専用インターフェースボードが必要な場合
がある。しかし、実際のユーザプログラムのデバッグに
はそのような機能は不要である。つまりは、実行形式プ
ログラムの画像処理検査装置への転送、ソースプログラ
ムの行単位の実行や停止、プログラム停止時のレジスタ
や変数のモニタができれば、十分デバッグは行える。ま
た、上述のようなデバッグには、インサーキットエミュ
レータのように大量のデータを高速に転送する必要はな
く、シルアルインターフェース14でのデータ転送で十
分足りる。
【0031】本発明はこの点に着目し、汎用のパーソナ
ルコンピュータ5が標準に持っているRS−232Cイ
ンターフェース14で画像処理検査装置を接続して、ユ
ーザプログラムの開発を行うようにしたものである。以
下に開発の手順を説明する。ユーザのソースプログラム
は、パーソナルコンピュータで開発する。上述したよう
にパーソナルコンピュータには優れたプログラム言語
多く市販されており、ユーザが日頃から慣れ親しんてい
るエディタやワープロソフトを使ってソースプログラム
を作成編集すればよい。開発言語は、次に述べるコンパ
イラが容易に手に入る言語であれば、C言語やBASI
C言語など自由に選んで良い。
【0032】次に、ソースプログラムから画像処理検査
装置で実行できる実行形式プログラムを作成する。これ
には、市販のコンパイラを用いる。画像処理検査装置と
パーソナルコンピュータとの内部のCPU(中央処理装
置)が同じ場合は、パーソナルコンピュータ自身上のプ
ログラムを開発するためのネイティブコンパイラ(一般
に単にコンパイラと呼ばれる)が使用される。しかし、
CPUが互いに異なる場合、他のCPUオブジェクトプ
ログラムが作成できるクロスコンパイラが必要になる。
【0033】コンパイルされたソースプログラムから、
さらに必要な実行用のライブラリを加えてリンカやロケ
ータソフトで実行形式オブジェクトを作成する。出来上
がった実行形式オブジェクトはパーソナルコンピュータ
5のRS−232Cインターフェースを通じて画像処理
検査装置に転送される。デバッグは、ソースプログラム
の行単位の実行や停止、プログラム停止時のレジスタや
変数のモニタのためのコマンドが、パーソナルコンピュ
ータ5のRS−232Cインターフェースより画像処理
検査装置に送られ、必要なデータがパーソナルコンピュ
ータ5へ返される。
【0034】以上の機能は、パーソナルコンピュータ5
のメーカや機種に依存せず、ユーザ手持ちのパーソナル
コンピュータ5上でエディタ、コンパイラ、リンカなど
を揃えればよい。実行形式プログラム(オブジェクトプ
ログラム)のデバッグが終了すると、これを画像処理検
査装置本体1内部に用意された不揮発性記憶装置(代表
的なものに固定ディスクがある)ないしは不揮発性記憶
素子(代表的なものにEEPROMがある)に保存す
る。以後、パーソナルコンピュータ5と画像処理検査装
置本体1との接続を切り離しても、画像処理検査装置本
体1に保存されたユーザプログラム(実行形式プログラ
ム)を単体で動作させることができる。
【0035】(実施例2) 図3に本発明の他の実施例を示す。本実施例は、画像処
理検査装置にロボットなどの外部機器6がRS−232
Cインターフェース16で接続されたものである。上記
外部機器6のコマンド体系は画像処理検査装置が標準で
持っているコマンド体系とは異なるので、ユーザは外部
機器6からのコマンドを解釈し、検査結果も外部機器6
が読み取れるコマンド体系に変換して返送する必要があ
る。以上の機能は、画像処理検査装置本体1が標準機能
としては持っていないので、ユーザプログラムによって
処理する必要がある。
【0036】ところで、本実施例のように、ロボットな
どの外部機器6を接続する必要がある場合、図1でパー
ソナルコンピュータ5と接続している画像処理検査装置
のRS−232インターフェース14は、本来ユーザプ
ログラム開発専用のものでなく汎用のものであり、外部
機器6とはインターフェース14で接続する必要があ
る。この場合、ロボットなどの外部機器6とを接続した
まま、つまりは画像処置検査装置単体で動作させる実使
用状態で、ユーザプログラム開発を行うことができなく
なる。
【0037】そこで、本実施例ではユーザプログラム開
発専用のRS−232Cインターフェース17を個別に
設けてある。このようにすることで、ロボットなどの外
部機器6とを接続したままで、ユーザプログラムの開発
が行える。 (実施例3) 図4に本発明のさらに他の実施例を示す。上述した実施
例2の場合、ロボットなどの外部機器6を付属設備とし
て備える画像処理検査装置において、ユーザプログラム
開発専用のシリアルインターフェース17を設けたが、
本実施例ではユーザプログラム開発専用のシリアルイン
ターフェース17を個別に設けなくとも、ユーザプログ
ラム開発を行えるようにしたものである。
【0038】本実施例では、本体1にあるキーボード接
続用のインターフェース16は、一般的にシリアルイン
ターフェース(特に、RS−232Cインターフェー
ス)が用いられていることに着目し、ユーザプログラム
開発時は、このキーボード用のシリアルインターフェー
ス16と、汎用のパーソナルコンピュータ5のインター
フェースとを介して行うようにしてある。なお、ユーザ
プログラムの開発が終了すれば、画像処理検査装置本体
1だけで動作させるため、必要に応じてキーボードを接
続すればよい。
【0039】ところで、本実施例の方法以外に、図14
に示すように、パーソナルコンピュータ5側に複数のシ
リアルインターフェース18を用意して、ロボットなど
の外部機器6をパーソナルコンピュータ5のシリアルイ
ンターフェース18の1つに接続し、もう1つのシリア
ルインターフェース18を画像処理検査装置に接続する
方法がある。この場合、ユーザプログラム開発中に、外
部機器6と画像処理検査装置とのコマンドやデータのや
りとりは、送信側からのコマンドやデータを一旦パーソ
ナルコンピュータ5に取り込んで、再びそのコマンドや
データを受信側にスルーで送って行う。
【0040】しかしながら、パーソナルコンピュータ5
側で複数のシリアルインターフェース18を制御するた
めには、制御のためのソフトウエアが複雑になり、また
デバッグ後は、外部機器6は画像処置検査装置の本体1
のシリアルインターフェース14に接続するので、実際
の接続状態でのデバッグが行えないという問題がある。
そこで、本実施例の方法を採用する方が望ましい。
【0041】(実施例4) 図5に本発明の別の実施例を示す。なお、本実施例の基
本構成は実施例3と同じである。上述した実施例3の場
合、パーソナルコンピュータ5と画像処理検査装置とを
接続するシリアルインターフェースの接続手段として、
画像処理検査装置本体に用意されたキーボード4用のシ
リアルインターフェース(RS−232Cインターフェ
ース)16を用いることにより、確かにRS−232C
インターフェース(シリアルインターフェース)で接続
する必要のあるロボット等の外部機器6を、画像処理検
査装置の汎用シリアルインターフェース14に接続し
て、実使用(画像処理検査装置単体で動作させる状態)
でユーザプログラム開発が行える利点がある。しかし、
ユーザプログラムにキーボード4での入力が必要な場
合、この入力を行えないという問題がある。
【0042】本実施例でも、実施例3と同様に、パーソ
ナルコンピュータ5と画像処理検査装置を、画像処理装
検査装置の本体1に用意されたキーボード4用のシリア
ルインターフェース(RS−232Cインターフェー
ス)16を通じて接続する。そして、本実施例では、キ
ーボード4用のシリアルインターフェースコネクタ16
にパーソナルコンピュータ5を接続する場合、パーソナ
ルコンピュータ5のモニタ5aに仮想キーボードとして
キーボードを表す画面を表示し、この画面が表示されて
いる間、パーソナルコンピュータ5のキーボード入力
は、画像処理検査装置のキーボード4による入力として
扱う。もしくは、仮想キーボード上をマウス等のポイン
ティングデバイス7でカーソルを移動し、該当するキー
をクリックで選択しても良い。
【0043】具体的には、図5に示すように、パーソナ
ルコンピュータ5のモニタ5a上に仮想キーボード
(イ)とマウスポインタ(ロ)とを表示する。画像処理
検査装置に転送された実行形式プログラムをデバッグす
る際に、あるいはキーボード4からの入力を必要とする
コマンドや機能を実行する際に、上記画面がモニタ5a
に現れる。仮想キーボード(イ)が表示されているとき
の、パーソナルコンピュータ5のキーボードからの入力
は、パーソナルコンピュータ5に対するコマンドではな
く、画像処理検査装置のキーボード4からの入力として
扱われる。ここで、仮想キーボード(イ)の画面上の各
キーをマウス7でクリックすることで、キーボードから
の入力と同様の操作を可能にしている。
【0044】以上の入力信号はRS−232Cインター
フェースを通して、画像処理検査装置のキーボードイン
ターフェース16に送られる。ここで、仮想キーボード
(イ)が画面に表示されている場合のみ、パーソナルコ
ンピュータ5から画像処理検査装置にキーボード入力信
号が送られるため、デバッグのためのコマンド等の他の
コマンドやデータと衝突することはない。即ち、画像処
理検査装置本体1から見ると、実際にはパーソナルコン
ピュータ5が接続されているにもかかわらず、あたかも
キーボード4が接続されているようになる。なお、デバ
ッグ中の仮想キーボード(イ)からの入力はリターンキ
ーで終了し、またエスケープ(ESC)キーで入力を中
止することができる。ここで、中止した場合は、ユーザ
の実行形式プログラムはその時点で中断する。
【0045】(実施例5) 図6に本発明のさらに別の実施例を示す。本実施例は、
画像処理検査装置が、マンマシンインターフェースとし
て、キーボード4の代わりに、マウスあるいはこのマウ
スと同等の機能を有したポインティングデバイス7を備
える場合に対応するものである。この種のポインティン
グデバイス(以下、マウスを用いるものとして説明を行
う)7を使用する画像処理検査装置では、モニタ3の画
面に、マウスカーソルと共に、各種の設定を行うウイン
ドウが表示され、マウスを使って画面に従って様々な操
作を行う。
【0046】このような画像処理検査装置では、本体1
にあるマウス接続用のインターフェース19は、キーボ
ード4の場合と同様に、シリアルインターフェース(特
に、RS−232Cインターフェース)が用いられてい
るので、ユーザプログラムの開発時には、このマウス用
のシリアルインターフェース19と汎用パーソナルコン
ピュータ5のシリアルインターフェースを接続する。そ
して、ユーザプログラム開発が終了すれば、画像処理検
査装置本体だけで動作させるため、マウスを接続しても
何ら問題はない。
【0047】マウスの場合、先の実施例と異なり、操作
は画像処理検査装置のモニタ3上のマウスカーソルを見
ながら行わなければならない。そのため、パーソナルコ
ンピュータ5のモニタ5a上には、何も表示する必要は
ない。但し、その代わりに、デバッグ中はパーソナルコ
ンピュータ5に接続されているマウス7からの位置信号
(マウスの移動に伴って発生するX、Y軸夫々に対して
のカウントパルスから現在の座標を計算し数値として表
示した信号)をRS232Cインターフェースを通し
て、画像処理検査装置のマウスインターフェース19に
常時送る必要がある。しかし、デバッグなどのコマンド
はユーザがパーソナルコンピュータ5のキーボード操作
を行ったときのみ送られるので、通常は画像処理検査装
置のモニタ3上のマウスの動きがぎこちなくならない程
度の間隔で送信しても、全体の動作には差支えない。
【0048】(実施例6) 図7に本発明の第6の実施例を示す。上述した各実施例
で、不揮発性記憶装置あるいは不揮発性記憶素子に格納
されている実行形式プログラムが、どの実行形式プログ
ラムであるか分かるようにするためには、画像処理検査
装置に転送した実行形式プログラムが、パーソナルコン
ピュータ5上のどの実行形式プログラムに対応している
かを管理する必要がある。この場合には、例えば実行形
式プログラムについて転送記録を付けるなどの方法が考
えられる。例えば、上述の管理を行わないと、パーソナ
ルコンピュータ5から画像処理検査装置に実行形式プロ
グラムを転送して長時間たってしまうと、画像処理検査
装置の不揮発性記憶装置あるいは素子に記憶されている
実行形式プログラムが、どの素性のものか分からなくな
る可能性がある。
【0049】そこで、本実施例では、不揮発性記憶装置
あるいは素子に格納されている実行形式プログラムがど
の管理番号を持った実行形式プログラムであるのかを知
ることができるようにしたものである。具体的には、実
行形式プログラムを作成する際に、パーソナルコンピュ
ータ5が持っている時計から日付、時刻情報を得て、実
行形式プログラムに組み込んでおく。画像処理検査装置
は、パーソナルコンピュータ5から管理番号の問い合わ
せがあった場合、不揮発性記憶装置に格納されている管
理番号をパーソナルコンピュータ5に送る。
【0050】以下、本実施例を具体的に説明する。図7
は本実施例にかかる部分の概略的な内部構成を示す図で
あり、パーソナルコンピュータ5と画像処理検査装置本
体1とはRS−232C準拠の通信ケーブル24によっ
てシリアルインターフェース54,23が接続される。
パーソナルコンピュータ5は、ソフトウエア資産とし
て、エディタ51、時計52及びコンパイラ53を内蔵
している。
【0051】エディタ51は、一般的に普及しているス
クリーンエディタを用いており、テキストファイル形式
でユーザプログラム(ソースプログラム)を作成あるい
は訂正する。ソースプログラムは、画像処理検査装置専
用の文法に基づいて記述する。時計52は、パーソナル
コンピュータ5に内蔵されているシステムクロックを使
用する。一般的には、システムクロックは水晶発振子の
信号を元にしていて非常に正確である。システムクロッ
クが示す時刻は、ソフトウエアに取り込むことができ
る。コンパイラ53は、ソースプログラムをコンパイル
して、実行形式プログラムを作成する。このコンパイラ
53は、画像処理検査装置の専用言語のコンパイラであ
り、作成される実行形式プログラムは、パーソナルコン
ピュータ5の助けを借りることなく、画像処理検査装置
を単独で動作させることができる。この実行形式プログ
ラムを画像処理検査装置の不揮発性記憶装置あるいは素
子であるEEPROM22に格納する段階では、パーソ
ナルコンピュータ5を接続することなく、画像処理検査
装置本体1が単体で実行形式プログラムを動作させて、
必要な検査工程を行う。コンパイラ53が作成する実行
形式プログラムには、実行形式プログラムを作成した時
刻を時計から読み取り、その時刻が実行形式プログラム
中に格納される。
【0052】画像処理検査装置本体1は、内部に、CP
U20、RAM21、及び不揮発性記憶装置(素子)で
あるEEPROM22を持っている。CPU20は、画
像処理検査装置の演算動作を行い、実行形式プログラム
の実行は、このCPU20で行う。RAM21は、CP
U20のワークエリアとして使用され、パーソナルコン
ピュータ5でコンパイルして作成される実行形式プログ
ラムは、このRAM上に格納されて実行される。デバッ
グの際は、RS−232Cシリアルインターフェース2
3から送られている実行形式プログラムをRAM21上
に展開し、また画像処理検査装置単体で動作する場合に
は、不揮発性記憶装置(素子)から読み出される実行形
式プログラムをRAM21に展開して、実行形式プログ
ラムを動作させる。EEPROM22は、画像処理検査
装置が単独で動く場合の実行形式プログラムを格納す
る。実行形式プログラムは、RAM21でデバッグを終
了した後に、はじめてEEPROM22に格納される。
【0053】図8は、実行形式プログラム中の管理番号
を示す。管理番号は、実行形式プログラムの先頭に図8
(a)のように入れられる。アスキーコードを使用する
ので、10進数で表現すれば、図8(b)の数値の羅列
となる。同図(a),(b)のデータは、この実行形式
プログラムが1993年11月22日16時45分23
秒に作成されたことを意味している。
【0054】図9は実行形式プログラムの作成手順を示
すフローチャートである。まず、ユーザプログラム(ソ
ースファイル)のコンパイルを行う。これは、パーソナ
ルコンピュータ5の内部に格納されているコンパイラ5
3を使用して行う。このコンパイラ53は、画像処理検
査装置の専用言語用コンパイラで画像処理検査装置のR
AMに展開して自走する実行形式プログラムを作成す
る。
【0055】次に、パーソナルコンピュータ5の内蔵時
計52から時刻を読み取る。読み取った時刻から管理番
号を作成する。図8の例では、1993年11月22日
16時45分23秒というデータを時計52から読み取
り、931122164523という管理番号を作る。
この管理番号は、実行形式プログラムが作成された時刻
であり、この実行形式プログラム固有の管理番号とな
る。この管理番号を先に作成した実行形式プログラムの
先頭にアスキーコードで格納する。
【0056】図10は管理番号問合せの概念図であり、
パーソナルコンピュータ5側から実行形式プログラムの
管理番号を画像処理検査装置に問い合わせる。例え
ば、”NO.?”と文字列をアスキーコードで画像処理
検査装置本体1に送ることで、実行形式プログラムの管
理番号を画像処理検査装置に問い合わせる。画像処理検
査装置本体1は、管理番号を問い合わせると、EEPR
OM22に格納されている実行形式プログラムから管理
番号を読み取り、パーソナルコンピュータ5に管理番号
を転送する。図8の例では、管理番号として、”931
122164523”と実行形式プログラムに格納され
ているので、”931122164523”が管理番号
として画像処理検査装置からパーソナルコンピュータ5
に転送される。図11に上記管理番号問合せの手順を示
すフローチャートを示す。
【0057】このようにすれば、実行形式プログラムの
管理番号からパーソナルコンピュータ5側で実行形式プ
ログラムが、どの実行形式プログラムであるかが分か
る。しかも、パーソナルコンピュータ5で、実行形式プ
ログラムを管理してファイルとして残している場合に
は、画像処理検査装置から得られた管理番号をもとに、
どの実行形式プログラムが画像処理検査装置の不揮発性
記憶装置または素子に格納されているかを知ることがで
きる。また、ユーザプログラム(ソースファイル)が残
っている場合にも、管理番号として実行形式プログラム
の作成日時が分かるので、どのソースファイルから作成
された実行形式プログラムかを知ることができる。さら
に、このため、例えばユーザプログラム開発場所と画像
処理検査装置の使用場所が遠く離れていても、トラブル
が起きたような場合に、管理番号からユーザプログラム
開発場所でトラブルを再現し、対処することが可能とな
る。
【0058】(実施例7) 図12に本発明の第7の実施例を示す。本実施例では、
パーソナルコンピュータ5でユーザプログラムの開発を
C言語で行い、異なる言語で開発されたソフトウエア資
産を利用することを可能とするために、パーソナルコン
ピュータ5に異なる言語で書かれたユーザプログラムを
C言語に変換するプリプロセッサを設けてある。
【0059】プリプロセッサは、ユーザプログラムを読
み出す読出部30と、読みだしたユーザプログラムの言
語を認識する言語認識部31と、言語の文法を解釈する
文法解釈部32と、解釈された文法に基づいて異なる言
語で書かれたユーザプログラムをC言語に変換するC言
語プログラム生成部33とからなる。これにより、異な
る言語でかかれたユーザプログラムをC言語に変換する
ことができ、このため異なる言語で開発されたソフトウ
エア資産を有効に利用することができる。例えば、従来
の機種で開発を行っていたユーザが、容易に新しい機種
で開発を行うことが可能となる。
【0060】上述のようにC言語に変換した後は、パー
ソナルコンピュータ5上でコンパイルを行い、その結果
できた実行形式プログラムを画像処理検査装置に転送し
て検査処理などを行う。ここで、実行形式プログラムに
コンパイルすることを、C言語用の汎用コンパイラを用
いて行え、開発の効率化を図ることもできる。 (実施例8) ところで、実行形式プログラムをデバッグする場合、画
像処理検査装置本体1に実行形式プログラムの動作を制
御すためのモニタプログラムを搭載することが一般的で
ある。しかし、ユーザがソースプログラムの単位でデバ
ッグを行いたいと思っても、パーソナルコンピュータ5
から転送された実行形式プログラムと、ユーザが記述し
たソースプログラムとの関連性は、転送された時点で失
われてしまう。このため、パーソナルコンピュータ5側
で実行形式プログラムを作成する際に得れたデバッグ情
報に基づいて、例えばソースプログラム行との関連に基
づいて、画像処理検査装置のモニタプログラムで実行ア
ドレスを直接操作するしかないという問題があった。
【0061】この点に着目し、ソースプログラムの行単
位のデバッグが行えるようにしたものが本実施例であ
る。本実施例では、コンパイルされたソースプログラム
から、実行用のライブラリを加えて、リンカやロケータ
ソフトで実行形式プログラムを作成するとき、同時にソ
ースプログラムの1行毎に対応した実行形式プログラム
の開始アドレステーブルをパーソナルコンピュータ5で
作成する。なお、リンカやロケータソフトのオプション
にある場合は、それを用いればよく、また専用に作成し
たユーティリティを用いてもよい。
【0062】そして、作成された実行形式プログラム
と、実行形式プログラムの開始アドレステーブルとの両
方を、パーソナルコンピュータ5から画像処理検査装置
に転送する。画像処理検査装置本体1内にはモニタプロ
グラムが搭載されており、実行形式プログラムの部分的
実行、停止、内部レジスタや変数、入出力ポートの状態
モニタなどが行えるようになっている。ここで、パーソ
ナルコンピュータ5から転送された実行形式プログラム
の開始アドレステーブルは、このモニタプログラムに渡
される。
【0063】実際のデバッグは、実行したいソースプロ
グラムの行をパーソナルコンピュータ5からコマンドと
して画像処理検査装置に送り、モニタプログラムはその
コマンドを解析し、実行形式プログラムの開始アドレス
テーブルを参照して、ソースプログラムの行単位の実行
を行う。なお、パーソナルコンピュータ5から画像処理
検査装置に送るコマンドは、1行だけでもよいし、何行
目から何行目までと複数行指定しても良い。
【0064】さらに、実際のソースプログラムを例とし
て説明を行う。ここでも、上述したように、生産組立ラ
インL上で次々と流れてくる製品Aの画像をカメラ2に
取り込み、ユーザが予め品種データとして登録した様々
な演算条件や判定条件に基づいて取り込んだ画像に対し
て処理を行い、その結果をモニタ3に表示する場合を考
える。図13にそのソースプログラムを示す。このソー
スプログラムは、上記一連の機能を実現するためにユー
ザが記述する。本実施例ではC言語を用いているが、も
ちろん他の言語で記述してもよい。
【0065】各行の一番左の数字は、ソースプログラム
の行番号を示し、コロンで区切られた右側の4桁の16
進数は、各ソースプログラム行の実行形式プログラムの
開始番地を示している。なお、図13のイが実行形式プ
ログラムの開始アドレステーブルとなる。ユーザが実際
に記述したのは1行目において、’#’から右の部分で
あり、以降の行も同様である。
【0066】簡単にプログラムの説明を行うと、1から
4行目まではインクルードファイルの指定や各定数の定
義で、実際のプログラムは6行目から始まる。8行目
で、生産組立ラインLを流れる製品Aの種類に応じて送
られてくる品種データの番号を設定し、10行目で、製
品Aがカメラ2に画像として取り込める所定位置に達し
たときに、検査の準備ができた時点で送られてくる検査
開始信号を受けて、カメラ2から画像信号を取り込みを
開始させる。11行目で、品種切換信号に基づいて内部
に保存された複数の品種データの中から必要な品種デー
タに切り換え、12行目で、品種データに設定された様
々な演算条件、判定条件に基づいて検査シーケンスを実
行、13〜17行で、製品Aが検査条件に対する良否を
ユーザに目視で知らせるため、例えばモニタ3の画面に
良の場合は「OK」,否の場合には「NG」と表示さ
せ、さらに18行目で検査結果をパラレルインターフェ
ースに出力する。
【0067】デバッグの実際例として、例えば図13の
プログラム例において、10行目から12行目までだけ
を実行する場合を考える。この場合、パーソナルコンピ
ュータ5から、実行を開始するソースプログラムの行番
号と、実行を終了する行番号とが、デバッグ用のコマン
ドとして画像処理検査装置に送られる。画像処理検査装
置内のモニタプログラムは、このコマンドを受け取る
と、次の処理を行う。
【0068】まず、実行形式プログラムの実行開始のソ
ースプログラムの行に対応した開始アドレスを、予め転
送された実行形式プログラムの開始アドレステーブルか
ら読み取り、これをデバッグ開始番地と設定する。次
に、実行形式プログラムの、実行終了のソースプログラ
ムの行の次の行に対応した開始アドレスで、実行時にモ
ニタプログラムに戻ってくるように、戻り命令を書き込
む。このとき、書き込む前の命令は破壊されないよう
に、本来の実行形式プログラムのうち、戻り命令が書き
込まれる部分を、予め別の箇所に退避させておく。そし
て、実行形式プログラムのデバッグ開始番地にプログラ
ムカウンタをセットしてユーザプログラムの実行を開始
する。そして、戻り命令でモニタプログラムに戻る。こ
こで、例えば、インテル社の8086系のCPUでは、
1バイト命令でブレイクが行えるので、ソフトウエア割
込みのINT3を用いれば、モニタプログラムに戻すこ
とができる。また、例えば分母が0になる除算を実行す
れば、INT0を自動的に実行できるので、これによっ
てモニタプログラムに戻すこともできる。戻り命令でモ
ニタプログラムに復帰した後は、退避してある元の実行
形式プログラムを復旧させる。
【0069】以上の操作を行えば、パーソナルコンピュ
ータからのデバッグの実行コマンドを、開始行と終了行
といった少ないデータ転送量で実現できる。ここで、上
記デバッグが終了したとき、実行形式プログラムと実行
形式プログラムの開始アドレスデータの両方を、画像処
理検査装置の備える不揮発性記憶装置あるいは素子に保
存しておけば、以降パーソナルコンピュータ5と画像処
理検査装置との接続を切り離しても、画像処理検査装置
にソースプログラムの各行単位の開始アドレステーブル
が保存されているので、画像処理検査装置単体でも、キ
ーボードや操作キーを用いて、ソースプログラムの任意
の行から行までの部分実行が可能になる。このため、現
場でユーザプログラムの一部分だけを実行させたい場
合、パーソナルコンピュータを特に用意しなくても実行
できる。なお、実行形式プログラムと、実行形式プログ
ラムの開始アドレステーブルとのパーソナルコンピュー
タ5側での管理は、一般のMS−DOS等のパーソナル
コンピュータのファイル管理に基づいて行われる。
【0070】
【発明の効果】請求項1の発明は上述のように、画像処
理検査装置本体と汎用のコンピュータとを夫々付属のシ
リアルインターフェースで接続してユーザプログラムを
開発することで、ユーザが画像処理検査装置本体の機能
をユーザの仕様に基づいてカスタマイズすることができ
る画像処理検査装置において、ユーザが記述するソース
プログラムはコンピュータで作成編集し、画像処理検査
装置本体上で動作する実行形式プログラムは、コンピュ
ータでユーザプログラムから作成し、出来上がった実行
形式プログラムをシリアルインターフェースでコンピュ
ータから画像処理検査装置本体に転送し、動作の確認や
デバッグは、コンピュータからのコマンドの授受によっ
て、あるいは画像処理検査装置本体の操作キーないしは
キーボードあるいはマウスなどの入力デバイスの操作で
行い、さらにデバッグが完了した時点で、画像処理検査
装置本体の備える不揮発性記憶装置あるいは不揮発性記
憶素子に転送して実行形式プログラムを保存し、以降は
不揮発性記憶装置あるいは不揮発性記憶素子に保存され
た実行形式プログラムを画像処理検査装置本体単体で実
行させるようにしてあるので、専用インターフェースボ
ードがなくても、ユーザの使いやすいあるいは使い慣れ
た優れたプログラム言語を積極的に利用して、ユーザプ
ログラムの開発が行え、開発終了後は、画像処理検査装
置本体単体でユーザプログラムを動作させることができ
る。
【0071】請求項2の発明は、上記画像処理検査装置
本体のシリアルインターフェースとして、汎用に使用さ
れるシリアルインターフェースとは別にユーザプログラ
ム開発専用のインターフェースを個別に設けてあるの
で、画像処理検査装置本体に対して外部機器とコンピュ
ータとを接続することができ、画像処理検査装置本体の
シリアルインターフェースに接続されるロボットなどの
外部機器が存在する場合にも、外部機器を接続したまま
で、ユーザプログラムの開発が行える。
【0072】請求項3の発明は、画像処理検査装置本体
が、マンマシンインターフェースとしてのキーボードや
マウスなどの入力デバイスを備えている場合において、
上記コンピュータを接続するシリアルインターフェース
として、画像処理検査装置本体が備える入力デバイスを
接続するためのシリアルインターフェースを用いてある
ので、画像処理検査装置本体のシリアルインターフェー
スに接続されるロボットなどの外部機器が存在する場合
にも、外部機器を接続したままで、ユーザプログラムの
開発が行え、しかも新たに画像処理検査装置本体のシリ
アルインターフェースを増設する必要がない。
【0073】請求項4の発明は、コンピュータの表示装
置上にキーボードを表現した画面を表示し、その画面を
仮想キーボードとして、コンピュータのキーボードやマ
ウスなどのポインティングデバイスを用いてキーボード
の機能を代行させた入力を行うようにしてあるので、キ
ーボードを接続するためのシリアルインターフェースを
通してコンピュータを画像処理検査装置本体に接続した
場合において、キーボードを接続した場合と同様の入力
を行うことができる。
【0074】請求項5の発明は、マウスなどのポインテ
ィングデバイス用のシリアルインターフェースにコンピ
ュータを接続した場合において、コンピュータのマウス
などのポインティングデバイスを画像処理検査装置本体
の仮想ポインティングデバイスとして用い、仮想ポイン
ティングデバイスの操作で、画像処理検査装置本体のポ
インティングデバイスの機能を代行させた入力を行うよ
うにしてあるので、マウスなどのポインティングデバイ
スを接続するためのシリアルインターフェースを通して
コンピュータを画像処理検査装置本体に接続した場合に
おいて、ポインティングデバイスを接続した場合と同様
の入力を行うことができる。
【0075】請求項6の発明は、ユーザプログラムから
実行形式プログラムをコンピュータ上で作成する際に、
実行形式プログラム内にどのユーザプログラムから作成
されたものであるかを示す管理番号を付け、その管理番
号付きの実行形式プログラムをコンピュータから画像処
理検査装置本体に転送し、デバック完了時点で不揮発性
記憶装置あるいは不揮発性記憶素子に格納し、コンピュ
ータからのコマンドによって画像処理検査装置本体から
コンピュータに管理番号を送っているので、画像処理検
査装置本体に転送した実行形式プログラムを管理番号か
ら判別できる。
【0076】請求項7の発明は、ユーザプログラム開発
言語としてC言語を用いてあるので、異機種との互換性
を確保することが可能となる。請求項8の発明は、ユー
ザプログラムの言語を認識する言語認識部と、認識した
言語の文法を解釈する文法解釈部と、これにより得られ
た情報よりC言語を生成するC言語プログラム作成部よ
りなるプリプロセッサを備えているので、ユーザプログ
ラム開発言語としてC言語を用いた場合において、プリ
プロセッサで異なる言語をC言語に変換でき、ユーザの
使いやすいあるいは使い慣れた優れたプログラム言語
積極的に利用して、ユーザプログラムの開発が行える。
【0077】請求項9の発明は、コンピュータで実行形
式プログラムの作成に際して、ソースプログラムの1行
毎に対応した上記実行形式プログラムの開始アドレステ
ーブルをコンピュータで作成し、上記実行形式プログラ
ムと実行形式プログラムの開始アドレステーブルとの両
方を、シリアルインターフェースでコンピュータから画
像処理検査装置本体に転送し、画像処理検査装置本体に
実行形式プログラムの任意のアドレス間のみ実行させる
ことができるモニタプログラムを設け、コンピュータか
らは、実行させたいソースプログラムの行に対応する数
値を画像処理検査装置本体に送り、モニタプログラム側
で、モニタへの戻り命令を上記実行形式プログラムに挿
入することによって、ユーザのソースプログラムの行単
位のデバッグを行っているので、コンピュータから実行
させたいソースプログラムの行に対応する数値を画像処
理検査装置本体に送り、ソースプログラムの行単位のデ
バッグを行うことができる。
【図面の簡単な説明】
【図1】本発明の第1の実施例の構成を示すブロック図
である。
【図2】本体を背面側から見た斜視図である。
【図3】第2の実施例の構成を示すブロック図である。
【図4】第3の実施例の構成を示すブロック図である。
【図5】第4の実施例の構成を示すブロック図である。
【図6】第5の実施例の構成を示すブロック図である。
【図7】第6の実施例のパーソナルコンピュータと画像
処理検査装置本体の概略構成を示すブロック図である。
【図8】(a),(b)は夫々実行形式プログラムの管
理方法を示す説明図である。
【図9】同上の管理番号の設定方法の示すフローチャー
トである。
【図10】同上において管理番号を問い合わせる方法を
示す説明図である。
【図11】同上の管理番号を問い合わせる手順を示すフ
ローチャートである。
【図12】同上のプリプロセッサの構成を示すブロック
図である。
【図13】第7の実施例において例示したソースプログ
ラムを示す説明図である。
【図14】実施例3の従来例としての画像処理検査装置
の構成を示すブロック図である。
【符号の説明】
1 画像処理検査装置本体 3 モニタ 4 キーボード 5 パーソナルコンピュータ 6 外部機器 7 ポインティングデバイス 14,17 シリアルインターフェース 31 言語認識部 32 文法解釈部 33 C言語プログラム作成部
───────────────────────────────────────────────────── フロントページの続き (72)発明者 杉本 義彦 大阪府門真市大字門真1048番地松下電工 株式会社内 (56)参考文献 特開 平1−134659(JP,A) 特開 平3−268033(JP,A) 特開 平5−250151(JP,A) 特開 平2−113332(JP,A) 特開 平5−110845(JP,A) 特開 昭58−137223(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06T 1/00 G06F 9/06 G06F 11/28 - 11/34

Claims (9)

    (57)【特許請求の範囲】
  1. 【請求項1】 画像処理検査装置本体と汎用のコンピュ
    ータとを夫々付属のシリアルインターフェースで接続し
    てユーザプログラムを開発することで、ユーザが画像処
    理検査装置本体の機能をユーザの仕様に基づいてカスタ
    マイズすることができる画像処理検査装置において、ユ
    ーザが記述するソースプログラムはコンピュータで作成
    編集し、画像処理検査装置本体上で動作する実行形式プ
    ログラムは、コンピュータでユーザプログラムから作成
    し、出来上がった実行形式プログラムをシリアルインタ
    ーフェースでコンピュータから画像処理検査装置本体に
    転送し、動作の確認やデバッグは、コンピュータからの
    コマンドの授受によって、あるいは画像処理検査装置本
    体の操作キーないしはキーボードあるいはマウスなどの
    入力デバイスの操作で行い、さらにデバッグが完了した
    時点で、画像処理検査装置本体の備える不揮発性記憶装
    置あるいは不揮発性記憶素子に転送して実行形式プログ
    ラムを保存し、以降は不揮発性記憶装置あるいは不揮発
    性記憶素子に保存された実行形式プログラムを画像処理
    検査装置本体単体で実行させて成ることを特徴とする画
    像処理検査装置。
  2. 【請求項2】 上記画像処理検査装置本体のシリアルイ
    ンターフェースとして、汎用に使用されるシリアルイン
    ターフェースとは別にユーザプログラム開発専用のイン
    ターフェースを個別に設けて成ることを特徴とする請求
    項1記載の画像処理検査装置。
  3. 【請求項3】 画像処理検査装置本体が、マンマシンイ
    ンターフェースとしてのキーボードやマウスなどの入力
    デバイスを備えている場合において、上記コンピュータ
    を接続するシリアルインターフェースとして、画像処理
    検査装置本体が備える入力デバイスを接続するためのシ
    リアルインターフェースを用いて成ることを特徴とする
    請求項1記載の画像処理検査装置。
  4. 【請求項4】 キーボード用のシリアルインターフェー
    スにコンピュータを接続した場合において、コンピュー
    タの表示装置上にキーボードを表現した画面を表示し、
    その画面を仮想キーボードとして、コンピュータのキー
    ボードやマウスなどのポインティングデバイスを用いて
    キーボードの機能を代行させた入力を行うことを特徴と
    する請求項3記載の画像処理検査装置。
  5. 【請求項5】 マウスなどのポインティングデバイス用
    のシリアルインターフェースにコンピュータを接続した
    場合において、コンピュータのマウスなどのポインティ
    ングデバイスを画像処理検査装置本体の仮想ポインティ
    ングデバイスとして用い、仮想ポインティングデバイス
    の操作で、画像処理検査装置本体のポインティングデバ
    イスの機能を代行させた入力を行うことを特徴とする請
    求項3記載の画像処理検査装置。
  6. 【請求項6】 ユーザプログラムから実行形式プログラ
    ムをコンピュータ上で作成する際に、実行形式プログラ
    ム内にどのユーザプログラムから作成されたものである
    かを示す管理番号を付け、その管理番号付きの実行形式
    プログラムをコンピュータから画像処理検査装置本体に
    転送し、デバック完了時点で不揮発性記憶装置あるいは
    不揮発性記憶素子に格納し、コンピュータからのコマン
    ドによって画像処理検査装置本体からコンピュータに管
    理番号を送って成ることを特徴とする請求項1記載の画
    像処理検査装置。
  7. 【請求項7】 ユーザプログラム開発言語としてC言語
    を用いて成ることを特徴とする請求項1記載の画像処理
    検査装置。
  8. 【請求項8】 ユーザプログラムの言語を認識する言語
    認識部と、認識した言語の文法を解釈する文法解釈部
    と、これにより得られた情報よりC言語を生成するC言
    語プログラム作成部よりなるプリプロセッサを備えて成
    ることを特徴とする請求項7記載の画像処理検査装置。
  9. 【請求項9】 コンピュータで実行形式プログラムの作
    成に際して、ソースプログラムの1行毎に対応した上記
    実行形式プログラムの開始アドレステーブルをコンピュ
    ータで作成し、上記実行形式プログラムと実行形式プロ
    グラムの開始アドレステーブルとの両方を、シリアルイ
    ンターフェースでコンピュータから画像処理検査装置本
    体に転送し、画像処理検査装置本体に実行形式プログラ
    ムの任意のアドレス間のみ実行させることができるモニ
    タプログラムを設け、コンピュータからは、実行させた
    いソースプログラムの行に対応する数値を画像処理検査
    装置本体に送り、モニタプログラム側で、モニタへの戻
    り命令を上記実行形式プログラムに挿入することによっ
    て、ユーザのソースプログラムの行単位のデバッグを行
    うことを特徴とする請求項1記載の画像処理検査装置。
JP00727494A 1994-01-26 1994-01-26 画像処理検査装置 Expired - Fee Related JP3456002B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP00727494A JP3456002B2 (ja) 1994-01-26 1994-01-26 画像処理検査装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP00727494A JP3456002B2 (ja) 1994-01-26 1994-01-26 画像処理検査装置

Publications (2)

Publication Number Publication Date
JPH07210657A JPH07210657A (ja) 1995-08-11
JP3456002B2 true JP3456002B2 (ja) 2003-10-14

Family

ID=11661453

Family Applications (1)

Application Number Title Priority Date Filing Date
JP00727494A Expired - Fee Related JP3456002B2 (ja) 1994-01-26 1994-01-26 画像処理検査装置

Country Status (1)

Country Link
JP (1) JP3456002B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4096533B2 (ja) * 2001-08-31 2008-06-04 松下電工株式会社 画像処理検査システム

Also Published As

Publication number Publication date
JPH07210657A (ja) 1995-08-11

Similar Documents

Publication Publication Date Title
US5022028A (en) Software verification apparatus
US5978584A (en) Debugging apparatus for debugging a program by changing hardware environments without changing program operation state
US8402431B2 (en) System and method for communicating with a microcontroller
US20010014958A1 (en) Information processing apparatus, defect analysis program, defect analysis method, and application program development assistance system
US7412625B2 (en) Method and system for remote software debugging
GB2232514A (en) Programmable controller
US5590314A (en) Apparatus for sending message via cable between programs and performing automatic operation in response to sent message
CN113157508A (zh) 嵌入式系统的测试方法、系统、装置、设备及存储介质
JP4600601B1 (ja) デバッグ支援装置、デバッグ支援方法及びデバッグ支援プログラム
CN100416512C (zh) 嵌入式设备调试方法及其调试工具
JP3456002B2 (ja) 画像処理検査装置
JP2008135008A (ja) プログラムモジュール検証方式
JP2000112737A (ja) プログラム作成装置
CN113126983A (zh) 一种自动化测试用脚本程序的编辑系统
JP4472557B2 (ja) プログラム作成装置
JP2000112736A (ja) プログラム作成装置
JPH10326203A (ja) 複数のハードウェア環境上においてプログラムを別々に動作させつつも、ハードウェア環境間で動作状態を継承し合うことができるデバッグ装置
JPH02210556A (ja) プログラム実行状態の視覚化装置
JP2012248055A (ja) シミュレーション装置及びシミュレーション方法
JP7044086B2 (ja) 制御システム、制御方法、および制御プログラム
JPH1091477A (ja) 制御用マイクロコンピュータ装置及び該装置の保守ツール
JPH08194506A (ja) 制御装置
JP2817692B2 (ja) マイコン付磁気ディスク装置
JPH08221297A (ja) プログラムデバッグ装置
JPH11167501A (ja) プログラムデバッグシステムとそのデバッグ方法

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20030630

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20070801

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080801

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090801

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090801

Year of fee payment: 6

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090801

Year of fee payment: 6

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090801

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100801

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110801

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees