(57)【特許請求の範囲】
【請求項１】
複数の突条の延在方向が互いに平行となるように表面上に配置されることで表面が凹凸面とされた凹凸状のバーコードを読み取るためのバーコード読取方法であって、
前記バーコードの表面高さを測定する測定手段及び前記バーコードのどちらか一方を前記突条の延在方向と交差する方向に移動させて、前記バーコードの表面高さを測定することで、前記測定手段による測定位置及び当該測定位置における高さ方向の値を含む表面高さデータを取得する工程と、
前記表面高さデータのうちから、前記バーコードの表面の凸形状に対応する凸形状データを複数識別する工程と、
前記各凸形状データのうちから、高さ方向の値が最大となる最大点をそれぞれ抽出する工程と、
高さ方向の値が前記最大点の高さ方向の値よりも所定の値だけ小さい点のうち、前記最大点よりも前記バーコードの読取方向における前方に向かって前記表面高さデータを探索したときに最初に現れる点である一の初出点、及び、前記最大点よりも前記バーコードの読取方向における後方に向かって前記表面高さデータを探索したときに最初に現れる点である他の初出点を、全ての前記最大点について抽出する工程と、
前記バーコードの読取方向における隣り合う前記初出点同士の間隔を初出点間隔として取得する工程と、
全ての前記初出点間隔について、前記初出点間隔が所定の範囲内の大きさであるか否かを判定する工程とを備えることを特徴とするバーコード読取方法。
【請求項２】
前記初出点間隔が所定の範囲内の大きさであるか否かを判定する工程において、前記初出点間隔のうち少なくとも一つが所定の範囲を超えていると判定された場合には、前記バーコードの読み取りができないと判定する工程を更に備えることを特徴とする、請求項１に記載されたバーコード読取方法。
【請求項３】
前記初出点間隔が所定の範囲内の大きさであるか否かを判定する工程において、前記初出点間隔のうち、前記凸形状データを間に置く一対の初出点によって規定される初出点間隔が所定の範囲未満であると判定された場合には、当該一対の初出点を除外したうえで隣り合う前記初出点同士の前記読取方向における間隔を初出点間隔として取得する工程を更に備えることを特徴とする、請求項２に記載されたバーコード読取方法。
【請求項４】
複数の突条の延在方向が互いに平行となるように表面上に配置されることで表面が凹凸面とされた凹凸状のバーコードを読み取るためのバーコード読取装置であって、
前記バーコードの表面高さを測定する測定手段及び前記バーコードのどちらか一方を前記突条の延在方向と交差する方向に移動させて、前記バーコードの表面高さを測定することで、前記測定手段による測定位置及び当該測定位置における高さ方向の値を含む表面高さデータを取得する手段と、
前記表面高さデータのうちから、前記バーコードの表面の凸形状に対応する凸形状データを複数識別する手段と、
前記各凸形状データのうちから、高さ方向の値が最大となる最大点をそれぞれ抽出する手段と、
高さ方向の値が前記最大点の高さ方向の値よりも所定の値だけ小さい点のうち、前記最大点よりも前記バーコードの読取方向における前方に向かって前記表面高さデータを探索したときに最初に現れる点である一の初出点、及び、前記最大点よりも前記バーコードの読取方向における後方に向かって前記表面高さデータを探索したときに最初に現れる点である他の初出点を、全ての前記最大点について抽出する手段と、
前記バーコードの読取方向における隣り合う前記初出点同士の間隔を初出点間隔として取得する手段と、
全ての前記初出点間隔について、前記初出点間隔が所定の範囲内の大きさであるか否かを判定する手段とを備えることを特徴とするバーコード読取装置。
【請求項５】
前記初出点間隔が所定の範囲内の大きさであるか否かを判定する手段が、前記初出点間隔のうち少なくとも一つが所定の範囲を超えていると判定した場合に、前記バーコードの読み取りができないと判定する手段を更に備えることを特徴とする、請求項４に記載されたバーコード読取装置。
【請求項６】
前記初出点間隔が所定の範囲内の大きさであるか否かを判定する手段が、前記初出点間隔のうち、前記凸形状データを間に置く一対の初出点によって規定される初出点間隔が所定の範囲未満であると判定した場合に、当該一対の初出点を除外したうえで隣り合う前記初出点同士の前記読取方向における間隔を初出点間隔として取得する手段を更に備えることを特徴とする、請求項５に記載されたバーコード読取装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の突条が互いに平行となるように表面上に配置されることで表面が凹凸面とされた凹凸状のバーコードを読み取るためのバーコード読取方法及びバーコード読取装置に関する。
【背景技術】
【０００２】
従来、複数の突条が互いに平行となるように物体（タイヤのサイドウォール部）の表面上に配置されることで表面が凹凸面とされた凹凸状のバーコードを読み取るための方法が知られている（例えば、下記特許文献１参照）。このバーコード読取方法は、凹凸状のバーコードを変位センサで走査してその波形Ｈを検出するステップと、波形Ｈにおける読取単位時間ｔ内での最大値Ｈｍａｘ及び最小値Ｈｍｉｎを求め、その中心値Ｈｍを演算するステップと、波形ＨのうちＨｍ以下の値を示す部分を切り捨てて整形波形Ｈｓとするステップと、整形波形Ｈｓのうち一定値を超える部分について切り捨てて、整形波形Ｈｓを上限値Ｌが設けられた波形Ｈｒとするステップと、波形Ｈｒのうち上限値Ｌ以下の部分の面積を算出し、各部分の面積の値と予め記憶されている値とを比較することにより、太いバーコードであるか細いバーコードであるかを判定するステップとを備える（図７参照）。このバーコード読取方法では、読取単位時間ｔ内における最大値Ｈｍａｘ及び最小値Ｈｍｉｎから求められた中心値Ｈｍを用いて、波形Ｈのうち中心値Ｈｍ以下の値を示す部分を切り捨てているので、波形Ｈの測定対象物の表面が曲面状であってもその傾きの影響を少なくすることができるようになっている。
【特許文献１】特開昭６１−１３１０７４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ところで、このような凹凸状のバーコードは、電子部品の製造工程においても利用されている。具体的には、グリーンチップが載置されるさやの表面や、バレルめっき装置のバレルの表面等に凹凸状のバーコードを設け、ロットの管理等を行っている。
【０００４】
ところで、凹凸状のバーコードを電子部品の製造工程に利用する場合、凹凸状のバーコードの凹部に異物が溜まったり、凹凸状のバーコードの凸部に異物が堆積しやすい。そのため、このように凹凸状のバーコードの凹部や凸部に異物が堆積した場合、上記のような従来のバーコード読取方法では、中心値Ｈｍが異物の影響を受けてしまうことが起こりうる。そうすると、所望の整形波形Ｈｓが得られず、結果的に、バーコードを正しく読み取れなくなってしまう虞があった。
【０００５】
そこで、本発明は、凹凸状のバーコードの読取精度の向上を図ることが可能なバーコード読取方法及びバーコード読取装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明に係るバーコード読取方法は、複数の突条の延在方向が互いに平行となるように表面上に配置されることで表面が凹凸面とされた凹凸状のバーコードを読み取るためのバーコード読取方法であって、バーコードの表面高さを測定する測定手段及びバーコードのどちらか一方を突条の延在方向と交差する方向に移動させて、バーコードの表面高さを測定することで、測定手段による測定位置及び当該測定位置における高さ方向の値を含む表面高さデータを取得する工程と、表面高さデータのうちから、バーコードの表面の凸形状に対応する凸形状データを複数識別する工程と、各凸形状データのうちから、高さ方向の値が最大となる最大点をそれぞれ抽出する工程と、高さ方向の値が最大点の高さ方向の値よりも所定の値だけ小さい点のうち、最大点よりもバーコードの読取方向における前方に向かって表面高さデータを探索したときに最初に現れる点である一の初出点、及び、最大点よりもバーコードの読取方向における後方に向かって表面高さデータを探索したときに最初に現れる点である他の初出点を、全ての前記最大点について抽出する工程と、バーコードの読取方向における隣り合う初出点同士の間隔を初出点間隔として取得する工程と、全ての初出点間隔について、初出点間隔が所定の範囲内の大きさであるか否かを判定する工程とを備えることを特徴とする。
【０００７】
本発明に係るバーコード読取方法では、高さ方向の値が最大点の高さ方向の値よりも所定の値だけ小さい初出点を探索している。そのため、バーコードの凸部（突条）上に異物が堆積した場合でも、異物の影響を受けることなく凸部として識別可能であり、また、バーコードの凹部に異物が溜まった場合でも、異物の高さが略均一な高さであれば異物の影響を受けることなく凹部として識別可能となっている。その結果、従来のように中心値によらずにバーコードの凹凸を識別することができるようになるので、異物がバーコードの凹凸部分に存在していても凹凸状のバーコードの読取精度の向上を図ることが可能となる。
【０００８】
好ましくは、初出点間隔が所定の範囲内の大きさであるか否かを判定する工程において、初出点間隔のうち少なくとも一つが所定の範囲を超えていると判定された場合には、バーコードの読み取りができないと判定する工程を更に備える。
【０００９】
より好ましくは、初出点間隔が所定の範囲内の大きさであるか否かを判定する工程において、初出点間隔のうち、凸形状データを間に置く一対の初出点によって規定される初出点間隔が所定の範囲未満であると判定された場合には、当該一対の初出点を除外したうえで隣り合う初出点同士の読取方向における間隔を初出点間隔として取得する工程を更に備える。バーコードの凹部に所定の高さの凸形状の異物が存在している場合には、バーコードの凹部の実際の幅よりも初出点間隔が狭くなることとなるが、前述の形態とすれば、バーコードの凹部に存在している凸形状の異物によって認識された初出点を除外して初出点間隔を取得することができるようになる。その結果、凹凸状のバーコードの読取精度のより一層の向上を図ることが可能となる。
【００１０】
一方、本発明に係るバーコード読取装置は、複数の突条の延在方向が互いに平行となるように表面上に配置されることで表面が凹凸面とされた凹凸状のバーコードを読み取るためのバーコード読取装置であって、バーコードの表面高さを測定する測定手段及びバーコードのどちらか一方を突条の延在方向と交差する方向に移動させて、バーコードの表面高さを測定することで、測定手段による測定位置及び当該測定位置における高さ方向の値を含む表面高さデータを取得する手段と、表面高さデータのうちから、バーコードの表面の凸形状に対応する凸形状データを複数識別する手段と、各凸形状データのうちから、高さ方向の値が最大となる最大点をそれぞれ抽出する手段と、高さ方向の値が最大点の高さ方向の値よりも所定の値だけ小さい点のうち、最大点よりもバーコードの読取方向における前方に向かって表面高さデータを探索したときに最初に現れる点である一の初出点、及び、最大点よりもバーコードの読取方向における後方に向かって表面高さデータを探索したときに最初に現れる点である他の初出点を、全ての最大点について抽出する手段と、バーコードの読取方向における隣り合う初出点同士の間隔を初出点間隔として取得する手段と、全ての初出点間隔について、初出点間隔が所定の範囲内の大きさであるか否かを判定する手段とを備えることを特徴とする。
【００１１】
本発明に係るバーコード読取装置では、高さ方向の値が最大点の高さ方向の値よりも所定の値だけ小さい初出点を探索している。そのため、バーコードの凸部（突条）上に異物が堆積した場合でも、異物の影響を受けることなく凸部として識別可能であり、また、バーコードの凹部に異物が溜まった場合でも、異物の高さが略均一な高さであれば異物の影響を受けることなく凹部として識別可能となっている。その結果、従来のように中心値によらずにバーコードの凹凸を識別することができるようになるので、異物がバーコードの凹凸部分に存在していても凹凸状のバーコードの読取精度の向上を図ることが可能となる。
【００１２】
好ましくは、初出点間隔が所定の範囲内の大きさであるか否かを判定する手段が、初出点間隔のうち少なくとも一つが所定の範囲を超えていると判定した場合に、バーコードの読み取りができないと判定する手段を更に備える。
【００１３】
より好ましくは、初出点間隔が所定の範囲内の大きさであるか否かを判定する手段が、初出点間隔のうち、凸形状データを間に置く一対の初出点によって規定される初出点間隔が所定の範囲未満であると判定した場合に、当該一対の初出点を除外したうえで隣り合う初出点同士の読取方向における間隔を初出点間隔として取得する手段を更に備える。バーコードの凹部に所定の高さの凸形状の異物が存在している場合には、バーコードの凹部の実際の幅よりも初出点間隔が狭くなることとなるが、前述の形態とすれば、バーコードの凹部に存在している凸形状の異物によって認識された初出点を除外して初出点間隔を取得することができるようになる。その結果、凹凸状のバーコードの読取精度のより一層の向上を図ることが可能となる。
【発明の効果】
【００１４】
本発明によれば、凹凸状のバーコードの読取精度の向上を図ることが可能なバーコード読取方法及びバーコード読取装置を提供することができる。
【発明を実施するための最良の形態】
【００１５】
本発明に係るバーコード読取装置１０の好適な実施形態について、図面を参照して説明する。なお、説明において、同一要素又は同一機能を有する要素には同一符号を用いることとし、重複する説明は省略する。
【００１６】
まず、図１を参照して、バーコード読取装置１０の構成について説明する。バーコード読取装置１０は、後述する凹凸状のバーコード３４を読み取るための装置である。そのため、バーコード読取装置１０は、制御部１２と、記憶部１４と、Ｉ／Ｏポート１６とを備える。
【００１７】
制御部１２は、ＣＰＵ（Central Processing Unit）、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）等を含む図示しないＥＣＵ（ElectronicControl Unit）等を有しており、バーコード読取装置１０の動作を制御すると共に、Ｉ／Ｏポート１６を介して後述するレーザ変位計２０や載置台３０の動作を制御する。
【００１８】
記憶部１４は、例えばハードディスクドライブ（ＨＤＤ：HardDisk Drive）やフラッシュメモリであり、各種データを記憶する。
【００１９】
Ｉ／Ｏポート１６は、レーザ変位計２０及び載置台３０と接続されている。Ｉ／Ｏポート１６を介して、制御部１２からの制御信号がレーザ変位計２０や載置台３０に送信され、レーザ変位計２０や載置台３０からのデータがデータ記憶部１２に送信される。
【００２０】
レーザ変位計２０は、図示しない半導体レーザと受光素子とを有している。レーザ変位計２０は、半導体レーザから発せられるレーザ光Ｌの反射光を受光素子によって受光することで、レーザ変位計２０と測定対象物との距離を測定する。
【００２１】
載置台３０は、複数の突条３４ａの延在方向が互いに平行となるように表面上に配置されることで表面が凹凸面とされた凹凸状のバーコード３４が設けられた物体３２を支持する。載置台３０には、図示しない駆動機構が設けられており、制御部１２から制御信号が送信されると、載置台３０は、載置されている物体３２を図１の矢印Ａ方向又は矢印Ｂ方向、すなわち、バーコード３４の突条３４ａの延在方向と交差（略直交）する方向に一定の速度で移動させる。そのため、図１の矢印Ａ方向又は矢印Ｂ方向がバーコード３４の読取方向となる。
【００２２】
続いて、図１〜図５を参照して、バーコード読取装置１０を用いたバーコード３４の読取方法の一例について説明する。なお、図２では、ステップをＳと略記している。
【００２３】
まず、バーコード読取装置１０がバーコード３４の読取処理を開始すると、制御部１２がＩ／Ｏポート１６を介してレーザ変位計２０を制御して、バーコード３４に向けてレーザＬを照射させると共に、制御部１２がＩ／Ｏポート１６を介して載置台３０を制御して、物体３２が載置されている載置台３０を所定の方向（矢印Ａ方向又は矢印Ｂ方向）に一定の速度で移動させて、バーコード３４の表面高さを測定する（ステップ１００）。これにより、載置台３０からＩ／Ｏポート１６及び制御部１２を介して記憶部１４に送信された、レーザ変位計２０による測定位置のデータと、レーザ変位計２０からＩ／Ｏポート１６及び制御部１２を介して記憶部１４に送信された、当該操作位置における高さ方向の値のデータとを含むバーコード３４の表面高さデータが記憶部１４に記憶される。
【００２４】
表面高さデータの一例を図３に示す。図３では、実線が、レーザ変位計２０によって読み取られた表面高さデータＨを示しており、破線が、突条３４ａに割れや欠けがなく凹凸部に異物が存在しない理想的なバーコード３４の表面高さを示している。
【００２５】
次に、制御部１２は、記憶部１４に記憶された表面高さデータに基づいて、表面高さデータのうちから、バーコード３４の表面の凸形状に対応する凸形状データを識別する（ステップ１０２）。なお、通常、バーコード３４の表面には複数の凸部が存在しており、異物が存在していることもあるので、凸形状データも複数識別される。図３においては、８個の凸形状データＤ１〜Ｄ８が識別されることとなる。
【００２６】
次に、ステップ１０２で識別した複数の凸形状データのうちから、高さ方向の値が最大となる最大点をそれぞれ抽出する（ステップ１０４）。図３においては、凸形状データＤ１〜Ｄ８についてそれぞれ最大点Ｍ１〜Ｍ８が抽出される。
【００２７】
次に、ステップ１０４で抽出した最大点に基づいて、その最大点の高さ方向の値よりも所定の値だけ小さい点を抽出する（ステップ１０６）。具体的には、高さ方向の値が最大点の高さ方向の値よりも所定の値だけ小さい点のうち、最大点におけるレーザ変位計２０による測定位置からバーコード３４の読取方向における前方に向かって表面高さデータを探索したときに最初に現れる初出点、及び、最大点におけるレーザ変位計２０による測定位置からバーコード３４の読取方向における後方に向かって表面高さデータを探索したときに最初に現れる初出点を抽出する。
【００２８】
図３においては、最大点Ｍ１の前方の初出点として初出点Ｓ１ａが抽出され、最大点Ｍ８の後方の初出点として初出点Ｓ８ｂが抽出される。なお、凸形状データＤ１は表面高さデータＨのうち左端に位置するため、最大点Ｍ１の後方の初出点は存在せず、凸形状データＤ８は表面高さデータＨのうち右端に位置するため、最大点Ｍ８の前方の初出点は存在しない。
【００２９】
また、図３においては、最大点Ｍ２〜Ｍ６の前方の初出点として初出点Ｓ２ａ〜Ｓ６ａがそれぞれ抽出され、最大点Ｍ２〜Ｍ６の後方の初出点として初出点Ｓ２ｂ〜Ｓ６ｂがそれぞれ抽出される。なお、最大点Ｍ７については、凸形状データＤ７のうち高さ方向の値が最大点Ｍ７の高さ方向の値よりも所定の値だけ小さい点が存在しないため、初出点は抽出されない。
【００３０】
次に、バーコード３４の読取方向における隣り合う初出点同士の間隔を初出点間隔として取得する（ステップ１０８）。図４においては、隣り合う初出点Ｓ１ａ，Ｓ２ｂ同士の初出点間隔Ｗ１、隣り合う初出点Ｓ２ｂ，Ｓ２ａ同士の初出点間隔Ｗ２、隣り合う初出点Ｓ２ａ，Ｓ３ｂ同士の初出点間隔Ｗ３、隣り合う初出点Ｓ３ｂ，Ｓ３ａ同士の初出点間隔Ｗ４、隣り合う初出点Ｓ３ａ，Ｓ４ｂ同士の初出点間隔Ｗ５ａ、隣り合う初出点Ｓ４ｂ，Ｓ４ａ同士の初出点間隔Ｗ５ｂ、隣り合う初出点Ｓ４ａ，Ｓ５ｂ同士の初出点間隔Ｗ５ｃ、隣り合う初出点Ｓ５ｂ，Ｓ５ａ同士の初出点間隔Ｗ６、隣り合う初出点Ｓ５ａ，Ｓ６ｂ同士の初出点間隔Ｗ７、隣り合う初出点Ｓ６ｂ，Ｓ６ａ同士の初出点間隔Ｗ８、隣り合う初出点Ｓ６ａ，Ｓ８ｂ同士の初出点間隔Ｗ９を取得する。
【００３１】
次に、取得した全ての初出点間隔について、各初出点間隔が所定の範囲の上限を超えていないかを判定する（ステップ１１０）。具体的には、図３において、バーコード３４の凹部及び凸部の幅の大きさとして二種類（ａ１，ａ２（ただし、ａ１＜ａ２である。））規定されているので、初出点間隔Ｗ１〜Ｗ４，Ｗ５ａ〜Ｗ５ｃ，Ｗ６〜Ｗ９が例えばａ１×０．９〜ａ２×１．１の範囲の上限を超えていないかを判定する。図４に示される例では、いずれの初出点間隔もａ２×１．１を超えていないと判定されることとなる。
【００３２】
ステップ１１０において、全ての初出点間隔について、各初出点間隔が所定の範囲の上限を超えていないと判定されると、初出点間隔のうち、所定の範囲の下限未満のものがあるか否かを判定する（ステップ１１２）。具体的には、初出点間隔Ｗ１〜Ｗ４，Ｗ５ａ〜Ｗ５ｃ，Ｗ６〜Ｗ６が例えばａ１×０．９〜ａ２×１．１の範囲の下限未満であるか否か判定する。図４に示される例では、初出点間隔Ｗ５ａ〜Ｗ５ｃがいずれもａ１×０．９未満であると判定されることとなる。
【００３３】
ステップ１１２において、初出点間隔のうち、所定の範囲の下限未満のものがあると判定されると、所定の範囲の下限未満の初出点間隔を画定する初出点のうち凸形状データを間に置く一対の初出点を初出点から除外する（ステップ１１４）。図４においては、ａ１×０．９未満の初出点間隔Ｗ５ａ〜Ｗ５ｃが初出点Ｓ３ａ，Ｓ４ｂ，Ｓ４ａ，Ｓ５ｂによってそれぞれ画定されているが、このうち初出点Ｓ４ｂ，Ｓ４ａが凸形状データＭ４を間に置いていることから、これらの初出点Ｓ４ｂ，Ｓ４ａが初出点から除外されることとなる。
【００３４】
次に、ステップ１０８に戻って、バーコード３４の読取方向における隣り合う初出点同士の間隔を初出点間隔として取得する。図５においては、隣り合う初出点Ｓ１ａ，Ｓ２ｂ同士の初出点間隔Ｗ１、隣り合う初出点Ｓ２ｂ，Ｓ２ａ同士の初出点間隔Ｗ２、隣り合う初出点Ｓ２ａ，Ｓ３ｂ同士の初出点間隔Ｗ３、隣り合う初出点Ｓ３ｂ，Ｓ３ａ同士の初出点間隔Ｗ４、隣り合う初出点Ｓ３ａ，Ｓ５ｂ同士の初出点間隔Ｗ５、隣り合う初出点Ｓ５ｂ，Ｓ５ａ同士の初出点間隔Ｗ６、隣り合う初出点Ｓ５ａ，Ｓ６ｂ同士の初出点間隔Ｗ７、隣り合う初出点Ｓ６ｂ，Ｓ６ａ同士の初出点間隔Ｗ８、隣り合う初出点Ｓ６ａ，Ｓ８ｂ同士の初出点間隔Ｗ９を取得する。
【００３５】
次に、再び、取得した全ての初出点間隔について、各初出点間隔が所定の範囲の上限を超えていないかを判定する（ステップ１１０）。図５に示される例では、いずれの初出点間隔もａ２×１．１を超えていないと判定されることとなる。
【００３６】
ステップ１１０において、全ての初出点間隔について、各初出点間隔が所定の範囲の上限を超えていないと判定されると、初出点間隔のうち、所定の範囲の下限未満のものがあるか否かを判定する（ステップ１１２）。図５に示される例では、いずれの初出点間隔もａ１×０．９未満でないと判定されることとなる。
【００３７】
ステップ１１２において、初出点間隔のうち、所定の範囲の下限未満のものがないと判定されると、各初出点間隔をバーコードパターンとして認識して、バーコードの読取処理を終了する。図５においては、初出点間隔Ｗ１〜Ｗ９がバーコードパターンとして認識されることとなる。
【００３８】
続いて、図１、図２及び図６を参照して、バーコード読取装置１０を用いたバーコード３４の読取方法の他の例について説明する。なお、ステップ１００〜１０８までの処理は上述した例と同じであるから、その説明を省略する。
【００３９】
ステップ１０８の後、取得した全ての初出点間隔について、各初出点間隔が所定の範囲の上限を超えていないかを判定する（ステップ１１０）。具体的には、初出点間隔Ｗ１〜Ｗ４，Ｗ５ａ〜Ｗ５ｃ，Ｗ６〜Ｗ９が例えばａ１×０．９〜ａ２×１．１の範囲の上限を超えていないかを判定する。図６に示される例では、初出点間隔Ｗ７がａ２×１．１を超えている判定されることとなる。
【００４０】
ステップ１１０において、全ての初出点間隔について、各初出点間隔が所定の範囲の上限を超えていると判定されると、制御部１２はそのバーコード３４がバーコードパターンとして識別することができないものであると判断して、バーコードの読取処理を終了する。
【００４１】
以上のような本実施形態においては、高さ方向の値が最大点の高さ方向の値よりも所定の値だけ小さい初出点を探索している。そのため、バーコード３４の凸部（突条３４ａ）上に異物が堆積した場合でも、異物の影響を受けることなく凸部として識別可能であり、また、バーコード３４の凹部に異物が溜まった場合でも、異物の高さが略均一な高さであれば異物の影響を受けることなく凹部として識別可能となっている。その結果、従来のように中心値によらずにバーコード３４の凹凸を識別することができるようになるので、異物がバーコード３４の凹凸部分に存在していても凹凸状のバーコード３４の読取精度の向上を図ることが可能となる。
【００４２】
また、本実施形態においては、初出点間隔が所定の範囲内の大きさであるか否かを判定する工程において、初出点間隔のうち、凸形状データを間に置く一対の初出点によって規定される初出点間隔が所定の範囲未満であると判定された場合には、当該一対の初出点を除外したうえで隣り合う初出点同士の読取方向における間隔を初出点間隔として取得している。バーコード３４の凹部に所定の高さの凸形状の異物が存在している場合には、バーコード３４の凹部の実際の幅よりも初出点間隔が狭くなることとなるが、このようにすると、バーコード３４の凹部に存在している凸形状の異物によって認識された初出点を除外して初出点間隔を取得することができるようになる。その結果、凹凸状のバーコード３４の読取精度のより一層の向上を図ることが可能となる。
【００４３】
以上、本発明の好適な実施形態について詳細に説明したが、本発明は上記した実施形態に限定されるものではない。例えば、バーコード３４の表面高さを測定できるものであれば、レーザ変位計１２に限らず用いることができる。
【００４４】
また、載置台３０によって物体３２（バーコード３４）を移動させていたが、物体３２（バーコード３４）を固定して、レーザ変位計２０を移動させるようにしてもよい。つまり、レーザ変位計２０及びバーコード３４のどちらか一方を矢印Ａ又は矢印Ｂ方向に移動させるようにすればよい。
【００４５】
また、バーコード３４の凹部及び凸部の幅の大きさが三種類以上あってもよい。
【００４６】
また、本実施形態では、初出点間隔Ｗ１〜Ｗ４，Ｗ５ａ〜Ｗ５ｃ，Ｗ６〜Ｗ９の大きさがａ１×０．９〜ａ２×１．１の範囲内にあるか否かを判定していたが、これ以外の範囲も当然に用いることができる。例えば、ａ１±１０％、ａ２±１０％といったように、バーコード３４の凹部及び凸部の種類毎に範囲を設定してもよい。
【図面の簡単な説明】
【００４７】
【図１】図１は、本実施形態に係るバーコード読取装置の構成を概略的に示す図である。
【図２】図２は、本実施形態に係るバーコード読取装置によるバーコードの読取処理を説明するためのフローチャートである。
【図３】図３は、表面高さデータの一例を示す図である。
【図４】図４は、表面高さデータの一例を示す図である。
【図５】図５は、表面高さデータの一例を示す図である。
【図６】図６は、表面高さデータの他の例を示す図である。
【図７】図７は、従来のバーコード読取方法を説明するための図であり、図７の（ａ）は、変位センサによって読み取られた凹凸状のバーコードの波形を示す波形図であり、図７の（ｂ）は、図７の（ａ）の波形を整形して得られた波形を示す波形図である。
【符号の説明】
【００４８】
１０…バーコード読取装置、１２…制御部、１４…記憶部、２０…レーザ変位計、３０…載置台、３４…バーコード、３４ａ…突条、Ｄ１〜Ｄ８…凸形状データ、Ｈ…表面高さデータ、Ｍ１〜Ｍ８…最大点、Ｓ１ａ，Ｓ２ａ，Ｓ２ｂ，Ｓ３ａ，Ｓ３ｂ，Ｓ４ａ，Ｓ４ｂ，Ｓ５ａ，Ｓ５ｂ，Ｓ６ａ，Ｓ６ｂ，Ｓ７ａ，Ｓ７ｂ，Ｓ８ｂ…初出点、Ｗ１〜Ｗ９，Ｗ５ａ〜Ｗ５ｃ…初出点間隔。
【図１】
0005120088.tif 000002
【図２】
0005120088.tif 000003
【図３】
0005120088.tif 000004
【図４】
0005120088.tif 000005
【図５】
0005120088.tif 000006
【図６】
0005120088.tif 000007
【図７】
0005120088.tif 000008