IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社キーエンスの特許一覧

特開2024-113913コード読取装置およびコード読取方法
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024113913
(43)【公開日】2024-08-23
(54)【発明の名称】コード読取装置およびコード読取方法
(51)【国際特許分類】
   G06K 7/10 20060101AFI20240816BHJP
   G06K 7/14 20060101ALI20240816BHJP
【FI】
G06K7/10 404
G06K7/10 372
G06K7/10 436
G06K7/14 039
【審査請求】未請求
【請求項の数】17
【出願形態】OL
(21)【出願番号】P 2023019187
(22)【出願日】2023-02-10
(71)【出願人】
【識別番号】000129253
【氏名又は名称】株式会社キーエンス
(74)【代理人】
【識別番号】100105935
【弁理士】
【氏名又は名称】振角 正一
(74)【代理人】
【識別番号】100136836
【弁理士】
【氏名又は名称】大西 一正
(72)【発明者】
【氏名】大木 秀祐
(57)【要約】
【課題】距離センサ41を用いてワークWの存在を的確に検知する。
【解決手段】、距離センサ41によって計測した距離を示す現在計測距離Dcおよび過去計測距離Dp(距離情報)のみならず、距離センサ41によって計測した光量を示す現在計測光量Pcおよび過去計測光量Pp(光量情報)が、距離センサ41からコントローラ6(検知部)に取得される。そして、コントローラ6は、距離センサ41が計測した距離に関する計測距離Dc、Dpおよび距離センサ41が計測した光量に関する計測光量Pc、Ppとの両方を用いた検知ロジック(所定のルール)に基づき、視野内におけるワークWの有無を検知する。
【選択図】図9
【特許請求の範囲】
【請求項1】
読取対象のコードが付されたワークで反射された光を受光し、コード画像を生成する撮像部と、
前記撮像部で生成されたコード画像のデコードを実行するデコード実行部と、
前記撮像部の視野内に光を射出して、前記ワークで反射された光を受光して、受光した光に基づいて前記ワークまでの距離および前記ワークから反射されて到達した光量を計測する距離センサと、
前記距離センサが計測を実行した結果に基づいて前記視野内における前記ワークの有無を検知する検知部と、
前記検知部により検知された結果に基づいて、前記撮像部を駆動する制御部と、
を備え、
前記検知部は、前記距離センサが計測した距離に関する距離情報と、前記距離センサが計測した光量に関する光量情報とを取得して、前記距離情報と前記光量情報との両方を用いた所定のルールに基づき、前記視野内における前記ワークの有無を検知する、
ことを特徴とするコード読取装置。
【請求項2】
前記所定のルールは、距離に関する検知基準と、光量に関する検知基準とを含み、
前記検知部は、前記距離情報が前記距離に関する検知基準を満たさない場合であっても、前記光量情報が前記光量に関する検知基準を満たす場合には、前記視野内に前記ワークがあることを検知する、
請求項1に記載のコード読取装置。
【請求項3】
前記所定のルールは、前記光量情報が示す光量が、光量に関する閾値以上か否かの判定を含み、
前記検知部は、
前記光量情報が示す光量が前記光量に関する閾値以上の場合には、前記距離情報が示す距離が前記距離に関する検知基準を満たすか否かを判定し、
前記光量情報が示す光量が前記光量に関する閾値未満の場合には、前記光量情報が前記光量に関する検知基準を満たすか否かを判定して、前記距離情報が前記距離に関する検知基準を満たすか否かによらず、前記光量情報が前記光量に関する検知基準を満たすか否かを判定した結果に基づいて前記視野内における前記ワークの有無を検知する、
請求項2に記載のコード読取装置。
【請求項4】
前記所定のルールは、前記光量情報が示す光量が、光量に関する閾値以上か否かの判定を含み、
前記検知部は、
前記光量情報が示す光量が前記光量に関する閾値以上の場合であって、前記距離情報が示す距離が前記距離に関する検知基準を満たしていないと判定した場合には、前記光量情報が前記光量に関する検知基準を満たすか否かを判定し、前記光量に関する検知基準を満たすか否かの判定結果に基づいて前記視野内における前記ワークの有無を検知する、
請求項2に記載のコード読取装置。
【請求項5】
前記距離情報を記憶する記憶部をさらに備え、
前記検知部は、
前記距離センサによって最新に取得された前記距離情報が示す距離を前記距離センサによって過去に取得されて前記記憶部に記憶された前記距離情報が示す距離から引いた値が、前記距離に関する閾値以上である場合に、前記距離情報が前記距離に関する検知基準を満たすと判定する、
請求項2に記載のコード読取装置。
【請求項6】
前記光量情報を記憶する記憶部をさらに備え、
前記検知部は、
前記距離センサによって最新に取得された前記光量情報が示す光量を前記距離センサによって過去に取得されて前記記憶部に記憶された前記光量情報が示す光量から引いた値の絶対値が、前記光量に関する閾値以上である場合に、前記光量情報が前記光量に関する検知基準を満たすと判定する、
請求項2に記載のコード読取装置。
【請求項7】
前記距離情報を記憶する記憶部をさらに備え、
前記記憶部は、前記距離センサにより繰り返し計測された前記距離情報を記憶し、
前記検知部は、第1時刻に前記距離センサにより計測されて前記記憶部に記憶された過去の距離情報と、第1時刻より後の第2時刻に前記距離センサにより計測された最新の距離情報との差を、前記第1時刻から前記第2時刻までの経過時間で除算した微分値を算出し、前記微分値に基づいて前記視野内における前記ワークの有無を検知する、
請求項2に記載のコード読取装置。
【請求項8】
前記光量情報を記憶する記憶部をさらに備え、
前記記憶部は、前記距離センサにより繰り返し計測された前記光量情報を記憶し、
前記検知部は、第1時刻に前記距離センサにより計測されて前記記憶部に記憶された過去の光量情報と、第1時刻より後の第2時刻に前記距離センサにより計測された最新の光量情報との差を、前記第1時刻から前記第2時刻までの経過時間で除算した微分値を算出し、前記微分値に基づいて前記視野内における前記ワークの有無を検知する、
請求項2に記載のコード読取装置。
【請求項9】
前記距離情報を記憶する記憶部をさらに備え、
前記記憶部は、前記距離センサにより繰り返し計測された前記距離情報を記憶し、
前記検知部は、第1時刻に前記距離センサにより計測されて前記記憶部に記憶された過去の距離情報と、第1時刻から所定期間が経過した第2時刻に前記距離センサにより計測された最新の距離情報との差に基づいて前記視野内における前記ワークの有無を検知する、
請求項2に記載のコード読取装置。
【請求項10】
前記光量情報を記憶する記憶部をさらに備え、
前記記憶部は、前記距離センサにより繰り返し計測された前記光量情報を記憶し、
前記検知部は、第1時刻に前記距離センサにより計測されて前記記憶部に記憶された過去の光量情報と、第1時刻から所定期間が経過した第2時刻に前記距離センサにより計測された最新の光量情報との差に基づいて前記視野内における前記ワークの有無を検知する、
請求項2に記載のコード読取装置。
【請求項11】
前記距離センサは、距離および光量の計測を繰り返し実行し、
前記検知部は、前記距離センサが繰り返し実行する前記距離の計測に失敗している状態から、前記距離センサが繰り返し実行する前記距離の計測に成功した状態に遷移したと判定すると、前記視野内に前記ワークがあることを検知する、
請求項1に記載のコード読取装置。
【請求項12】
前記光量情報を記憶する記憶部をさらに備え、
前記記憶部は、前記距離センサにより繰り返し計測された前記光量情報を記憶し、
前記検知部は、
前記距離センサによって計測された最新の前記光量情報および前記距離センサによって計測されて前記記憶部に記憶された過去の前記光量情報の一方が示す光量が閾値未満の場合、最新の前記光量情報と過去の前記光量情報との間の変化量を算出し、
前記距離センサにより計測された前記距離情報によらず、前記変化量に基づいて、前記視野内の前記ワークの有無を検知する、
請求項1に記載のコード読取装置。
【請求項13】
前記ワークに向けて光を照射するための照明部をさらに備え、
前記制御部が外部からのトリガに基づいて前記照明部および前記撮像部を駆動する第1モードと、前記検知部により前記視野内にある前記ワークが検知されると前記制御部が前記照明部および前記撮像部を駆動する第2モードとを切り換えるモード切換部を、さらに備え、
前記距離センサは、
前記モード切換部により前記第1モードに切り換えられている場合には、前記外部からのトリガに基づいて距離の計測を実行し、
前記モード切換部により前記第2モードに切り換えられている場合には、光量および距離の計測を繰り返し実行する、
請求項1に記載のコード読取装置。
【請求項14】
前記撮像部は、第1カメラと、前記第1カメラよりも遠距離を撮像するための第2カメラとを含み、
前記モード切換部により前記第2モードに切り換えられている場合に、前記検知部が前記視野内にある前記ワークを検知すると、前記制御部は、前記距離センサによって計測された距離を示す前記距離情報に基づいて、前記第1カメラおよび前記第2カメラの一方のカメラを選択し、選択された前記一方のカメラにコード画像を生成させる、
請求項13に記載のコード読取装置。
【請求項15】
前記コード読取装置は、前記照明部、前記撮像部および前記距離センサを収納するヘッド部と、前記ヘッド部から延びるグリップ部とを備えた携帯型のコード読取装置であって、
前記モード切換部により前記第1モードに切り換えられている場合には、ユーザが前記グリップ部を把持することで前記コード読取装置が動作可能となり、
前記モード切換部により前記第2モードに切り換えられている場合には、前記ヘッド部または前記グリップ部が外部の支持部に固定された状態で前記コード読取装置が動作可能となる、
請求項13に記載のコード読取装置。
【請求項16】
前記ヘッド部から軸方向に延びるグリップ部と、
前記軸方向において前記ヘッド部と逆側の前記グリップ部の端部に設けられたグリップエンド部と、
前記グリップ部の前記視野側において前記グリップエンド部から前記ヘッド部に向けて延設された板状部材と、
をさらに備え、
前記グリップ部を把持するユーザの手が位置するための空間が前記板状部材と前記グリップ部との間に設けられ、
前記板状部材には、前記支持部に取り付けるための取付穴が設けられる、
請求項15に記載のコード読取装置。
【請求項17】
読取対象のコードが付されたワークで反射された光を受光し、コード画像を生成する撮像部の視野内に光を射出して、前記ワークで反射された光を受光して、受光した光に基づいて前記ワークまでの距離および前記ワークから反射されて到達した光量を距離センサにより計測する工程と、
前記距離センサが計測を実行した結果に基づいて前記視野内における前記ワークの有無を検知部により検知する工程と、
前記検知部により検知された結果に基づいて、前記撮像部を制御部により駆動する工程と、
を備え、
前記検知部は、前記距離センサが計測した距離に関する距離情報と、前記距離センサが計測した光量に関する光量情報とを取得して、前記距離情報と前記光量情報との両方を用いた所定のルールに基づき、前記視野内における前記ワークの有無を検知する、
ことを特徴とするコード読取方法。

【発明の詳細な説明】
【技術分野】
【0001】
この発明は、読取対象のコードが付されたワークに向けて光を照射してワークで反射された光を受光し、コード画像を生成することでコードを読み取る技術に関し、特にワークの有無を検知する技術に関する。
【背景技術】
【0002】
特許文献1では、スタンドに固定されたコード読取装置に読取対象となるコードが付されたワークをかざして、コードを読み取る技術が提案されている。このようにスタンドに固定したり、設置場所に設置されたりといった状態で使用される据置式のコード読取装置によってコードを読み取るにあたっては、特許文献2のように距離センサによるワークの検知をトリガにして、ワークに付されたコードの読み取りを開始するといった方法が考えられる。具体的には、距離センサから所定の基準面(例えば机の表面)までの距離を基準値として保持しておき、距離センサによって計測された距離の当該基準値からの変化量に基づきワークを検知することができる。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】US8550357
【特許文献2】US6637893
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、基準面の付近に紙媒体等の薄いワークがかざされた場合には、距離センサとワークまでの距離が基準値とほぼ変わらないために、ワークを検知できない場合があった。
【0005】
この発明は上記課題に鑑みなされたものであり、距離センサを用いてワークの存在を的確に検知可能とすることを目的とする。
【課題を解決するための手段】
【0006】
本発明に係るコード読取装置は、読取対象のコードが付されたワークで反射された光を受光し、コード画像を生成する撮像部と、撮像部で生成されたコード画像のデコードを実行するデコード実行部と、撮像部の視野内に光を射出して、ワークで反射された光を受光して、受光した光に基づいてワークまでの距離およびワークから反射されて到達した光量を計測する距離センサと、距離センサが計測を実行した結果に基づいて視野内におけるワークの有無を検知する検知部と、検知部により検知された結果に基づいて、撮像部を駆動する制御部と、を備え、検知部は、距離センサが計測した距離に関する距離情報と、距離センサが計測した光量に関する光量情報とを取得して、距離情報と光量情報との両方を用いた所定のルールに基づき、視野内におけるワークの有無を検知する。
【0007】
本発明に係るコード読取方法は、読取対象のコードが付されたワークで反射された光を受光し、コード画像を生成する撮像部の視野内に光を射出して、ワークで反射された光を受光して、受光した光に基づいてワークまでの距離およびワークから反射されて到達した光量を距離センサにより計測する工程と、距離センサが計測を実行した結果に基づいて視野内におけるワークの有無を検知部により検知する工程と、検知部により検知された結果に基づいて、撮像部を制御部により駆動する工程と、を備え、検知部は、距離センサが計測した距離に関する距離情報と、距離センサが計測した光量に関する光量情報とを取得して、距離情報と光量情報との両方を用いた所定のルールに基づき、視野内におけるワークの有無を検知する。
【発明の効果】
【0008】
このように構成された本発明では、距離センサを用いてワークの存在を的確に検知することが可能となっている。
【図面の簡単な説明】
【0009】
図1】コード読取装置の構成を模式的に示す側面図。
図2図1のコード読取装置が備える電気的構成の概略を示すブロック図。
図3】ヘッド部に設けられた拡散部材と当該拡散部材の後ろ側に設けられた照明基板とを模式的に示す正面図。
図4A】コード読取装置の具体的な外観構成の一例を示す側面図。
図4B】コード読取装置の具体的な外観構成の一例を示す斜視図。
図5】フィンガバーの構成を示す斜視図。
図6】ヘッド部に設けられたフィンガバーの装着部を示す斜視図。
図7】グリップエンド部に設けられたフィンガバーの装着部を示す斜視図。
図8】コード読取装置にかざされたワークを検知する検知モードの一例を示すフローチャート。
図9図8で実行される検知ロジックの一例を示すフローチャート。
図10A】かざし方向のバリエーションを模式的に示す図。
図10B】かざし方向のバリエーションを模式的に示す図。
図10C】かざし方向の違いに応じた距離センサの出力の時間変化の違いを模式的に示す図。
図11】検知ロジックの第2変形例を示すフローチャート。
図12A】検知モードの一例を示すフローチャート。
図12B】外部トリガモードの一例を示すフローチャート。
図13A図10Aのコード読取装置にワークがかざされた状態の一例を模式的に示す図。
図13B図10Aのコード読取装置にワークがかざされた状態の一例を模式的に示す図。
【発明を実施するための形態】
【0010】
図1はコード読取装置の構成を模式的に示す側面図であり、図2図1のコード読取装置が備える電気的構成の概略を示すブロック図である。ここでは、ワークWの表面Wfに付されたコードをコード読取装置1によって読み取るためにワークWの表面Wfにコード読取装置1が対向した状態において、コード読取装置1に対してワークW側を前側Sfとし、コード読取装置1に対してワークWの反対側を後ろ側Sbとする前後方向Dfsを適宜示す。
【0011】
図1に示すように、コード読取装置1は、ヘッド部11、グリップ部12およびグリップエンド部13を備える。グリップ部12は、ヘッド部11とグリップエンド部13との間で、前後方向Dfsに交差する軸方向Daに延設されている。換言すれば、ヘッド部11はグリップ部12の一端に対して設けられ、グリップエンド部13はグリップ部12の他端(一端の逆の端)に対して設けられる。ヘッド部11はヘッド本体111を有し、グリップ部12はグリップ本体121を有し、グリップエンド部13はグリップエンド本体131を有し、ヘッド本体111、グリップ本体121およびグリップエンド本体131は、コード読取装置1に内蔵される各部を収納するハウジング14を構成する。ユーザは。コード読取装置1のグリップ本体121を把持することで、コード読取装置1を携帯することができる。
【0012】
ヘッド部11のヘッド本体111は、前側Sfに開いた開口112を有し、開口112の後ろ側Sb(換言すれば奥側)の端には配置パネル113が設けられている。コードの読み取りの際には、開口112がワークWの表面Wfに対向するとともに、配置パネル113が開口112を介してワークWの表面Wfに対向する。また、ヘッド部11は、図2に示す照明部2、撮像部3、距離計測部4およびディスプレイSPを有する。これら照明部2、撮像部3、距離計測部4およびディスプレイSPは、ヘッド部11に収納される。特に、照明部2の一部、撮像部3および距離計測部4は、配置パネル113に設けられている。
【0013】
照明部2は、ワークWの表面Wfに照明光Liを照射し、撮像部3は、ワークWの表面Wfからの反射光Lrをカメラ31Aあるいは31Bにより撮像してコード画像Icを生成する。照明光Liは、照明部2から開口112を介してワークWの表面Wfに照射され、反射光Lrは、ワークWの表面Wfで照明光Liを反射することで生成され、反射光Lrは、ワークWの表面Wfから開口112を介して撮像部3のカメラ31Aあるいは31Bに入射する。
【0014】
照明部2は、拡散照明部27、直接照明部28および偏光照明部29を有する。拡散照明部27は光源Eを有し、光源Eから射出された光を拡散してからワークWの表面Wfに照射する。直接照明部28は光源281を有し、光源281から射出された光を拡散せずにワークWの表面Wfに直接照射する。偏光照明部29は光源291を有し、光源291から射出された光を偏光してからワークWの表面Wfに照射する。かかる照明部2の詳細は後述する。
【0015】
撮像部3は、2個のカメラ31A、31Bを有する。カメラ31A、31Bのそれぞれは視野を有し、対物レンズである集光レンズに視野内から入射してきた光を当該集光レンズにより固体撮像素子に集光して、視野内を撮像する。つまり、カメラ31A、31Bのそれぞれは、視野内に存在するワークWの表面Wfに対向する集光レンズによって反射光Lrを固体撮像素子に集光する。固体撮像素子は、集光レンズによって集光された反射光Lrを受光することで、コード画像Icを生成する。なお、カメラ31A、31Bそれぞれの光軸Ac(すなわち、カメラ31A、31Bそれぞれの集光レンズの光軸Ac)は、上述の前後方向Dfsに平行である。
【0016】
距離計測部4は、当該距離計測部4から開口112を介してワークWの表面Wfに照射した光が、ワークWの表面Wfで反射されて、開口112を介して当該距離計測部4に戻るまでの時間を計測することで、ワークWの表面Wfまでの距離を計測する。
【0017】
グリップ部12は、グリップ本体121の前側Sfに設けられたトリガスイッチ122を有する。ユーザは、グリップ本体121を手で握りながら、トリガスイッチ122を指で操作することができる。
【0018】
また、コード読取装置1は、当該コード読取装置1の各部を制御するコントローラ6と、当該コード読取装置1において使用されるデータや生成されたデータを記憶する記憶部7とを備える。コントローラ6および記憶部7は、ハウジング14内に収納される。コントローラ6はプロセッサ、すなわちCPU(Central Processing Unit)である。記憶部7はSSD(Solid
State Drive)等の記憶装置である。
【0019】
コントローラ6は、ワークWの表面Wfに照明光Liを照射する照明動作を照明部2に実行させるとともに、反射光Lrを固体撮像素子により受光してコード画像Icを生成する撮像動作を撮像部3に実行させる。さらに、コントローラ6は、撮像部3によって生成されたコード画像Icを取得して、当該コード画像Icをデコードする。こうして、照明部2による照明動作、撮像部3による撮像動作およびコントローラ6によるデコードといった一連の動作によってコード読取が実行される。例えば、コントローラ6は、ユーザによるトリガスイッチ122の操作を検知すると、コード読取を実行する。コード読取の結果、すなわちコントローラ6がコード画像Icをデコードした結果であるデコード結果Rdは、記憶部7に記憶される。
【0020】
続いては、ヘッド部11の構成、特にヘッド部11に設けられた照明部2の構成について詳述する。図3はヘッド部に設けられた拡散部材と当該拡散部材の後ろ側に設けられた照明基板とを模式的に示す正面図である。図3では、長さ方向Dlおよび幅方向Dwが示されている。ここで、長さ方向Dlおよび幅方向Dwは互いに直交するとともに、それぞれ前後方向Dfsに直交する。また、長さ方向Dlの一方側Dl1(グリップエンド部13からヘッド部11に向かう側)と、長さ方向Dlの他方側Dl2(一方側Dl1の逆側)が示され、幅方向Dwの一方側Dw1と、幅方向Dwの他方側Dw2(一方側Dw1の逆側)とが示されている。
【0021】
照明部2は、拡散部材21と、前後方向Dfsにおいて拡散部材21の後ろ側Sbに配置された照明基板25とを有する。拡散部材21は、上述のヘッド本体111の一部を構成する。なお、図3では、前後方向Dfsの前側Sfからの正面視において拡散部材21に隠れる照明基板25が破線で示されている。
【0022】
拡散部材21は、前側Sfに開いた上記の開口112を囲む壁面である開口規定部211を有する。開口規定部211は、長さ方向Dlにおいて、開口112の一方側Dl1に設けられたトップ拡散プレート212と、開口112の他方側Dl2に設けられたボトムプレート213とを有する。さらに、開口規定部211は、幅方向Dwにおいて、開口112の一方側Dl1に設けられた右拡散プレート214と、開口112の他方側Dl2に設けられた左拡散プレート215とを有する。幅方向Dwにおいてトップ拡散プレート212の両側の端部は、右拡散プレート214および左拡散プレート215に向かって他方側Dl2に屈曲する。また、長さ方向Dlにおいて、右拡散プレート214の他方側Dl2の端部は、ボトムプレート213に向かって他方側Dw2に屈曲し、左拡散プレート215の他方側Dl2の端は、ボトムプレート213に向かって一方側Dw1に屈曲する。
【0023】
トップ拡散プレート212、右拡散プレート214および左拡散プレート215は、後ろ側Sbから前側Sfへそれぞれを透過する光を拡散して、前側Sfへ射出する。具体的には、トップ拡散プレート212、右拡散プレート214および左拡散プレート215それぞれの後ろ側Sbの背面(光の入射面)にはシボ加工が施され、このシボ加工が施された背面によって光が拡散される。ただし、トップ拡散プレート212、右拡散プレート214および左拡散プレート215に光拡散機能を持たせる構成はシボ加工に限られず、例えばこれらを乳白色に加工することで光拡散機能を持たせてもよい。
【0024】
前後方向Dfsの前側Sfに向かうに連れて、カメラ31Aの集光レンズ311A(図1)の光軸Acに直交する断面における開口112の面積が広くなるように、開口112を規定する各プレート212、213、214、215は前後方向Dfsに対して傾斜するテーパー形状を有する。換言すれば、前後方向Dfs(光軸方向)の前側Sfに向かうに連れて光軸Acから離間するように各プレート212、213、214、215は前後方向Dfsに対して傾斜するテーパー形状を有する。
【0025】
照明基板25は、このようにテーパー形状を有するプレート212、213、214、215より後ろ側Sbに配置される。この照明基板25は、基板251と、基板251の前側Sfの面に配列された複数の光源Eを有する。光源Eは、例えばLED(Light Emitting Diode)であり、トップ拡散プレート212、右拡散プレート214あるいは左拡散プレート215に向けて前側Sfに光を射出する。光源Eから射出されてトップ拡散プレート212、右拡散プレート214あるいは左拡散プレート215に後ろ側Sbから入射した光は、当該拡散プレート212、214あるいは215の通過に伴って拡散されて、当該拡散プレート212、214あるいは215から前側Sfに射出される。
【0026】
つまり、照明基板25の光源Eから射出された光は、拡散プレート212、214、215において拡散部材21を通過する。この際、光源Eからの光は、拡散部材21を通過するのに伴って、拡散部材21により拡散される。こうして拡散部材21で光を拡散することで生成される拡散光は、均一な面状の照明光LiとしてワークWの表面Wfに照射される。
【0027】
このように、拡散部材21および照明基板25によって上述の拡散照明部27(図2)が構成されている。さらに、上述の通り、照明部2は、光源281からの光を拡散せずにワークWの表面Wfに向けて直接照射する直接照明部28と、光源291からの光を偏光して得られる光(P波あるいはS波)をワークWの表面Wfに向けて照射する偏光照明部29とを有する。図3に示すように、これら直接照明部28および偏光照明部29は、配置パネル113に配置されている。
【0028】
したがって、コントローラ6は、拡散照明部27の光源Eを点灯させて拡散光をワークWに照射する「拡散照明」と、直接照明部28の光源281を点灯させて光源281からの光を拡散せずにワークWに照射する「直接照明」と、偏光照明部29の光源291を点灯させて偏光された光をワークWに照射する「偏光照明」とを選択的に実行することができる。
【0029】
上述の通り、撮像部3は、2台のカメラ31A、31Bを有し、これらカメラ31A、31Bは配置パネル113に設けられている。具体的には、図3に示すように、カメラ31Aおよびカメラ31Bそれぞれの集光レンズ311A、311B(対物レンズ)が配置パネル113に嵌め込まれている。カメラ31Aは、ワークWの表面Wfからの反射光Lrを集光レンズ311Aによって固体撮像素子に集光して、当該固体撮像素子にコード画像Icを生成させる。同様に、カメラ31Bは、ワークWの表面Wfからの反射光Lrを集光レンズ311Bによって固体撮像素子に集光して、当該固体撮像素子にコード画像Icを生成させる。
【0030】
カメラ31Aの集光レンズ311Aと、カメラ31Bの集光レンズ311Bとは互いに異なる焦点距離を有し、例えば、集光レンズ311Aの焦点距離は、集光レンズ311Bの焦点距離より短い。換言すれば、カメラ31Aは、カメラ31Bよりも近い距離を撮像する近距離用カメラであり、逆にカメラ31Bは、カメラ31Aより遠い距離を撮像する遠距離用カメラである。
【0031】
また、配置パネル113には、距離計測部4が設けられている。距離計測部4は、TOF(Time of Fight)カメラである距離センサ41を有し、距離センサ41は、カメラ31A、31Bの視野に向けて光を射出する発光部42と、カメラ31A、31Bの視野から戻ってきた光を受光する受光部43とを有し、発光部42が光を射出してから受光部43が光を受光するまでの時間に基づき、カメラ31A、31Bの視野に存在する物体(ワークWを含む)までの距離を計測する。なお、距離計測部4は、視野内の全領域に存在するワークを検知するように構成しても良いし、視野内の一部領域に存在するワークのみを検知するように構成しても良い。つまり、距離計測部4の検知領域は、視野の全領域と重複するように構成しても良いし、視野の一部領域のみと重複するように構成しても良い。
【0032】
図4Aおよび図4Bはコード読取装置の具体的な外観構成の一例を示す側面図および斜視図である。上述の通り、グリップ部12のグリップ本体121は、ヘッド部11のヘッド本体111とグリップエンド部13のグリップエンド本体131との間で軸方向Daに延設されている。グリップ本体121は、ヘッド本体111から離れるに連れて後ろ側Sbに向かうように前後方向Dfsに対して傾斜する。つまり、グリップ本体121は、ヘッド本体111に対して後ろ側Sbに傾斜する。このグリップ本体121は、ヘッド本体111の後ろ側Sbの端部から延設されており、ヘッド本体111は、グリップ本体121から前側Sf(換言すれば、トリガスイッチ122側)に突出する。
【0033】
グリップエンド部13のグリップエンド本体131は、グリップ部12のグリップ本体121からトリガスイッチ122側に突出する。また、グリップ本体121の前側Sfに配置されたトリガスイッチ122は、グリップ本体121のうち、ヘッド本体111側の端部に対して設けられている。
【0034】
また、グリップエンド本体131は、底面132および前面133を有する。底面132は、軸方向Daにおいてグリップ本体121と逆側のグリップエンド本体131の端に設けられ、前面133は、底面132の前側Sfの端から軸方向Daにおいてトリガスイッチ122側(換言すれば、グリップ本体121側)に延設される。底面132は軸方向Daに交差して設けられ、底面132の前面133側の端部は、前面133に向かって屈曲するように面取りされている。また、前面133のトリガスイッチ122側の端が前面133のトリガスイッチ122と逆側の端より前側Sfに位置するように、前面133は設けられている。
【0035】
さらに、図4Bに示すように、コード読取装置1は、ハウジング14に対して着脱可能に装着されるフィンガバー15を備える。続いては、図5図6および図7を併用して、フィンガバー15の構成と、フィンガバー15をハウジング14に装着する構成とを説明する。ここで、図5はフィンガバーの構成を示す斜視図であり、図6はヘッド部に設けられたフィンガバーの装着部を示す斜視図であり、図7はグリップエンド部に設けられたフィンガバーの装着部を示す斜視図である。
【0036】
フィンガバー15は、グリップ部12より前側Sfにおいてグリップエンド部13からヘッド部11まで延設されたステイプレート16を有する。このステイプレート16は、前後方向Dfsにおいてグリップ部12から間隔を空けて設けられる。ステイプレート16の一方の端161はヘッド部11に支持され、ステイプレート16の他方(一方の逆)の端162はグリップエンド部13に支持される。具体的には、ヘッド本体111の前側Sfの端部に設けられた装着部114に、ステイプレート16の端161が着脱可能に装着され、グリップエンド本体131の前側Sfの端部に設けられた装着部134にステイプレート16の端162が着脱可能に装着される。
【0037】
図4Bに示すように、ステイプレート16の端161側の端部には、スライド爪17が内蔵されている。これに対して、ステイプレート16には、前側Sfに開いた開口163が設けられ、スライド爪17は開口163を介して前側Sfに露出する。したがって、ユーザは、開口163を介してスライド爪17を操作することができる。このスライド爪17は、ステイプレート16の端161から突出する突出位置と、ステイプレート16の端161からステイプレート16の内側に収まる収納位置との間で、ステイプレート16に対してスライド可能である。これに対して、図6に示すように、ヘッド本体111の装着部114は一対の係合孔115を有する。一対の係合孔115は、ヘッド本体111のグリップエンド本体131側の面で開いている。一対の係合孔115にグリップエンド本体131側から対向するスライド爪17は、突出位置に位置することで一対の係合孔115に係合する一方、収納位置に位置することで一対の係合孔115から離脱する。
【0038】
図5に示すように、ステイプレート16の端162には、一対の係合突起164が設けられている。これに対して、図7に示すように、グリップエンド本体131の装着部134は一対の係合孔135を有する。一対の係合孔135は、グリップエンド本体131のヘッド本体111側の面で開いている。ステイプレート16の一対の係合突起164は、グリップエンド本体131の一対の係合孔135に対して、ヘッド本体111側から係合・離脱することができる。
【0039】
また、フィンガバー15は、ステイプレート16の端161と端162との間の中腹部165から後ろ側Sb(換言すれば、グリップ本体121側)に延設されたサポートプレート18を有する。図5に示すように、サポートプレート18の後ろ側Sbの端181には、篏合孔182が設けられている。グリップ本体121の前側Sfには、支持部123が設けられており、サポートプレート18の篏合孔182はグリップ本体121の支持部123に対して前側Sfから係合・離脱することができる。この支持部123は、トリガスイッチ122よりグリップエンド本体131側に設けられている。
【0040】
したがって、ユーザは、
・ステイプレート16の端162の一対の係合突起164をグリップエンド本体131の一対の係合孔135に係合させ、
・スライド爪17を収納位置に位置させつつ、ステイプレート16の端161をヘッド本体111の一対の係合孔115に対向させるとともに、サポートプレート18の篏合孔182を支持部123に嵌合させ、
・スライド爪17を収納位置から突出位置にスライドさせる
といった手順を実行することで、フィンガバー15をコード読取装置1のハウジング14に装着することができる。
【0041】
上述の通り、ステイプレート16は、グリップ本体121から前側Sfに間隔を空けて設けられており、ステイプレート16とグリップ本体121との間には空間S1、S2が設けられる。ここで、空間S1は、サポートプレート18よりヘッド本体111側に設けられ、空間S2は、サポートプレート18よりグリップエンド本体131側に設けられている。したがって、ユーザは、例えば人差し指を空間S1に挿入しつつ中指、薬指および小指を空間S2に挿入して、グリップ部12を手で握ることができる。また、空間S1に対しては、トリガスイッチ122がグリップ本体121側から対向しており、ユーザは、空間S1に挿入した人差し指によってトリガスイッチ122を操作することができる。このフィンガバー15により、ユーザはコード読取装置1を手で携帯しつつ、コード読取装置1以外の物も併せて持ち運ぶことができるため、コード読取装置1の把持性能が向上する。
【0042】
さらに、フィンガバー15は、ステイプレート16を貫通する複数の取付孔166を有する。したがって、図10Aおよび図10Bに示す通り、取付孔166に挿入したネジを、コード読取装置1とは別に設けられたサポート台に螺合させることで、フィンガバー15を当該サポート台に締結できる。つまり、ユーザは、コード読取装置1をサポート台に固定した状態で、コード読取装置1を使用することができる。また、複数の取付孔166がステイプレート16の互いに異なる傾きを持った面にそれぞれ設けられているため、図10Aおよび図10Bのように同じサポート台でも異なる角度で固定することができる。
【0043】
ところで、コード読取装置1をサポート台に固定して使用する場合には、ユーザは読取対象となるコードが付されたワークW(例えば紙等)をコード読取装置1にかざしてコード読取装置1にコードを読み取らせるといった運用(かざし読み)を実行できる。この際、コード読取装置1のコントローラ6は、ワークWがコード読取装置1に対してかざされたことを検知して、当該ワークWに付されたコードを読み取るために、次の制御を実行する。
【0044】
図8はコード読取装置にかざされたワークを検知する検知モードの一例を示すフローチャートである。このフローチャートはコントローラ6の制御によって実行される。ステップS101では、コントローラ6は、距離センサ41によって前回にデータを計測してから所定のサンプリング周期(例えば15ms)が経過したかを判定する。そして、サンプリング周期が経過すると(ステップS101で「YES」)、コントローラ6は、距離センサ41に距離および光量の計測を実行させて、その結果を取得する(ステップS102)。
【0045】
具体的には、このステップS102では、距離センサ41は、発光部42からカメラ31A、31Bの視野(カメラ視野)に対して光を照射し、受光部43が光を受光するか否かを確認する。所定のタイムアウト期間内に受光部43が光を受光した場合には、距離センサ41は、発光部42の光の照射から受光部43の光の受光までの時間に相当する距離を、距離計測結果としてコントローラ6に出力するとともに、受光部43が受光した光量(光子量)を光量計測結果としてコントローラ6に出力する。一方、所定のタイムアウト期間が経過しても受光部43が光を受光しない場合には、距離センサ41は、距離の計測に失敗したことを示す計測失敗を、距離計測結果としてコントローラ6に出力するとともに、ゼロを光量計測結果としてコントローラ6に出力する。こうして、コントローラ6は、サンプリング周期ごとに距離計測結果および光量計測結果を距離センサ41から取得する(ステップS102)。
【0046】
さらに、コントローラ6は、サンプリング周期ごとに取得した距離計測結果および光量計測結果を、これらを取得した時刻と対応付けて記憶部7に保存する(ステップS103)。つまり、過去に計測された距離計測結果および光量計測結果がこれらの計測時刻とともに記憶部7に蓄積される。
【0047】
ステップS104では、コントローラ6は、図9を用いて後述する検知ロジックを実行する。この検知ロジックは、ステップS102での計測結果に基づき、視野内におけるワークWを検知する。ステップS105では、ステップS104でワークWの検知に成功したか否かを判定する。ワークWの検知に成功した場合(ステップS105で「YES」の場合)には、コントローラ6はコード読取を実行する(ステップS106)。すなわち、上述の通り、照明部2による照明動作、撮像部3による撮像動作およびコントローラ6によるデコードといった一連の動作(コード読取)が実行される。一方、ワークWの検知に失敗した場合(ステップS105で「NO」の場合)には、ステップS101に戻る。また、ステップS106でコード読取の実行後、検知モード終了の通知を受信していれば終了し、受信していなければ、最初のステップS101に戻る。
【0048】
図9図8で実行される検知ロジックの一例を示すフローチャートである。このフローチャートはコントローラ6の制御によって実行される。ステップS201は、ステップS102が実行される度に実行される。このステップS201では、コントローラ6は、最新に実行されたステップS102で距離センサ41が計測した距離計測結果(現在計測距離Dc)が計測失敗を示すか否かを判定する。現在計測距離Dcが計測失敗を示す場合(ステップS201で「YES」の場合)には、コントローラ6はワークWの検知に失敗したと判定する(ステップS208)。
【0049】
一方、現在計測距離Dcが計測成功を示す、換言すれば有限の距離を示す場合(ステップS201で「NO」の場合)には、コントローラ6は、現在計測距離Dcの計測時刻より所定期間だけ過去に計測された距離計測結果(過去計測距離Dp)を記憶部7から読み出して、過去計測距離Dpが計測失敗を示すか否かを判定する。この所定期間は、例えば300~500msなどのサンプリング周期より長い期間である。過去計測距離Dpが計測失敗を示す場合(ステップS202で「YES」の場合)には、コントローラ6はワークWの検知に成功したと判定する(ステップS207)。つまり、過去にワークWまでの距離の計測に失敗する一方、現在にワークWまでの距離の計測に成功したことから、過去から現在までの間にカメラ視野にワークWがかざされたと判定できる。
【0050】
過去計測距離Dpが計測成功を示す場合(ステップS202で「NO」の場合)には、コントローラ6はステップS203を実行する。このステップS203では、コントローラ6は、最新に実行されたステップS102で距離センサ41が計測した光量計測結果(現在計測光量Pc)を取得するとともに、現在計測光量Pcの計測時刻より所定期間だけ過去に計測された光量計測結果(過去計測光量Pp)を記憶部7から読み出す。そして、コントローラ6は、現在計測光量Pcが光量閾値Pth以上であって、且つ、過去計測光量Ppが光量閾値Pth以上であるといった第1光量条件が満たされるか否かを判定する(ステップS203)。
【0051】
ステップS203の第1光量条件が満たされる場合(ステップS203で「YES」の場合)には、コントローラ6は、過去計測距離Dpから現在計測距離Dcを減算した距離変動量が距離変動閾値Dfth以上であるという距離変動条件が満たされるか否かを判定する(ステップS204)。距離変動条件が満たされる場合(ステップS204で「YES」の場合)には、コントローラ6はワークWの検知に成功したと判定する(ステップS207)。つまり、ステップS203の第1光量条件が満たされることから、過去計測光量Ppおよび現在計測光量Pcはいずれも十分な光量であると判定できる。したがって、過去計測光量Ppと同時に計測された過去計測距離Dpと、現在計測光量Pcと同時に計測された現在計測距離Dcとは、いずれも信頼性が高いと判定できる。よって、過去計測距離Dpから現在計測距離Dcを減算した値が大きく、換言すればカメラ視野内の物体がコード読取装置1に近づいたと判定できる場合(ステップS204で「YES」の場合)には、過去から現在までの間にカメラ視野にワークWがかざされたと判定できる。
【0052】
ステップS204の距離変動条件が満たされない場合(ステップS204で「NO」の場合)には、コントローラ6は、過去計測光量Ppと現在計測光量Pcとの差の絶対値が光量変動閾値Pfth以上であるという光量変動条件が満たされるか否かを判定する(ステップS206)。光量変動条件が満たされる場合(ステップS206で「YES」の場合)には、コントローラ6はワークWの検知に成功したと判定する(ステップS207)。つまり、ステップS203の第1光量条件が満たされることから、過去計測光量Ppおよび現在計測光量Pcはいずれも十分な光量であると判定できる。したがって、これら過去計測光量Ppおよび現在計測光量Pcは、いずれも信頼性が高いと判定できる。よって、過去計測光量Ppと現在計測光量Pcとの変動量が大きい場合(ステップS206で「YES」の場合)には、過去から現在までの間にカメラ視野にワークWがかざされたと判定できる。一方、光量変動条件が満たされない場合(ステップS206で「NO」の場合)には、コントローラ6はワークWの検知に失敗したと判定する(ステップS208)。
【0053】
また、ステップS203の第1光量条件が満たされない場合(ステップS203で「NO」の場合)には、コントローラ6は、現在計測光量Pcが光量閾値Pth未満であって、且つ、過去計測光量Ppが光量閾値Pth未満であるといった第2光量条件が満たされるか否かを判定する(ステップS205)。第2光量条件が満たされる場合(ステップS205で「YES」の場合)には、コントローラ6はワークWの検知に失敗したと判定する(ステップS208)。
【0054】
一方、第2光量条件が満たされない場合(ステップS205で「NO」の場合)には、上述と同様にステップS206が実行される。つまり、第2光量条件が満たされない場合には、現在計測光量Pcおよび過去計測光量Ppのうち、一方が光量閾値Pth以上であり、他方が光量閾値Pth未満である。したがって、現在から過去までの間にカメラ視野にワークWがかざされたために、計測される光量が大きく変動したと可能性がある。具体的には、光を反射するワークWがカメラ視野内にかざされた場合には、現在計測光量Pcが光量閾値Pth以上となる一方、光を吸収するワークWがカメラ視野内にかざされた場合には、現在計測光量Pcが光量閾値Pth未満となる。そこで、ステップS206を実行してから、最終的にワークWの検知成功(ステップS207)あるいはワークWの検知失敗(ステップS208)を判定することとしている。
【0055】
以上に説明する実施形態では、距離センサ41によって計測した距離を示す現在計測距離Dcおよび過去計測距離Dp(距離情報)のみならず、距離センサ41によって計測した光量を示す現在計測光量Pcおよび過去計測光量Pp(光量情報)が、距離センサ41からコントローラ6(検知部)に取得される。そして、コントローラ6は、距離センサ41が計測した距離に関する計測距離Dc、Dpおよび距離センサ41が計測した光量に関する計測光量Pc、Ppを取得して、計測距離Dc、Dpと計測光量Pc、Ppとの両方を用いた図9の検知ロジック(所定のルール)とに基づき、視野内におけるワークWの有無を検知する。その結果、距離センサ41を用いてワークWの存在を的確に検知することが可能となる。
【0056】
また、検知ロジックは、距離に関する検知基準(ステップS204)と、光量に関する検知基準(ステップS206)とを含む。そして、コントローラ6は、計測距離Dc、Dpが距離に関する検知基準を満たさない場合(ステップS204で「NO」の場合)であっても、計測光量Pc、Ppが光量に関する検知基準を満たす場合(ステップS206で「YES」の場合)には、視野内にワークWがあることを検知する(ステップS207)。かかる構成では、カメラ31A、31Bの視野内にワークWが入ってきた際に、距離に関する検知基準(ステップS204)が満たされない場合であっても、光量に関する検知基準(ステップS206)が満たされていれば、ワークWの存在を検知することができる。
【0057】
また、検知ロジックは、計測光量Pc、Ppが光量閾値Pth以上か否かの判定を含む(ステップS203)。そして、コントローラ6は、計測光量Pc、Ppが光量閾値Pth以上の場合(ステップS203で「YES」の場合)には、計測距離Dc、Dpが距離に関する検知基準(ステップS204)を満たすか否かを判定する。一方、コントローラ6は、計測光量Pc、Ppの少なくとも一方が光量閾値Pth未満の場合(ステップS203で「NO」の場合)には、計測光量Pc、Ppが光量に関する検知基準(ステップS206)を満たすか否かを判定して、計測距離Dc、Dpが距離に関する検知基準(ステップS204)を満たすか否かによらず、計測光量Pc、Ppが光量に関する検知基準(ステップS206)を満たすか否かを判定した結果に基づいて視野内におけるワークの有無を検知する。かかる構成では、計測光量Pc、Ppが光量閾値Pth以上である場合には、計測距離Dc、Dpの信頼度が高いため、計測距離Dc、Dpに基づきワークWを的確に検知できる。また、計測光量Pc、Ppが光量閾値Pth未満である場合には、計測距離Dc、Dpの信頼度が低いため、計測距離Dc、Dpではなく計測光量Pc、Ppに基づきワークWを検知する。この際、計測光量Pc、Ppの一方が少なくても、計測光量Pc、Ppの間の変化が大きいことに基づき、ワークWを的確に検知できる。
【0058】
また、検知ロジックは、計測光量Pc、Ppが光量閾値Pth以上か否かの判定を含む(ステップS203)。そして、コントローラ6は、計測光量Pc、Ppが光量閾値Pth以上の場合であって、計測距離Dc、Dpが距離に関する検知基準(ステップS204)を満たしていないと判定した場合(ステップS204で「NO」の場合)には、計測光量Pc、Ppが光量に関する検知基準(ステップS206)を満たすか否かを判定する。その上で、コントローラ6は、光量に関する検知基準を満たすか否かの判定結果(ステップS206の結果)に基づいて視野内におけるワークWの有無を検知する。かかる構成では、サポート台が載置されたデスクの表面(基準面)の付近に薄いワークが入ってきた場合であっても、計測光量Pc、Ppの間の変化によってワークWを的確に検知できる。
【0059】
また、過去計測距離Dpが記憶部7に記憶される。そして、コントローラ6は、距離センサ41によって最新に取得された現在計測距離Dcを、距離センサ41によって過去に取得されて記憶部7に記憶された過去計測距離Dpから引いた値が、距離変動閾値Dfth以上である場合に、計測距離Dc、Dpが距離に関する検知基準を満たすと判定する(ステップS204で「YES」)。かかる構成では、過去と最新の計測距離Dp、Dcの変化に基づき、視野内にワークWが入ってきたことを的確に検知できる。
【0060】
また、過去計測光量Ppが記憶部7に記憶される。そして、コントローラ6は、距離センサ41によって最新に取得された現在計測光量Pcを、距離センサ41によって過去に取得されて記憶部7に記憶された過去計測光量Ppから引いた値の絶対値が、光量変動閾値Pfth以上である場合に、計測光量Pc、Ppが光量に関する検知基準を満たすと判定する(ステップS206で「YES」)。かかる構成では、過去と最新の計測光量Pp、Pcの変化に基づき、視野内にワークWが入ってきたことを的確に検知できる。
【0061】
ところで、かざし読みの場合には、ワークWがコード読取装置1にかざされる方向は種々想定される。図10Aはかざし方向のバリエーションを模式的に示す図であり、図10Cはかざし方向の違いに応じた距離センサの出力の時間変化の違いを模式的に示す図である。図10Aでは、かざし読みに使用されるコード読取装置1を支持するサポート台が載置される基準面Refが示されている。
【0062】
図10Aに示すように、ユーザが前後方向Dfsに垂直なかざし方向Mhに移動させるワークWを距離センサ41によって検知する場合には、図10Cの「かざし方向Mh」の欄に示すように距離センサ41の出力が変化する。つまり、ワークWが距離センサ41に対してかざされる前には、距離センサ41が計測する距離は、距離センサ41から基準面Refまでの距離である基準面距離となる。一方、ワークWが距離センサ41に対してかざされた瞬間に、距離センサ41が計測する距離が基準面距離からワーク距離に急峻に変化する。ここで、ワーク距離は距離センサ41からワークWまでの距離である。一方、図10Aに示すように、ユーザが前後方向Dfsに平行なかざし方向Mvに移動させるワークWを距離センサ41によって検知する場合には、ワークWが距離センサ41に対して緩やかに近づいてくる。そのため、図10Cの「かざし方向Mv」の欄に示すように、距離センサ41が計測する距離は、基準面距離からワーク距離に緩やかに変化する。
【0063】
前者のような急峻な変化は検知しやすい一方、後者のような緩やかな変化は検知が難しい。そのため、ユーザがワークWをかざし方向Mvからかざすような場合には、ワークWを的確に検知できない恐れがある。これに対して、上記の実施形態では、後者のようなかざし方であっても、ワークWを的確に検知することができる。
【0064】
つまり、過去計測距離Dpが記憶部7に記憶される。この記憶部7は、距離センサ41により繰り返し計測された過去計測距離Dpを記憶する。これに対して、図10Cの「かざし方向Mv」の欄に例示するように、コントローラ6は、過去の時刻Tp(第1時刻)に距離センサ41により計測されて記憶部7に記憶された過去計測距離Dpと、過去の時刻Tpから所定期間が経過した現在時刻Tc(第2時刻)に距離センサ41により計測された最新の現在計測距離Dcとの差に基づいて視野内におけるワークWの有無を検知する(ステップS204)。かかる構成では、距離センサ41が光を射出する方向(前後方向Dfs)からワークWがかざされる場合のように、時間に対する計測距離の変化が緩やかな場合であっても、ワークWを的確に検知できる。
【0065】
また、過去計測光量Ppが記憶部7に記憶される。この記憶部7は、距離センサ41により繰り返し計測された過去計測光量Ppを記憶する。これに対して、コントローラ6は、過去の時刻Tp(第1時刻)に距離センサ41により計測されて記憶部7に記憶された過去計測光量Ppと、過去の時刻Tpから所定期間が経過した現在時刻Tc(第2時刻)に距離センサ41により計測された最新の現在計測光量Pcとの差に基づいて視野内におけるワークWの有無を検知する(ステップS206)。かかる構成では、距離センサ41が光を射出する方向(前後方向Dfs)からワークWがかざされる場合のように、時間に対する計測光量の変化が緩やかな場合であっても、ワークWを的確に検知できる。
【0066】
また、距離センサ41は、距離および光量の計測を繰り返し実行する。これに対して、コントローラ6は、距離センサ41が繰り返し実行する距離の計測に失敗している状態から、距離センサ41が繰り返し実行する距離の計測に成功した状態に遷移したと判定すると(ステップS202で「YES」)、視野内にワークWがあることを検知する(ステップS207)。かかる構成では、距離センサ41から見たワークWの背景が距離センサ41によって距離を計測できない状況(例えば、背景となる基準面Refが黒色である状況)や、距離センサ41によって計測可能な距離よりワークWが距離センサ41から離れている状況から変化があれば、距離センサ41による距離の計測が失敗する状態から成功する状態に遷移し、視野内のワークWを検知できる。そのため、コード読取装置1の設置環境の自由度が向上する。
【0067】
また、過去計測光量Ppが記憶部7に記憶される。この記憶部7は、距離センサ41により繰り返し計測された過去計測光量Ppを記憶する。これに対して、コントローラ6は、距離センサ41によって計測された現在計測光量Pcおよび距離センサ41によって計測されて記憶部7に記憶された過去計測光量Ppの一方が光量閾値Pth未満の場合(ステップS205で「NO」の場合)、現在計測光量Pcと過去計測光量Ppとの間の変化量を算出し、距離センサ41により計測された計測距離Dc、Dpによらず、光量の変化量に基づいて、視野内のワークWの有無を検知する。つまり、現在計測光量Pcおよび過去計測光量Ppの一方が小さい場合には、当該一方の光量と同時に取得された現在計測距離Dcあるいは過去計測距離Dpの信頼度が低い一方で、周囲環境が変化した可能性が高い。したがって、現在計測光量Pcおよび過去計測光量Ppの一方が閾値未満の場合には、現在と過去の距離情報Dc、Dpが示す距離の変化を使用せずに、現在と過去の光量情報Pc、Ppが示す光量の変化に基づき、ワークWを的確に検知できる。
【0068】
以上に説明するように本実施形態では、コード読取装置1が本発明の「コード読取装置」の一例に相当し、ワークWが本発明の「ワーク」の一例に相当し、照明部2が本発明の「照明部」の一例に相当し、撮像部3が本発明の「撮像部」の一例に相当し、コントローラ6が本発明の「デコード実行部」の一例に相当し、距離センサ41が本発明の「距離センサ」の一例に相当し、コントローラ6が本発明の「検知部」の一例に相当し、コントローラ6が本発明の「制御部」の一例に相当し、検知ロジックが本発明の「所定のルール」の一例に相当し、記憶部7が本発明の「記憶部」の一例に相当する。
【0069】
なお、本発明は上記実施形態に限定されるものではなく、その趣旨を逸脱しない限りにおいて上述したものに対して種々の変更を加えることが可能である。例えば、図9の検知ロジックの内容を次に例示するように適宜変更してもよい。
【0070】
検知ロジックの第1変形例では、ステップS204の検知基準が上記の例と異なる、つまり、ステップS204において、コントローラ6は、過去の時刻Tp(第1時刻)に距離センサ41により計測されて記憶部7に記憶された過去計測距離Dpと、時刻Tpより後の時刻Tc(第2時刻)に距離センサ41により計測されて記憶部7に記憶された現在計測距離Dcとの差を、時刻Tpから時刻Tcまでの経過時間で除算した微分値を算出する。そして、コントローラ6は、この微分値が所定の閾値以上の場合は、ステップS204で「YES」と判定し、この微分値が所定の閾値未満の場合はステップS204で「NO」と判定する。かかる構成では、現在と過去との間の計測距離Dp、Dcの変化を微分値として算出して、この微分値に基づき視野内にワークWが入ってきたことを的確に検知できる。また、比較対象として無意味なほどに取得から時間が経過した過去の値に基づき求めた微分値は小さくなるため、このような過去の値に基づきワークWの検知が実行されるのを抑止できる。
【0071】
図11は検知ロジックの第2変形例を示すフローチャートである。ここでは、図9の例との差異点を中心に説明することとし、共通点については相当符号を付して適宜説明を省略する。この第2変形例では、コントローラ6は、ステップS202において、過去計測距離Dpが計測成功を示すと判定すると(ステップS202で「NO」)、図9のステップS203を実行せずにステップS204を実行する。ステップS204では、コントローラ6は、過去計測距離Dpから現在計測距離Dcを減算した距離変動量が距離変動閾値Dfth以上であるという距離変動条件が満たされるか否かを判定する。距離変動条件が満たされる場合(ステップS204で「YES」の場合)には、コントローラ6はワークWの検知に成功したと判定する(ステップS207)。
【0072】
一方、距離変動条件が満たされない場合(ステップS204で「NO」の場合)には、コントローラ6は、ステップS206を実行する。ステップS206では、コントローラ6、過去計測光量Ppと現在計測光量Pcとの差の絶対値が光量変動閾値Pfth以上であるという光量変動条件が満たされるか否かを判定する。光量変動条件が満たされる場合(ステップS206で「YES」の場合)には、コントローラ6はワークWの検知に成功したと判定する(ステップS207)。一方、光量変動条件が満たされない場合(ステップS206で「NO」の場合)には、コントローラ6はワークWの検知に失敗したと判定する(ステップS208)。
【0073】
また、ユーザは例えばディスプレイSPに対して操作を実行することで、検知モードおよび外部トリガモードのいずれを実行するかをコントローラ6に対して設定できる。
【0074】
図12Aは検知モードの一例を示すフローチャートである。図12Aの検知モードでは、図8の検知モードと同様にしてステップS101~S105が実行される。また、ワークWの検知に成功すると(ステップS105で「YES」)、コントローラ6は、距離センサ41によって計測された現在計測距離Dcに基づき、カメラ31A、31Bうちの一方のカメラを選択する。つまり、上述の通り、カメラ31A、31Bとは焦点距離が異なるため、現在計測距離Dcに位置するワークWを撮像するのに適した一方が選択される(ステップS107)。そして、コントローラ6は、ステップS107で選択された一方のカメラを用いてコード読取を実行する(ステップS106)。また、ステップS106でコード読取の実行後、検知モード終了の通知を受信していれば終了し、受信していなければ、最初のステップS101に戻る。
【0075】
一方、外部トリガモードが設定されている場合(ステップS301で「NO」の場合)には、コントローラ6は13Bの外部トリガモードを実行する(ステップS303)。図12Bは外部トリガモードの一例を示すフローチャートである。ステップS401では、コントローラ6は、有線あるいは無線で通信を実行する外部装置からトリガを受信したかを判定する。外部装置からトリガを受信すると(ステップS401で「YES」)、コントローラ6は、距離センサ41によって現在計測距離Dcを計測する(ステップS402)。そして、コントローラ6は、距離センサ41によって計測された現在計測距離Dcに基づき、カメラ31A、31Bうちの一方のカメラを選択する(ステップS403)。そして、コントローラ6は、ステップS107で選択された一方のカメラを用いてコード読取を実行する(ステップS404)。また、ステップS404でコード読取の実行後、外部トリガモード終了の通知を受信していれば終了し、受信していなければ、最初のステップS401に戻る。
【0076】
なお、外部トリガモードのステップS401でコントローラ6にトリガを与える主体は、外部装置に限られず、トリガスイッチ122を操作するユーザであってもよい。この場合、コントローラ6は、ステップS401において、ユーザによるトリガスイッチ122の操作(外部トリガ)を確認する。
【0077】
このように、外部からのトリガに基づいて照明部2および撮像部3を駆動してコード読取を実行する外部トリガモード(第1モード)と、距離センサ41により視野内にあるワークWが検知されると照明部2および撮像部3を駆動してコード読取を実行する検知モード(第2モード)とを切り換えて、コントローラ6(モード切換部)は実行する。また、距離センサ41は、外部トリガモードに切り換えられてる場合には、外部からのトリガに基づいて距離の計測を実行し(ステップS402)、検知モードに切り換えられている場合には、光量および距離の計測を繰り返し実行する(ステップS102)。かかる構成では、外部からのトリガに基づいて照明・撮像を行う外部トリガモードと、外部からのトリガによらずに距離センサ41によるワークWの検知をトリガとして照明・撮像を行う検知モードとを実行できるため、ユーザの使用シーンに合わせた柔軟な使い方が可能となる。また、距離センサ41で繰り返し計測することで、視野内にワークWが入ったことを距離計測部4により自動的に検知できる。
【0078】
また、撮像部3は、カメラ31A(第1カメラ)と、カメラ31Aよりも遠距離を撮像するためのカメラ31B(第2カメラ)とを含む。そして、コントローラ6により検知モードに切り換えられている場合に、コントローラ6が距離センサ41によって視野内にあるワークWを検知すると、コントローラ6は、距離センサ41によって計測された現在計測距離Dcに基づいて、カメラ31Aおよびカメラ31Bの一方のカメラを選択し(ステップS107)、選択された一方のカメラにコード画像Icを生成させる(ステップS106)。かかる構成では、距離に応じた最適なカメラで撮像を実行できるため、ワークWをかざしてコードを読むかざし読みを実行可能な範囲が広がり、コード読取装置1の設置自由度が向上する。
【0079】
図13Aは、図10Aのコード読取装置1にワークがかざされた状態の一例を模式的に示す図であり、図10Aのような基準面Refは存在しない状況である。コード読取装置1がサポート台に取付孔166を介して固定された状態において、ワークがかざされない場合には、距離センサ41による距離の計測は失敗する(ステップS201)。このコード読取装置1にワークWがかざされると、距離センサ41は、ワーク表面Wfまでの距離L1を計測できようになるため、ワーク検知成功となる(ステップS202)。
【0080】
図13Bは、図10Aのコード読取装置にワークがかざされた状態の一例を模式的に示す図である。コード読取装置1がサポート台に取付孔166を介して固定された状態において、距離センサ41は、基準面Refまでの距離L2を計測する。この状態で、基準面Refに沿って薄いワークWがかざされると、距離センサ41は、ワークまでの距離L3を計測する。このとき、L2とL3の差分がステップS204の閾値Dfth未満であった場合、距離だけで判定する従来の手法ではワークWを検知でないが、本実施形態に係るコード読取装置1であれば、ワークWがかざされる前に計測された光量(基準面Refで反射された光の光量)と、ワークWがかされているときに計測された光量(表面Wfで反射された光の光量)との差分の絶対値が、ステップS206の閾値Pfth以上であればワークを検知することができる(ステップS207)。
【0081】
また、コード読取装置1は、照明部2、撮像部3および距離センサ41を収納するヘッド部11と、ヘッド部11から延びるグリップ部12とを備えた携帯型のコード読取装置1である。そして、コントローラ6により外部トリガモードに切り換えられている場合には、ユーザがグリップ部12を把持することでコード読取装置1が動作可能となる。一方、コントローラ6により検知モードに切り換えられている場合には、ヘッド部11またはグリップエンド部13がフィンガバー15を介して外部のサポート台に固定された状態でコード読取装置1が動作可能となる。かかる構成では、ユーザの使用シーンに合わせた柔軟な使い方(グリップ部12の把持、サポート台への固定)が可能となる。なお、フィンガバー15は、グリップエンド部13からヘッド部11まで延設される必要はなく、例えばグリップエンド部13から途中の位置(中腹部165)までの範囲に限定してフィンガバー15を設けてもよい。
【0082】
また、ヘッド部11から軸方向Daに延びるグリップ部12と、軸方向Daにおいてヘッド部11と逆側のグリップ部12の端部に設けられたグリップエンド部13と、グリップ部12の前側Sf(視野側)においてグリップエンド部13からヘッド部11に向けて延設されたフィンガバー15(板状部材)が具備されている。そして、グリップ部12を把持するユーザの手が位置するための空間S1、S2がフィンガバー15とグリップ部12との間に設けられ、フィンガバー15には、サポート台に取り付けるための取付孔166が設けられている。かかる構成では、フィンガバー15により外部のサポート台にコード読取装置1を取り付けた状態でかざし読みができる。また、フィンガバー15によってユーザの把持のしやすさが向上する。
【産業上の利用可能性】
【0083】
この発明は、読取対象のコードが付されたワークに向けて光を照射してワークで反射された光を受光し、コード画像を生成することでコードを読み取る技術に関し、特にワークの有無を検知する技術全般に適用可能である。
【符号の説明】
【0084】
1…コード読取装置
W…ワーク
2…照明部
3…撮像部
6…コントローラ(デコード実行部、検知部、制御部)
41…距離センサ
7…記憶部

図1
図2
図3
図4A
図4B
図5
図6
図7
図8
図9
図10A
図10B
図10C
図11
図12A
図12B
図13A
図13B