(57)【要約】【課題】                         表形式プログラムの作成を簡略化すると共に、表形式プログラムを保持するためのメモリを効率的に使用することができる制御装置及びこれを使用した検査装置を提供することにある。【解決手段】                            表形式プログラムが保持されているプログラム保持手段と、前記表形式プログラムに従って制御を実行する表形式プログラム実行手段を有する制御装置であって、前記表形式プログラムは、表形式内の所定エリアに直値以外の任意の名称を記載することにより数値を間接指定されており、前記表形式プログラム実行手段は、前記任意の名称に保持されている書き換え可能な数値で前記表形式プログラムを実行することにより表形式プログラムの実行の流れと数値データの設定を分離するようにしたものである。【選択図】図３
2005241446.tif 000002
【特許請求の範囲】
【請求項１】
表形式プログラムが保持されているプログラム保持手段と、前記表形式プログラムに従って制御を実行する表形式プログラム実行手段を有する制御装置であって、前記表形式プログラムは、表形式内の所定エリアに直値以外の任意の名称を記載することにより数値を間接指定しており、前記表形式プログラム実行手段は、前記任意の名称に保持されている書き換え可能な数値で前記表形式プログラムを実行することにより表形式プログラムの実行の流れと数値データの設定を分離するようにしたことを特徴とする制御装置。
【請求項２】
前記間接指定はデバイス名やタグ名を指定するものとし、それぞれの名称に対応するデータを保持するデータ保持手段を備えたことを特徴とする請求項１記載の制御装置。
【請求項３】
前記データ保持手段に保持されているデータに応じて、間接指定したデバイスやタグが有効なものであるかを判定するデバイス判定手段を備えたことを特徴とする請求項２記載の制御装置。
【請求項４】
前記間接指定したデバイスやタグの値が予め設定された値の範囲に入っているか否かを判定するデバイス値判定手段を備えたことを特徴とする請求項２または請求項３記載の制御装置。
【請求項５】
前記間接指定したデバイスやタグのデータ型が適切なデータ型であるかを判定するデータ型判定手段を備えたことを特徴とする請求項２または請求項３記載の制御装置。
【請求項６】
前記表形式プログラム実行手段は、間接指定先のデバイスやタグを先頭とする複数個の値を取得することを特徴とする請求項１に記載の制御装置。
【請求項７】
前記表形式プログラム実行手段は、スクリプトを間接指定することを特徴とする請求項１に記載の制御装置。
【請求項８】
前記間接指定した名称番号にインデックスを付加し、前記表形式プログラム実行手段は、前記インデックスに応じてデバイスやタグの値を取得することを特徴とする請求項１に記載の制御装置。
【請求項９】
前記表形式プログラム実行手段によって実行される前記任意の名称内に保持されている値を表示するモニタリング手段を備えたことを特徴とする請求項１に記載の制御装置。
【請求項１０】
前記表形式プログラムを実行するために過去に使用された前記任意の名称内に保持されている値を検査履歴として保持する検査履歴保持手段を備えたことを特徴とする請求項１に記載の制御装置。
【請求項１１】
検査ステーションに搬入された検査対象に対し、所定の検査を実行するプログラマブル検査装置に、請求項１乃至請求項１０のいずれか１項に記載の制御装置を用いたことを特徴とする検査装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、表形式プログラムを用いた制御装置及びこれを使用した検査装置の改良に関するものである。
【背景技術】
【０００２】
自動車部品、ＦＡ機器、通信機器等の多種の電子部品を検査する検査装置として、従来、表形式プログラムを利用するものが一般的である。例えば特許文献１には、電子部品の検査条件に関する数値または記号からなるデータを検査対象ごとに分類して格納する検査テーブル（表形式）を備え、この検査テーブルに格納されたデータに基づいて電気的負荷の種類と、擬似信号発生装置の種類及び設定条件と、測定装置の種類及び測定条件とを電子部品の種類に応じて選択して検査を行うようにした検査装置が記載されている。
【０００３】
【特許文献１】特開平８−８６８３４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし、このような制御装置の表形式プログラムには直値のみが記述可能であるため、設定値や判定値が異なるだけで制御工程の流れが同一であったとしても、それぞれに応じた表形式プログラムを作成しなければならない。また、時間に応じて設定値や判定値が変化する場合、該当する時間毎の表形式プログラムを作成しなければならない。その結果、表形式プログラムの数が膨大となり、制御装置が持っている表形式プログラムを保持するためのメモリを効率的に使用しているとは言えなかった。
また、一部の設定値や判定値の異なる複数の表形式プログラムを用意する場合、基本となる表形式プログラムを複製し、異なる設定値や判定値を書き直す作業が必要となる。あらかじめ、異なる部分が分かっている場合でも、この作業を省略することはできなかった。
【０００５】
特に、表形式プログラムを用いた制御装置を検査装置に適用する場合において、多品種少量生産に対応した検査を行うには、設定値や判定値が異なるだけで検査工程の流れが同一であったとしても、検査対象の品種と同数の表形式プログラムを作成し、検査装置が保持する必要があった。さらに朝、昼、夜の時間に応じて設定値や判定値が変化する場合、該当する時間毎の表形式プログラムを作成しなければならない。
その結果、品種や条件が増えるに伴って表形式プログラムの数が増え、検査装置が持つプログラムを保持するためのメモリを効率的に使用できなかった。
この発明は上述のような課題を解決するためになされたもので、その目的とするところは、表形式プログラムの作成を簡略化すると共に、表形式プログラムを保持するためのメモリを効率的に使用することができる制御装置及びこれを使用した検査装置を提供することにある。
【課題を解決するための手段】
【０００６】
この発明は、表形式プログラムが保持されているプログラム保持手段と、前記表形式プログラムに従って制御を実行する表形式プログラム実行手段を有する制御装置であって、前記表形式プログラムは、表形式内の所定エリアに直値以外の任意の名称を記載することにより数値を間接指定されており、前記表形式プログラム実行手段は、前記任意の名称に保持されている書き換え可能な数値で前記表形式プログラムを実行することにより表形式プログラムの実行の流れと数値データの設定を分離するようにしたものである。
また、この発明は、検査ステーションに搬入された検査対象に対し、所定の検査を実行するプログラマブル検査装置に、上記制御装置を用いたものである。
【発明の効果】
【０００７】
本発明によると、デバイスやタグの値の間接指定が可能であるため、表形式プログラムの実行の流れと設定値や判定値といったデータの設定が分離できる。その結果、制御工程の流れが同じであれば、表形式プログラムを共有し、異なるデータだけを別途ファイルやデバイスに設定するだけで良く、制御装置が持つ表形式プログラムを保持するメモリ領域を効率的に使用することができる。また、プログラム作成は、異なるデータを別途ファイルにまとめることになるため作業の効率化を果たすことができる。
また、本発明の制御装置を検査装置に適用した場合において、多品種少量生産の場合は、検査工程の流れが同じ品種については、表形式プログラムを共有し、異なるデータだけを別途ファイルやデバイスに設定するだけで良く、検査装置が持つ表形式プログラムを保持するメモリ領域を効率的に使用することができる。
【発明を実施するための最良の形態】
【０００８】
実施の形態１. 
以下、図面を参照して、本発明の実施例について述べる。
図１にこの発明の一対象である検査システムのユニット構成を示しており、搬入機１と、検査ステーション２と、搬出機３と、これらを制御するプログラマブル検査装置４とで１ユニットを構成し、実際のショップフロアでは検査内容に応じてこれらのユニットを複数個連結して使用する場合が多い。いま、電子部品等の検査対象５の検査を実施することを考えると、プログラマブル検査装置４は、搬入機１を制御して検査対象５を検査ステーション２へ搬入する。検査ステーション２では、検査対象５に対して治具を取り付けるなど、検査対象５とプログラマブル検査装置４を電気的に接続し、表形式プログラムで記述された検査項目の検査を実施する。検査を終えた検査対象５は、搬出機３によって検査ステーション２から搬出され、図示しない次の検査ユニットに運ばれる。なお、検査の進行状況はプログラマブル検査装置４の表示画面上で確認できるものである。
【０００９】
図２は上記プログラマブル検査装置４のシステム構成を示すブロック図である。図から明らかなように、本発明の検査装置システムは、ハードウェア資源として、ＣＰＵ１０と、ＲＯＭ１１と、ＲＡＭ１２と、表示装置１３と、入力装置１４と、I／O１５と、Ｄ／Ａ１６とＡ／Ｄ１７とがバス１８を介して互いに接続された構成となっている。
例えば、ＲＯＭ１１には、オペレーティングシステムやシステムの動作を制御するプログラムが格納されており、ＲＡＭ１２には、ユーザが作成する検査プログラムや、検査時に入力するデータが格納される。ＲＯＭ１１に格納されているシステムの動作を制御するプログラムによって、ＣＰＵ１０は各種機能を実行する。
【００１０】
図３は上記プログラマブル検査装置４の動作を示す機能構成図であり、プログラム作成手段２０、プログラム保持手段２１、表形式プログラム実行手段２２、データ保持手段２３、入力手段２４、出力手段２５、操作手段２６、表示手段２７及び検査履歴保持手段２８から構成されている。これらの機能は、上記ＣＰＵ１０、ＲＯＭ１１、ＲＡＭ１２、表示装置１３、入力装置１４、Ｉ／Ｏ１５、Ｄ／Ａ１６、Ａ／Ｄ１７の各種処理によって実行されるものである。例えば、ＣＰＵ１０は、上記表示装置１３とともに表示手段２７として、入力装置１４とともに操作手段２６として、またＲＯＭ１１とＲＡＭ１０２とともに表形式プログラム実行手段２２として機能し、更に、ＲＡＭ１２とともにプログラム保持手段２１として、I／O１５とＡ／Ｄ１７とともに入力手段２４として、またI／O１５とＤ／Ａ１６とともに出力手段２５として機能するものである。
【００１１】
表示装置１３はたとえばＬＣＤから成り、検査プログラムの進捗状況を表示することができる。また、検査の合否判定の基準値や、計測した値を表示するとともに、合否判定結果を表示することができる。 入力装置１４はたとえばキーボードやＬＣＤに貼られたタッチパネルから成り、検査プログラムの実行開始を指示することができる。また、検査の合否判定の基準値を変更することができる。
【００１２】
つぎに、ＣＰＵ１０が実行する各種機能について、図３を参照して説明する。同図のブロックのうち表形式プログラム実行手段２２、表示手段２７はＣＰＵ１０が実行する手段である。表形式プログラム実行手段２２は、プログラム保持手段２１から検査プログラムのうち、表形式プログラムの部分を読み出して処理を行う。表形式プログラム実行手段２２では、入力手段２４によってデータ保持手段２３に入力されたデータを、表形式プログラムに記述された合否判定基準に基づいて合否判定する。また表形式プログラムに記述されている内容に応じて、データ保持手段２３にデータを書き込んだり、合否判定結果に応じて実行する処理を切り換える。また、ユーザからの支持は、操作手段２６からの操作信号として受け取る。また、表形式プログラム実行手段２２で処理を進めている状況を表示手段２７に表示する。また、検査結果を検査履歴保持手段２８に記録する。
【００１３】
入力手段２４および出力手段２５は、周期的に起動し、外部接続機器との間でデータ保持手段２３の内容を読み書きする。
プログラム作成手段２０は、プログラマブル検査装置４（図１）が実行する検査プログラムを作成する。検査プログラムを記述するには、表形式プログラム以外にもフローチャート、ファンクションブロック、ラダーなどを用いることができ、これらのプログラミングをプログラム作成手段２０で行う。これらのプログラミング言語は、そのままでは各言語の実行手段で実行できないため、プログラム作成手段２０は、これらの各言語を各々の言語の実行手段で直接実行できる形式に変換し、プログラム保持手段２１に保存する。
【００１４】
図４に上述したプログラマブル検査装置４で用いられる従来の表形式プログラムの一例を示している。表形式プログラムは、ステップ番号１００、コメント１１０、計測条件設定部１２０、計測対象設定部１３０、判定基準設定部１４０、判定後処理設定部１５０から構成される。
表形式プログラムの実行時は、実行中のステップのステップ番号１００やコメント１１０、計測条件設定部１２０に記述されている値、計測対象設定部１３０に記述されている計測対象、判定基準設定部１４０に記述されている値、判定後処理設定部１５０に記述されている内容を、表示画面に表示することができる。
【００１５】
計測条件設定部１２０には、計測時に検査対象５に設定する条件を記述する。図４では、検査対象５が、スイッチとして１２１（ＳＷ−１）と１２２（ＳＷ−２）の２つを持ち、電圧を入力するチャンネル１２３（ＣＨ−１）を持っている場合を示している。図４の表形式プログラム中のスイッチ１２１（ＳＷ−１）、１２２（ＳＷ−２）やチャンネル１２３（ＣＨ−１）は、すべてタグ（検査装置が有する入出力デバイスに対してユーザ等が任意に付与する名称あるいは記号）であり、実際にはデータ保持手段２３に対応するデバイスが存在する。さらにそれらのデバイスは、入力手段２４や出力手段２５を介して検査対象５に接続されている。図４の例では、ステップ１でＳＷ−１をＯＮに、ＳＷ−２をＯＦＦにし、ＣＨ−１に０.０Ｖを印加している。計測条件設定部１２０には、任意の数のデバイスを設定することができる。
【００１６】
ウエイト１２４には、計測条件を設定してから、計測対象の値を取得するまでの待ち時間を指定する。計測対象によって異なる時定数の違いをウエイト１２４に待ち時間を指定することによって調整する。ウエイト１２４に設定する時間の単位には、秒やミリ秒などが挙げられる。ウエイト１２４で指定した時間が経過した後、計測対象設定部１３０で指定した対象から計測を行う。
計測対象設定部１３０の対象１３１には、検査対象５の値を計測するチャンネルの番号を指定する。図４のステップ１の例では、Ａ／Ｄ１−ＣＨ３を対象として指定している。これは、検査対象５が接続されているプログラマブル検査装置４の１番目のＡ／Ｄボード上のチャンネル３の値を計測することを示している。計測したデータは、データ型１３２で指定したデータ型で保持され、後の合否判定も指定したデータ型で行われる。
【００１７】
計測対象設定部１３０の対象１３１で指定し、計測した対象１３１の値は、判定基準設定部１４０で指定された値と比較し、判定基準を満たしているかを判定する。判定基準設定部１４０には、最小値１４１、最大値１４２、一致比較１４３がある。最小値１４１には合否判定基準の最小値を記述し、最大値１４２には合否判定基準の最大値を記述する。
計測した値がこの範囲に入っていれば、合格（ＯＫ）の判定を行う。計測した値がこの値に入っていなければ、不合格（ＮＧ）の判定を行う。最小値、最大値に値の記述が無く、一致比較１４３にのみ数値が記述されている場合には、計測した値と、一致比較１４３に記述された数値が一致しているかを判定する。一致している場合は、合格（ＯＫ）の判定を行う。一致していなければ不合格（ＮＧ）の判定を行う。
【００１８】
計測対象設定部１３０で計測された値と、判定基準設定部１４０にて設定された値を比較して判定された判定結果に基づいて、判定後処理設定部１５０に記述された処理を実行する。判定後処理設定部１５０は、ＯＫ１５１とＮＧ欄１５２の２つの欄からなる。ＯＫ１５１には、判定結果が合格（ＯＫ）の場合に実行する処理を記述する。ＮＧ欄１５２には、判定結果が不合格（ＮＧ）の場合に実行する処理を記述する。図４のステップ４の判定後処理設定部１５０のＯＫ１５１では、システム上に存在する他のソフトウェアオブジェクトである「Func1」を呼び出す処理を指定している。ステップ４の判定結果がOKとなった場合、この「Func1」が表形式プログラム実行手段２２から呼び出され、実行される。
【００１９】
判定後処理設定部１５０に記述した処理を終えると、表形式プログラム実行手段２２は、同じ表形式プログラムの次のステップ（行）へ進み、ステップ番号１００とコメント１１０を読み出す。これらを表示画面に表示した後、計測条件設定部１２０に記述されたデータを出力し、この行の残りの処理を進める。
この様に1行のデータの処理を終えると次の行に進む。そして表プログラム全体の処理を終えると、その表形式プログラムの終了となる。
【００２０】
以上のようにして表形式プログラム全体の処理を行うが、このような制御装置の表形式プログラムには、先に説明したように直値のみが記述可能であるため、設定値や判定値が異なるだけで制御工程の流れが同一であったとしても、それぞれに応じた表形式プログラムを作成しなければならず、また、時間に応じて設定値や判定値が変化する場合には、該当する時間毎の表形式プログラムを作成しなければならないため、表形式プログラムの数が膨大となり、制御装置が持っている表形式プログラムを保持するためのメモリを効率的に使用できなかった。
【００２１】
図５は、この発明の実施の形態１による表形式プログラムの一例を示しており、計測条件設定部１２０のデバイスに間接指定を用いたものである。この例では、タグ名１２３（ＣＨ−１）の前にアットマーク（＠）を付けることによって、間接指定であることを示している。アットマークは、間接指定であることを示す一つの方法であり、他の表現を用いることもできる。また、間接指定は、タグ名だけではなく、デバイスの名前に対しても指定することができる。間接指定が指定された枠には、その枠の中のデバイスやタグが指す値が代入される。直値で指定する場合、その枠の値は固定されるが、デバイスの間接指定を用いると、デバイスの値を変化させることによって、枠内の値を変化させることが可能になる。
【００２２】
次に、デバイスやタグの間接指定から値を取得する流れについて図６を用いて説明する。表形式プログラム実行手段２２は、計測条件設定部１２０を読み出す際に、間接指定が指定されている枠があると、データ保持手段２３にアクセスし、該当する間接指定先から値を取得する。
最初に、計測条件設定部１２０の中の値を読み出そうとしている枠内に記述されている内容が間接指定かどうかを判断する（ステップ２００）。枠内の記述が間接指定であれば、間接指定のデバイスが指している値をメモリから読み出し（ステップ２０１）、指定デバイスに値を代入する（ステップ２０２）。枠内の記述が間接指定でなければ、枠内に記述されている数値をそのまま指定デバイスに代入する。
【００２３】
したがって、図５の場合は、チャンネル１２３（ＣＨ−１）に出力する値は、Ｄ１００、Ｄ１０２、Ｄ１０４、Ｄ１０６、Ｄ１０８の各デバイスが指している値ということになる。すなわちＤ１００、Ｄ１０２、Ｄ１０４、Ｄ１０６、Ｄ１０８はデバイス名であるが、それぞれがメモリ上の特定の番地を指定しており、その番地に入力されている数値を読み出すものである。
ただし、間接指定が設定されている枠の中に、直値を指定することも可能であり、その場合は、直値として扱われる。
【００２４】
図７に計測対象設定部１３０と判定基準設定部１４０に間接指定を用いた表形式プログラムの例を示す。この例では、４ステップ目のA/D1-CH３にアットマークを付けることによって、その右側の判定基準設定部１４０に指定するデバイスD１１０、D１１２が間接指定であることを示している。計測条件設定部１２０の場合と同様に、アットマークは間接指定であることを示す記号の一例であり、他の表現を用いることもできる。また、間接指定は、タグ名だけでなく、デバイスの名前に対しても指定することができる。計測対象設定部１３０で間接指定が指定された行の判定基準設定部１４０には、デバイスやタグの間接指定を記述する。これらの枠には、間接指定されたデバイスの値が代入される。また、間接指定が指定された行の判定基準設定部１４０に直値が記述されている場合は、その値を判定基準に用いる。デバイスやタグの間接指定から値を取得する方法は、計測条件設定部１２０で説明した方法と同じであるので説明は省略する。
【００２５】
実施の形態２.
図８は、間接指定のデバイスの有効/無効を判定するデバイス判定手段２９を設けた場合の実施の形態である。図３との唯一の相違点であるデバイス判定手段２９は、表形式プログラム中に記述されている間接指定デバイスが、有効なデバイスであるかを確認する手段である。記述されている間接指定デバイスが無効な場合は、そのデバイスが無効であることを表形式プログラム実行手段２２に伝える。表形式プログラム実行手段２２は、無効なデバイスである場合、表形式プログラムの実行を中断することもできるし、該当する間接指定デバイスの値を事前に設定したデフォルト値に置き換えて実行を継続することもできる。また、直前に使用した値を繰り返し用いて実行を継続することもできるし、あるいは、無効時に間接指定するデバイスを別途指定しておき、そのデバイスの値を使用して実行を継続することもできる。
【００２６】
図９にデバイス判定手段２９の動作の流れを示す。表形式プログラム実行手段２２は、プログラムの実行中にデバイスの間接指定を検出すると、デバイス判定手段２９を呼び出し、そのデバイスが有効であるかを確認する。デバイス判定手段２９は、そのデバイスがデータ保持手段２３の中に含まれているかを確認する（ステップ３００）。そのデバイスがデータ保持手段２３の中に含まれている場合は、そのデバイスが有効であることを表形式プログラム実行手段２２に伝え（ステップ３０１）、そのデバイスがデータ保持手段２３の中に含まれない場合は、そのデバイスが無効であることを表形式プログラム実行手段２２に伝える（ステップ３０２）。
【００２７】
実施の形態３.
図１０は、間接指定デバイスが指している値の有効/無効を判定するデバイス値判定手段３０と、デバイスの値の範囲を設定するデバイス値範囲入力手段３１、入力したデバイス値の範囲を記録するデバイス値範囲保持手段３２を設けた場合の実施の形態である。表形式プログラム中に含まれる間接指定のデバイスの値が、適切な値の範囲に収まっているかを実行時に確認する。
デバイス値範囲入力手段３１は、間接指定するデバイスの値に有効な範囲を設定する手段である。デバイス値範囲保持手段３２は、デバイス値範囲入力手段３１によって入力された範囲を記憶するための手段である。デバイス値判定手段３０は、間接指定先のデバイスの値と、デバイス値範囲保持手段３２に設定されているデバイスの範囲とを比較し、設定されている範囲内に入っていれば有効を、設定されている範囲内に入っていなければ無効であることを表形式プログラム実行手段２２に伝える手段である。
【００２８】
デバイスの値が無効であると判定された場合は、表形式プログラム実行手段２２は、実施の形態２と同様に実行を継続することもできるし、その時点で実行を中断することもできる。図１１に、デバイス値判定手段３０の動作の流れを示す。表形式プログラム実行手段２２は、プログラムの実行中にデバイスの間接指定を検出すると、デバイス値判定手段３０を呼び出し、デバイスの値が有効であるかを確認する。デバイス値判定手段３０は、そのデバイスの値と、デバイス値範囲保持手段３２に保持されているそのデバイスの値の範囲を比較する（ステップ４００）。そのデバイスの値が、デバイス値範囲保持手段３２に保持されている値の範囲内であれば、そのデバイスの値が有効であることを表形式プログラム実行手段２２に伝える（ステップ４０１）。そのデバイスの値が、デバイス値範囲保持手段３２に保持されている値の範囲外であれば、そのデバイスの値が無効であることを表形式プログラム実行手段２２に伝える（ステップ４０２）。
【００２９】
実施の形態４. 
図１２は、間接指定デバイスが指している値のデータ型の有効/無効を判定するデータ型判定手段３３を設けた場合の実施の形態である。表形式プログラム中に含まれる間接指定のデバイスの値のデータ型が、適切なデータ型であるかを実行時に確認する。
デバイスに指定するデータ型は、表形式プログラム中の計測条件設定部１２０であれば、各項目の先頭に記載されているデバイスと同じデータ型であり、判定基準設定部１４０であれば、計測対象設定部１３０で設定したデータ型を同じデータ型となる。間接指定デバイスの中の値のデータ型は、間接指定デバイスを指定したときにデータ型も保持されている。データ型判定手段３３は、表形式プログラム中に記述されている間接指定デバイスの中の値が、適切なデータ型であるかを判断する手段である。データ型が適切ではない場合は、適切なデータ型へ型変換（キャスト）することも可能であるし、表形式プログラム実行手段２２に対して、データが無効であることを通知するだけで、型変換を実行しないことも可能である。
【００３０】
図１３にデータ型判定手段３３の動作の流れを示す。表形式プログラム実行手段２２は、プログラムの実行中にデバイスの間接指定を検出すると、データ型判定手段３３を呼び出し、デバイスのデータ型が適切かどうかを確認する。データ型判定手段３３は、そのデバイスのデータ型が適切なデータ型であるかを判断する（ステップ５００）。そのデバイスのデータ型が有効である場合は、有効であることを表形式プログラム実行手段２２に伝える（ステップ５０１）。そのデバイスのデータ型が無効である場合は、無効であることを表形式プログラム実行手段２２に伝えることもできる（ステップ５０２）し、有効なデータ型へ型変換を実施し、型変換後のデバイスの値を表形式プログラム実行手段２２に対して伝えることもできる。
なお、上述した実施の形態２乃至実施の形態４までは、組み合わせて実行することもできる。
【００３１】
実施の形態５. 
図１４にウエイト１２４に間接指定を用いた表形式プログラムの例を示す。この例では、ウエイトの前にアットマークを付けることによって、間接指定であることを示している。この例では、ステップ１のウエイト１２４にＤ１００を記述している。表形式プログラム実行手段２２は、ステップ１のウエイト１２４に実行が進むと、Ｄ１００が指している値の時間だけ実行を休止し、指定時間が経過すると実行を再開する。アットマークは、間接指定であることを示す一つの方法であり、他の表現を用いることもできる。また、間接指定は、タグ名だけではなく、デバイスの名前に対しても指定することができる。
【００３２】
実施の形態６. 
図１５に計測対象設定部１３０と判定基準設定部１４０に間接指定を用いた表形式プログラムの例を示す。この例では、デバイスの前にアットマークを付けることによって、間接指定であることを示している。この例では、ステップ２の対象１３１のデバイスＤ３００と一致比較１４３のデバイスＤ４００に間接指定を設定している。また、データ型１３２にはＳＴＲＩＮＧと記述している。この場合、Ｄ３００を先頭アドレスとする文字列と、Ｄ４００を先頭アドレスとする文字列の一致比較を行う。
図１６に、データ保持手段２３に含まれるデータの一例を示す。Ｄ３００には'a'が、Ｄ３０１には、‘ｂ’が、Ｄ４００には'a'が入っていることを表している。
表形式プログラム実行手段２２は、図１５の表形式プログラムのステップ２を実行する際に、対象１３１から＠Ｄ３００を読み出す。この時、データ型がＳＴＲＩＮＧ型になっているため、データ保持手段２３のＤ３００を先頭アドレスとする文字列を読み出す。文字列は、文字が連続するデータで、文字列の終端のデータは００ｈである。
【００３３】
この場合、Ｄ３００を先頭とする文字列は、“abc”となる。一方、表形式プログラム実行手段２２は、一致比較１４３にある＠Ｄ４００を読み出すと、データ保持手段２３からＤ４００を先頭とする文字列を読み出す。この場合、読み出す文字列は“abcd”となる。この場合、これら２つの文字列は異なるため、比較結果はNGとなる。この例では、００ｈを終端とする文字列の比較を行っているが、文字列を比較する際に、文字列の先頭から比較する文字数を指定することもできる。比較する文字数を指定する例としては、データ型を指定するデータ型にＳＴＲＩＮＧと記述しているところを、ＳＴＲＩＮＧ（３）など、数値を追加する方法がある。文字数が指定された文字列の比較は、文字列の先頭から指定文字数の内容が全て同じであるかを比較する。
また、文字列ではなく、数値データの場合も同様であり、FLOAT（４）など、例えばデータ型などの欄に数値を追記することにより、間接指定したデバイスを配列の先頭とし、指定した数値を要素数とする配列を指定することができる。配列の比較は、各配列の要素が全て同じであるかを比較する。
【００３４】
実施の形態７. 
図１７に、判定後処理設定部１５０に間接指定を用いた表形式プログラムの例を示す。この例では、ステップ５のＯＫ１５１にＤ５００、Ｄ５０１を記述することにより、判定後処理を間接指定している。
判定後処理設定部１５０には、図１８に示すようなスクリプトを記述する。スクリプトには、引数で指定したステップへ移動するＪＵＭＰや、引数で指定したサブルーチンを呼び出すＧＯＳＵＢなどがある。ＯＫ１５１に記述したスクリプトは判定結果がＯＫの場合に実行し、ＮＧ１５２に記述したスクリプトは判定結果がＮＧの場合に実行するスクリプトである。
【００３５】
表形式プログラム実行手段２２は、図１８に示したスクリプトに番号を付加し、ＯＫ１５１やＮＧ１５２に記述したデバイスの値に対応するスクリプトを実行する。ＯＫ１５１やＮＧ１５２に記載する1つ目のデバイスはスクリプトを表し、2つ目のデバイスは、スクリプトに指定する引数を表す。図１７の例では、D５００がスクリプトを表し、Ｄ５０１がスクリプトの引数を表す。D５００の値が１でＤ５０１の値が３である場合はＪＵＭＰ  ３と記述されていることと同意となる。ＯＫ１５１やＮＧ１５２に記述する内容は、必ずしもデバイスが２つ必要である訳ではなく、スクリプトのみをデバイスで間接指定して引数を直値で指定したり、スクリプトのみを通常のスクリプトとして記述し、引数のみをデバイスで間接指定することもできる。
【００３６】
実施の形態８. 
図１９に間接指定のデバイスにインデックス修飾を追加した表形式プログラムの例を示す。この例では、＠CH−１の欄にＤ６００Ｚ、Ｄ６０１Ｚ、Ｄ６０２Ｚを記述した例を示している。Ｚは、インデックスを表す記号であり、デバイスの番号にＺの値を加算した番号のデバイスの値を指す。例えば、Ｄ６００ＺでＺの値が７の場合は、Ｄ６０７を意味する。Ｚはインデックス記号の一例であり、他の記号を用いてもよい。また、インデックスを付加する位置は、この例ではデバイス番号の後ろに付けているが、他の位置であっても良い。
【００３７】
図２０にデータ保持手段２３に含まれるデータの一例を示す。Ｄ６００に２４、Ｄ６１０に１２が入っていることを表している。
表形式プログラム実行手段２２は、図１９の表形式プログラムを実行する際に、Ｄ６００Ｚを読み出すと、Ｚが０の場合はＤ６００の値を読み出し、Ｚが１０の場合はＤ６１０から値を読み出す。同様に、Ｄ６０１Ｚの場合は、Ｚが０であればＤ６０１の値を、Ｚが１０であればＤ６１１の値を読み出す。
Ｚの値を変化させることにより、データ保持手段２３に含まれるデータの中で読み出すデバイスを選択することができる。
【００３８】
気温に応じて検査に使用するパラメータや、判定基準の値を変更する場合、気温毎にデータのセットを保持しておくと、そのデータのセットを気温に応じて切り替えて使用することができる。気温に応じて値を変化させたい項目にデバイスの間接指定を用いると、気温に応じて間接指定先のデバイスの値を変更する必要がある。そこで、デバイスの間接指定にインデックス修飾を行う。デバイスの間接指定に対してインデックス修飾を用いると、間接指定するデバイスを切り替えることが可能となり、それぞれのデバイスの値を切り替える必要がなくなる。その結果、気温に応じたデータのセットをデータ保持手段２３に入力しておくだけで、気温に応じてデバイスを切り替えて適切な気温で検査を実行することができる。さらに判定後処理設定部１５０のＯＫ１５１やＮＧ１５２などの欄にＺの値を変更する記述を行うことができる。図１９では、ステップ５のＯＫ１５１にＺ＋＝１０と記述している。これは、Ｚの現在の値に１０を加算することを意味する。Ｚの値を設定するには様々な記述を行うことが可能である。
【００３９】
実施の形態９.
図２１は、表形式プログラム実行手段２２によって実行される表形式プログラムの状況を表示するモニタリング手段３４を設けた場合の実施の形態である。モニタリング手段３４は、検査装置上の表示手段２７を用いて表形式プログラムの状況を表示したり、遠隔地にある計算機が持つ画面上に表形式プログラムの状況を表示することができる。モニタリング手段３４は、表形式プログラムを画面上に表示する際に、デバイスの間接指定が含まれた表形式プログラムをそのまま表示することも可能であるし、間接指定のデバイスが指定されている枠の中を、間接指定先の値に置き換えて、表形式プログラムを表示することも可能である。
間接指定先の値を表形式プログラム上に表示することによって、実際に使われる値を確認することができるため、デバッグを効率化することができる。
【００４０】
実施の形態１０.
検査装置では、製品の不具合の原因を過去にさかのぼって特定するなどの理由で、検査の履歴を記録しておくことは重要である。
図２２の検査履歴保持手段２８において、表形式プログラムの実行履歴をファイルに保存する場合に、デバイスの間接指定が含まれた表形式プログラムとその履歴をそのまま保存することも可能であるし、間接指定された枠の中を、間接指定値取得手段３５により間接指定先の値に置き換えて、表形式プログラムとその履歴を保存することも可能である。
検査履歴の中にデバイスの間接指定の記述がそのまま含まれていては、検査に使用したパラメータを後から確認することができなくなる。間接指定の部分を実際に使用したデータに置き換えて保存することによって、検査に使用したパラメータを後から確認することが可能になる。
なお、上記各実施の形態では検査装置を例にとって説明したが、これに限らず、製造・組立てラインの監視等に用いられるプログラマブルコントローラ、その他あらゆる表形式プログラムを用いる用途に使用することができる。
【図面の簡単な説明】
【００４１】
【図１】この発明の一対象である検査システムのユニット構成を示す図である。
【図２】この発明のプログラマブル検査装置のシステム構成を示すブロック図である。
【図３】この発明のプログラマブル検査装置の動作を示す機能構成図である。
【図４】従来の表形式プログラムの一例を示す図である。
【図５】この発明の実施の形態１による表形式プログラムの一例を示す図である。
【図６】デバイスやタグの間接指定から値を取得する流れを示すフローチャートである。
【図７】計測対象設定部と判定基準設定部に間接指定を用いた場合の表形式プログラムの例を示す。
【図８】間接指定のデバイスの有効/無効を判定するデバイス判定手段を設けた場合のこの発明の実施の形態２による機能構成図である。
【図９】デバイス判定手段の動作の流れを示すフローチャートである。
【図１０】間接指定デバイスが指している値の有効/無効を判定するデバイス値判定手段を設けた場合のこの発明の実施の形態３による機能構成図である。
【図１１】デバイス値判定手段の動作の流れを示すフローチャートである。
【図１２】間接指定デバイスが指している値のデータ型の有効/無効を判定するデータ型判定手段を設けた場合のこの発明の実施の形態４による機能構成図である。
【図１３】データ型判定手段の動作の流れを示すフローチャートである。
【図１４】ウエイトに間接指定を用いた場合のこの発明の実施の形態５による表形式プログラムの例を示す。
【図１５】計測対象設定部と判定基準設定部に間接指定を用いた場合のこの発明の実施の形態６による表形式プログラムの例を示す。
【図１６】データ保持手段に含まれるデータの一例を示す。
【図１７】判定後処理設定部に間接指定を用いた場合のこの発明の実施の形態７による表形式プログラムの例を示す。
【図１８】スクリプトの記述例を示す。
【図１９】間接指定のデバイスにインデックス修飾を追加した場合のこの発明の実施の形態８による表形式プログラムの例を示す。
【図２０】データ保持手段に含まれるデータの一例を示す。
【図２１】モニタリング手段を設けた場合のこの発明の実施の形態９による機能構成図である。
【図２２】間接指定値取得手段を設けた場合のこの発明の実施の形態１０による機能構成図である。
【符号の説明】
【００４２】
１     搬入機                             ２     検査ステーション
３     搬出機プログラム作成手段           ４     プログラマブル検査装置
５     検査対象                           １０   ＣＰＵ
１１   ＲＯＭ                             １２   ＲＡＭ
１３   表示装置                           １４   入力装置
２０   プログラム作成手段                 ２１   プログラム保持手段  
２２    表形式プログラム実行手段           ２３   データ保持手段
２４   入力手段                           ２５   出力手段
２６   操作手段                           ２７   表示手段
２８   検査履歴保持手段                   ２９   デバイス判定手段    
３０   デバイス値判定手段                 ３１   デバイス値範囲入力手段         ３２   デバイス値範囲保持手段             ３３   データ型判定手段
３４   モニタリング手段                   ３５   間接指定値取得手段  
１００    ステップ                         １１０   コメント
１２０    計測条件設定部                   １３０   計測対象設定部
１４０   判定基準設定部                   １５０   判定後処理設定部
【図１】
2005241446.tif 000003
【図２】
2005241446.tif 000004
【図３】
2005241446.tif 000005
【図４】
2005241446.tif 000006
【図５】
2005241446.tif 000007
【図６】
2005241446.tif 000008
【図７】
2005241446.tif 000009
【図８】
2005241446.tif 000010
【図９】
2005241446.tif 000011
【図１０】
2005241446.tif 000012
【図１１】
2005241446.tif 000013
【図１２】
2005241446.tif 000014
【図１３】
2005241446.tif 000015
【図１４】
2005241446.tif 000016
【図１５】
2005241446.tif 000017
【図１６】
2005241446.tif 000018
【図１７】
2005241446.tif 000019
【図１８】
2005241446.tif 000020
【図１９】
2005241446.tif 000021
【図２０】
2005241446.tif 000022
【図２１】
2005241446.tif 000023
【図２２】
2005241446.tif 000024