特許第5786783号(P5786783)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ 株式会社デンソーウェーブの特許一覧

<>
  • 特許5786783-情報コード読取装置 図000002
  • 特許5786783-情報コード読取装置 図000003
  • 特許5786783-情報コード読取装置 図000004
  • 特許5786783-情報コード読取装置 図000005
  • 特許5786783-情報コード読取装置 図000006
  • 特許5786783-情報コード読取装置 図000007
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5786783
(24)【登録日】2015年8月7日
(45)【発行日】2015年9月30日
(54)【発明の名称】情報コード読取装置
(51)【国際特許分類】
   G06K 7/10 20060101AFI20150910BHJP
   G06K 7/14 20060101ALI20150910BHJP
【FI】
   G06K7/10 392
   G06K7/10 372
   G06K7/14 091
【請求項の数】5
【全頁数】15
(21)【出願番号】特願2012-74508(P2012-74508)
(22)【出願日】2012年3月28日
(65)【公開番号】特開2013-206128(P2013-206128A)
(43)【公開日】2013年10月7日
【審査請求日】2014年8月7日
(73)【特許権者】
【識別番号】501428545
【氏名又は名称】株式会社デンソーウェーブ
(74)【代理人】
【識別番号】100095795
【弁理士】
【氏名又は名称】田下 明人
(72)【発明者】
【氏名】矢野 光一
【審査官】 甲斐 哲雄
(56)【参考文献】
【文献】 特開平06−162247(JP,A)
【文献】 特開2007−048044(JP,A)
【文献】 特開平07−129708(JP,A)
【文献】 特開平07−141458(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06K 7/00−7/14
(57)【特許請求の範囲】
【請求項1】
明色部と暗色部とが所定方向に並ぶコード要素が複数段に配列されてなる多段コードを読み取る情報コード読取装置であって、
受光素子が所定の長手方向にライン状に配列されてなるラインセンサと、
各コード要素が前記ラインセンサにて撮像されたときに、当該ラインセンサで得られた各コード要素の撮像結果に基づいて各コード要素を解読する解読手段と、
いずれか一のコード要素が撮像されたときの前記解読手段による当該一のコード要素の解読結果と、前記一のコード要素の後に撮像された他のコード要素の撮像内容とに基づき、前記一のコード要素の後に続くコード要素の読み飛ばしが発生したか否かを判断する判断手段と、
前記判断手段によって前記読み飛ばしが発生したと判断された場合に報知を行う報知手段と、
を有し、
前記判断手段は、
前記一のコード要素を構成する前記明色部及び前記暗色部に基づいて単位モジュール幅を検出する単位モジュール幅検出手段を備え、
前記一のコード要素の読み取りが成功した後、所定時間以上読み取りが成功しない場合に、その読取不成功時又は読取不成功後に得られた前記他のコード要素の撮像画像において、前記単位モジュール幅を一単位とする所定種類のモジュール画像が存在するか否かを判断し、前記所定種類のモジュール画像が存在する場合に前記読み飛ばしが発生したと判断することを特徴とする情報コード読取装置。
【請求項2】
前記多段コードは、複数段設けられる各コード要素のそれぞれに予め定められた特徴パターンが含まれたものであり、
前記判断手段は、前記一のコード要素の読み取りが成功した後、所定時間以上読み取りが成功しない場合に、その読取不成功時又は読取不成功後に得られた前記他のコード要素の撮像画像において、前記特徴パターンが存在するか否かを判断し、前記特徴パターンが存在する場合に前記読み飛ばしが発生したと判断することを特徴とする請求項1に記載の情報コード読取装置。
【請求項3】
前記多段コードは、複数段設けられる各コード要素のそれぞれに予め定められた特徴パターンが含まれ、且つ、各段と前記特徴パターンの構成とが予め対応付けられたものであり、
前記判断手段は、前記一のコード要素を構成する前記明色部及び前記暗色部に基づいて当該一のコード要素に含まれる前記特徴パターンを抽出し、且つ前記他のコード要素を構成する前記明色部及び前記暗色部に基づいて、前記他のコード要素に含まれる前記特徴パターンを抽出し、前記一のコード要素の前記特徴パターンと前記他のコード要素の前記特徴パターンとが規定の組み合わせでない場合に前記読み飛ばしが発生したと判断することを特徴とする請求項1又は2に記載の情報コード読取装置。
【請求項4】
前記ラインセンサによって前記コード要素が撮像されたときに、その撮像された当該コード要素の解読が既に成功しているか否かを判断する解読成功判断手段と、
前記ラインセンサによって撮像された前記コード要素が前記解読成功判断手段によって解読成功済みと判断される間、所定の通知処理を行う通知手段と、
を備えたことを特徴とする請求項1から請求項3のいずれか一項に記載の情報コード読取装置。
【請求項5】
前記ラインセンサによる撮像画像が、前記解読成功判断手段によって解読成功済みと判断された前記コード要素から変化したか否かを判断する画像変化判断手段を備え、
前記通知手段は、前記画像変化判断手段によって前記解読成功済みの前記コード要素から変化したと判断された場合に、前記所定の通知処理での通知態様とは異なる他の通知態様で通知を行うことを特徴とする請求項に記載の情報コード読取装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報コード読取装置に関するものである。
【背景技術】
【0002】
現在、情報コードの種類は極めて多様化しており、GS1データバーなどの特定種類の情報コードでは、バーコードが複数段に重ねられて一体的に表示されるスタック型のタイプなども提供されている。この種の多段コードを読取装置によって読み取る場合、各段を構成する各要素(コード要素)を、段毎に解読すると共に解読結果を統合することで最終的に多段コード全体の記録内容を取得することができる。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2005−18579公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、多段コードに関するものではないが、関連技術として特許文献1のようなものが提供されている。この技術では、複数個の部分情報コードを含む画像データを取り込み、取り込まれた画像データに含まれる部分情報コードを一括して撮像し、一括して解読しており、読取、解読時間の短縮化を図っている。しかしながら、このような方式(複数のコードを一括して読み取る方式)を実現しようとした場合、受光領域が広い受光センサを用いなければならず、センサ構造の大型化が避けられなくなる。
【0005】
一方、センサ構造の大型化を避け、簡素なセンサによって上記多段コードを読み取る方法としては、例えば受光センサをラインセンサによって構成し、各段を構成する各要素(コード要素)をラインセンサによって順番に撮像し、段毎に順番に解読すればよい。この方式によれば、センサを大型化せずとも各コード要素の記録内容を取得することができ、多段コード全体としてのデコード結果を得ることができる。
【0006】
しかしながら、上記のように各コード要素をラインセンサによって撮像し、段毎に解読を行う場合、各コード要素が確実に解読できればそれほど問題はないが、例えば読み取り作業に際し使用者による読取装置の操作速度(移動速度)が速すぎる場合や、いずれかのコード要素の撮像環境が悪い場合には、一部のコード要素が撮像されなかったり不鮮明に撮像されてしまうことがあり、この場合、途中のコード要素が解読できずに読み飛ばされてしまうことになる。このようにコード要素の読み飛ばしが生じると最終的にはデコード失敗となってしまうが、使用者はどの段の読み取りが失敗しているかを把握できないため、結局のところ最初の段から再度読み取り操作を行わなければならなくなり、解読処理の大幅な遅延を招いてしまう。
【0007】
本発明は、上述した課題を解決するためになされたものであり、明色部及び暗色部が所定方向に配列されてなるコード要素が複数段に重ねられてなる多段コードを読み取り可能な情報コード読取装置において、読み飛ばしに起因する解読遅延を効果的に抑制しうる構成をより簡易に提供することを目的とする。
【課題を解決するための手段】
【0008】
第1の発明は、明色部と暗色部とが所定方向に並ぶコード要素が複数段に配列されてなる多段コードを読み取る情報コード読取装置であって、
受光素子が所定の長手方向にライン状に配列されてなるラインセンサと、
各コード要素が前記ラインセンサにて撮像されたときに、当該ラインセンサで得られた各コード要素の撮像結果に基づいて各コード要素を解読する解読手段と、
いずれか一のコード要素が撮像されたときの前記解読手段による当該一のコード要素の解読結果と、前記一のコード要素の後に撮像された他のコード要素の撮像内容とに基づき、前記一のコード要素の後に続くコード要素の読み飛ばしが発生したか否かを判断する判断手段と、
前記判断手段によって前記読み飛ばしが発生したと判断された場合に報知を行う報知手段と、
を有し、
前記判断手段は、
前記一のコード要素を構成する前記明色部及び前記暗色部に基づいて単位モジュール幅を検出する単位モジュール幅検出手段を備え、
前記一のコード要素の読み取りが成功した後、所定時間以上読み取りが成功しない場合に、その読取不成功時又は読取不成功後に得られた前記他のコード要素の撮像画像において、前記単位モジュール幅を一単位とする所定種類のモジュール画像が存在するか否かを判断し、前記所定種類のモジュール画像が存在する場合に前記読み飛ばしが発生したと判断することを特徴とする。
【発明の効果】
【0010】
請求項1の発明は、多段コードのいずれか一のコード要素が撮像されたときの解読手段による当該一のコード要素の解読結果と、一のコード要素の後に撮像された他のコード要素の撮像内容とに基づき、一のコード要素の後に続くコード要素の読み飛ばしが発生したか否かを判断する。そして、読み飛ばしが発生したと判断された場合に報知を行う。この構成では、スタック型の多段コードにおいて、ある段(一のコード要素)が解読された後、その後に撮像された段(他のコード要素)の撮像内容を解析して読み飛ばしを判断することができ、読み飛ばしの発生時にその旨をユーザに知らしめることができる。従って、ユーザは、読み飛ばしが発生していることを早期に把握することができ、迅速に適切な対応をとることができる。従来のようにユーザが全部の段を読み取ったと感じてから初めて読み飛ばしが発生したことを把握するような方式では、それまでの時間が無駄になってしまい、読み飛ばしを把握した上での対応(例えば再度の読取動作など)をとるまでに大きく時間がかかってしまうが、本発明によれば、読み飛ばしを早期に発見して再読み取り等を迅速に行うことができ、ひいては最終的な読み取り結果をより迅速に出力できるようになる。
【0011】
特に、前記判断手段が、前記一のコード要素を構成する前記明色部及び前記暗色部に基づいて単位モジュール幅を検出する単位モジュール幅検出手段を備えており、前記一のコード要素の読み取りが成功した後、所定時間以上読み取りが成功しない場合に、その読取不成功時又は読取不成功後に得られた前記他のコード要素の撮像画像において、前記単位モジュール幅を一単位とする所定種類のモジュール画像が存在するか否かを判断し、前記所定種類のモジュール画像が存在する場合に前記読み飛ばしが発生したと判断する。
この構成では、一のコード要素の解読結果から単位モジュール幅を検出することができ、所定時間以上読み取りが成功しない場合にはその際の撮像画像(他のコード要素の撮像画像)においてその単位モジュール幅を一単位とする所定種類のモジュール画像が存在するか否かを判断することができる。そして、所定種類のモジュール画像が存在する場合には、想定する種類の画像が得られているにもかかわらず解読できていないといえるため、このような場合に読み飛ばしが発生したと判定することができる。
【0012】
請求項の発明では、前記多段コードは、複数段設けられる各コード要素のそれぞれに予め定められた特徴パターンが含まれたものであり、前記判断手段は、前記一のコード要素の読み取りが成功した後、所定時間以上読み取りが成功しない場合に、その読取不成功時又は読取不成功後に得られた前記他のコード要素の撮像画像において、前記特徴パターンが存在するか否かを判断し、前記特徴パターンが存在する場合に前記読み飛ばしが発生したと判断する。
所定時間以上読み取りが成功しない場合の読取不成功時又は読取不成功後の撮像画像(他のコード要素の撮像画像)において特徴パターンが確認できた場合、想定する種類の画像が得られているにもかかわらず解読できていないといえるため、このような場合に読み飛ばしが発生したと判定することができる。
【0013】
請求項の発明では、前記多段コードは、複数段設けられる各コード要素のそれぞれに予め定められた特徴パターンが含まれ、且つ、各段と前記特徴パターンの構成とが予め対応付けられたものである。そして、前記判断手段は、前記一のコード要素を構成する前記明色部及び前記暗色部に基づいて当該一のコード要素に含まれる前記特徴パターンを抽出し、且つ前記他のコード要素を構成する前記明色部及び前記暗色部に基づいて、前記他のコード要素に含まれる前記特徴パターンを抽出し、前記一のコード要素の前記特徴パターンと前記他のコード要素の前記特徴パターンとが規定の組み合わせでない場合に前記読み飛ばしが発生したと判断する。
この構成では、一のコード要素から得られた特徴パターンと次のコード要素(他のコード要素)から得られた特徴パターンが正規の順番になっていない場合に読み飛ばしを正確に検出できる。
【0014】
請求項の発明は、前記ラインセンサによって前記コード要素が撮像されたときに、その撮像された当該コード要素の解読が既に成功しているか否かを判断する解読成功判断手段と、前記ラインセンサによって撮像された前記コード要素が前記解読成功判断手段によって解読成功済みと判断される間、所定の通知処理を行う通知手段とを備えている。
この構成によれば、使用者は、現在読み取っている段が解読成功済みか否かを確実に認識できるため、解読済みでないコード要素を読み取る際の操作位置及び操作加減をより正確に把握することができ、その結果、読み飛ばしを生じさせないような位置及び速度で操作しやすくなる。
【0015】
請求項の発明は、前記ラインセンサによる撮像画像が、前記解読成功判断手段によって解読成功済みと判断された前記コード要素から変化したか否かを判断する画像変化判断手段を備えており、前記通知手段が、前記画像変化判断手段によって前記解読成功済みの前記コード要素から変化したと判断された場合に、前記所定の通知処理での通知態様とは異なる他の通知態様で通知を行う。
解読済みの段から他の段に移った場合に他の態様(例えば、消灯から点灯)に変えることで、ユーザは操作中に解読済の段に向けられているかそうでないかを把握しながら操作を行うことができ、より正確かつ効率的に読み取り操作を行うことができる。例えば、解読済みの段に向け続けるといった無駄な操作を減らすことができ、読取処理時間の短縮化を図ることができる。
【図面の簡単な説明】
【0016】
図1図1は、本発明の第1実施形態に係る情報コード読取装置の電気的構成を概略的に例示するブロック図である。
図2図2は、図1の情報コード読取装置での読取処理の流れを例示するフローチャートである。
図3図3は、図2の読取処理における模様判定の流れを例示するフローチャートである。
図4図4は、図1の読取装置で読み取られる多段コードを例示する説明図である。
図5図5は、図4の多段コードにおける各段のファインダパターンの内容を概念的に説明する説明図である。
図6図6は、GS1データバー(スタック型)で規定されるセグメント数とファインダパターンとの関係を説明する説明図である。
【発明を実施するための形態】
【0017】
[第1実施形態]
以下、本発明を具現化した第1実施形態について、図面を参照して説明する。
(全体構成)
まず、図1等を参照して本実施形態に係る情報コード読取装置の全体構成について説明する。図1に示すように、本実施形態に係る情報コード読取装置1は、明色部(明色バー(スペース)ともいう)と暗色部(暗色バー)とが所定方向に並ぶコード要素が複数段に配列されてなる多段コードC(図4参照)を読み取り得るコードリーダとして構成されるものであり、図示しないケースによって外郭が構成され、このケース内に各種電子部品が収容された構成をなしている。
【0018】
この情報コード読取装置1は、主に、照明光源21、ラインセンサ23、フィルタ25、結像レンズ27等の光学系と、メモリ35、制御回路40、操作スイッチ42、液晶表示器46等のマイクロコンピュータ(以下「マイコン」という)系と、電源スイッチ41、電池49等の電源系と、から構成されている。なお、これらは、図略のプリント配線板に実装あるいはケース(図示略)内に内装されている。
【0019】
光学系は、照明光源21、ラインセンサ23、フィルタ25、結像レンズ27等から構成されている。照明光源21は、照明光Lfを発光可能な照明光源として機能するもので、例えば、赤色のLEDとこのLEDの出射側に設けられる拡散レンズ、集光レンズ等とから構成されている。本実施形態では、ラインセンサ23を挟んだ両側に照明光源21が設けられており、ケースに形成された読取口(図示略)を介して読取対象物Rに向けて照明光Lfを照射可能に構成されている。この読取対象物Rとしては、例えば、樹脂材料、金属材料等の様々な対象が考えられ、このような読取対象物Rに多段コードCが印刷、ダイレクトマーキングなどによって形成されている。なお、以下の説明では、多段コードCとしてGS1データバー(スタック型)を例示するが、明色バーと暗色バーが所定方向に並んだコード要素が複数段設けられた構成ならばCODE49等の他のコード種に適用してもよい。
【0020】
ラインセンサ23は、読取対象物Rや多段コードCに照射されて反射した反射光Lrを受光可能に構成されるもので、例えば、C−MOSやCCD等の固体撮像素子である受光素子を所定の長手方向に1列に配列したセンサが、これに相当する。このラインセンサ23は、結像レンズ27を介して入射する入射光を受光面23aで受光可能に図略のプリント配線板に実装されている。
【0021】
フィルタ25は、反射光Lrの波長相当以下の光の通過を許容し、当該波長相当を超える光の通過を遮断し得る光学的なローパスフィルタで、ケースに形成された読取口(図示略)と結像レンズ27との間に設けられている。これにより、反射光Lrの波長相当を超える不要な光がラインセンサ23に入射することを抑制している。また、結像レンズ27は、例えば、鏡筒とこの鏡筒内に収容される複数の集光レンズとによって構成されており、本実施形態では、ケースに形成された読取口(図示略)に入射する反射光Lrを集光し、ラインセンサ23の受光面23aに多段コードCを構成するコード要素の画像を結像可能に構成されている。
【0022】
マイコン系は、増幅回路31、A/D変換回路33、メモリ35、アドレス発生回路36、同期信号発生回路38、制御回路40、操作スイッチ42、LED43、ブザー44、液晶表示器46、通信インタフェース48等から構成されている。このマイコン系は、マイコン(情報処理装置)として機能し得る制御回路40及びメモリ35を中心として構成され、前述した光学系によって撮像された各コード要素の画像信号をハードウェア的およびソフトウェア的に信号処理し得るものである。
【0023】
光学系のラインセンサ23から出力される画像信号(アナログ信号)は、増幅回路31に入力されることで所定ゲインで増幅された後、A/D変換回路33に入力され、アナログ信号からディジタル信号に変換される。そして、ディジタル化された画像信号、つまり画像データ(画像情報)は、メモリ35に入力され、当該メモリ35の画像データ蓄積領域に蓄積される。同期信号発生回路38は、ラインセンサ23およびアドレス発生回路36に対する同期信号を発生可能に構成されており、またアドレス発生回路36は、この同期信号発生回路38から供給される同期信号に基づいて、メモリ35に格納される画像データの格納アドレスを発生可能に構成されている。
【0024】
メモリ35は、半導体メモリ装置で、例えばRAM(DRAM、SRAM等)やROM(EPROM、EEPROM等)がこれに相当する。このメモリ35のうちのRAMには、前述した画像データ蓄積領域のほかに、制御回路40が算術演算や論理演算等の各処理時に利用する作業領域や読取条件テーブルも確保可能に構成されている。またROMには、後述する読取処理等を実行可能な所定プログラムやその他、照明光源21、ラインセンサ23等の各ハードウェアを制御可能なシステムプログラム等が予め格納されている。
【0025】
制御回路40は、情報コード読取装置1全体を制御可能なマイコンで、CPU、システムバス、入出力インタフェース等からなるものであり、情報処理機能を有している。この制御回路40には、内蔵された入出力インタフェースを介して種々の入出力装置(周辺装置)が接続されており、本実施形態の場合、電源スイッチ41、操作スイッチ42、LED43、ブザー44、液晶表示器46、通信インタフェース48等が接続されている。また、通信インタフェース48には、情報コード読取装置1の上位システムに相当するホストコンピュータHSTなどを接続できるようになっている。
【0026】
電源系は、電源スイッチ41、電池49等により構成されており、制御回路40により管理される電源スイッチ41のオンオフによって、上述した各装置や各回路に、電池49から供給される駆動電圧の導通や遮断が制御されている。なお、電池49は、所定の直流電圧を発生可能な2次電池で、例えば、リチウムイオン電池等がこれに相当する。
【0027】
(読取処理)
次に、図1の情報コード読取装置で行われる読取処理について説明する。
図2に示す読み取り処理は、例えばユーザによる所定操作(例えば操作スイッチ42の押圧操作等)や電源投入などをトリガとして実行されるものであり、処理開始に伴い画像変化の監視中か否かの判断を行う(S1)。本実施形態では、図2の読取処理中、ラインセンサ23によって継続的に画像が撮像されており、いずれかのコード要素が2回以上解読された場合(後述するS11Yesの場合)に、そのコード要素の画像(S16で保存される前回保存画像)から変化があるまで、画像変化を監視するようになっている。なお、いずれかのコード要素が解読されるまでは、画像変化の監視処理がなされないためS1ではNoに進むことになる。
【0028】
S1でNoに進む場合、受光センサ23による撮像画像を取り込み(S5)、多段コードCを構成するコード要素(図2の代表例ではGS1データバーの1段分のコード要素)の解読を試みる(S6)。多段コードC1を構成するコード要素は、明色バーと暗色バーの配列であり、公知のバーコードと同様の方法で解読できる。そして、S6で解読が成功(解析成功)した場合には、S7にてYesに進み、既に蓄積された段(コード要素)の読取結果と同一であるか否かを判断する(S11)。
【0029】
S7で解読が成功したと判断された段(コード要素)の解読結果のデータが未だ蓄積されていない場合にはS11にてNoに進み、その段(コード要素)の解読データをメモリ35に蓄積すると共に、監視タイマAを起動し、当該S12の処理からの経過時間の測定を始める。そして、S12で蓄積された解読結果のデータと前回の解読結果のデータとを比較し、これら比較結果に含まれるファインダパターンが規定された順番であるか否かを判断する(S13)。
【0030】
ここで、S13での判断処理の原理を説明する前に、図4のようなGS1データバー(スタック型)の多段コードCを例に挙げて説明する。GS1データバー(スタック型)の多段コードCは、各段における中央の領域X1にファインダパターン(特徴パターン)が配されることが規定されており、このファインダパターンの順番が、種類毎(セグメント数で定まるサイズ毎)に図6のような規定内容で予め規定されている。例えば、図4の多段コードは、データ領域X2、X3に記録されるセグメントが7つ(1〜3段には左右2つ、4段目は左側の1つ)となっており、セグメントが7つのパターンでは、ファインダパターンが各段毎1つづつ計4つ含まれている。なお、X4、X5の領域はガードバーの領域である。
【0031】
そして、このファインダパターンは、1段目から順にA1、C2、B1、D2となるように配される(図5も参照)。従って、直近のS12での蓄積データよりも1つ前の回の蓄積データ(前回のS12での蓄積)が1段目のコード要素のものである場合、ファインダパターンとしてはA1が含まれており、その場合、今回(直近)のS12での蓄積データは2段目のコード要素のデータとなるべきなのでファインダパターンとしてC2が含まれるべきである。同様に、直近のS12での蓄積データよりも1つ前の回の蓄積データ(前回のS12での蓄積)が2段目のコード要素のものである場合、ファインダパターンとしてはC2が含まれており、その場合、今回(直近)のS12での蓄積データは3段目のコード要素のデータとなるべきなのでファインダパターンとしてB1が含まれるべきである。このように前回のS12で蓄積された蓄積データからファインダパターンが特定できれば今回のS12で蓄積された蓄積データに含まれるべきファインダパターンが特定できるため、S13では、今回のS12で蓄積されたデータがこのように構成順通りのデータであるか(即ち、ファインダパターンが規定された順序となっているか)否かを判断する。
【0032】
例えば、前回のS12で蓄積されたファインダパターンがA1であり今回のS12で蓄積されたファインダパターンがC2の場合、前回のS12で蓄積されたファインダパターンがC2であり今回のS12で蓄積されたファインダパターンがB1の場合、前回のS12で蓄積されたファインダパターンがB1であり今回のS12で蓄積されたファインダパターンがD2の場合には構成順通りの順序なので、S13でYesに進む。また、S11でNoと判断された段(コード要素)が図4に示すような一段目のコード要素C1であり、前回の解読結果が蓄積されていない場合にもS13でYesに進む。逆に、前回のS12で蓄積されたファインダパターンと今回のS12で蓄積されたファインダパターンが構成順でない場合(例えば、前回のS12で蓄積されたファインダパターンがA1であり今回のS12で蓄積されたファインダパターンがB2のような場合)、S13でNoに進み、読み飛ばしが発生したものとしてブザーで所定音を出したり、LED43を点灯するなどして報知する。これにより、ユーザは、読み飛ばされた段に戻るように操作を行うことができ、読み飛ばされた段を早期に解読しやすくなる。
【0033】
本実施形態では、制御回路40が解読手段の一例に相当し、各コード要素がラインセンサ23にて撮像されたときに、当該ラインセンサ23で得られた各コード要素の撮像結果に基づいて各コード要素を解読するように機能する。
【0034】
また、制御回路40が判断手段の一例に相当し、いずれか一のコード要素(いずれかの段)が撮像されたときの解読手段による当該一のコード要素の解読結果と、一のコード要素の後に撮像された他のコード要素(他の段)の撮像内容とに基づき、一のコード要素の後に続くコード要素の読み飛ばしが発生したか否かを判断するように機能する。具体的には、読取対象となる多段コードCにおいて、複数段設けられる各コード要素のそれぞれに予め定められた特徴パターン(ファインダパターン)が含まれ、且つ、各段と特徴パターンの構成とが予め対応付けられており、判断手段としての制御回路40は、一のコード要素を構成する明色部及び暗色部に基づいて当該一のコード要素に含まれる特徴パターン(ファインダパターン)を抽出し、且つ他のコード要素を構成する明色部及び暗色部に基づいて、他のコード要素に含まれる特徴パターン(ファインダパターン)を抽出し、一のコード要素の特徴パターンと他のコード要素の特徴パターンとが規定の組み合わせでない場合に読み飛ばしが発生したと判断するように機能する。
【0035】
また、制御回路40とLED43(或いはブザー44)は、報知手段の一例に相当し、判断手段によって読み飛ばしが発生したと判断された場合に報知を行うように機能する。
【0036】
次に、S11でYesに進む場合について説明する。
S5で読み取った段(コード要素)の解読(解析)が成功し(S7Yes)、その解読が成功した段(コード要素)の解読結果が既にメモリ35に蓄積されている場合にはS11でYesに進み、その段(コード要素)が読取済みである旨の通知を行う。なお、図2の例では、制御回路40の制御により照明光源21を消灯することで通知する。これにより、ユーザは向けられている段が解読済みであることを把握することができ、向ける位置をずらすように対応することができる。そして、S15の後には、直近のS5で読み取った段(コード要素)の画像(即ち、S11でデータ蓄積済みと判断された画像)を保存し、画像変化の監視を開始する(S16)。
【0037】
S16で画像変化の監視が開始されると、S17で全段の読み取りが成功したと判断されない限りS1に戻ることになり、画像変化の監視中であるため、S1でYesに進むことになる。そして、S1でYesに進む場合には、S2の処理時点で受光センサ23で撮像されている画像を読み込み、前回のS16で保存された画像(即ち、S11でデータ蓄積済みと判断された段(コード要素)の画像)から画像内容が変化しているか否かを判断する。画像が変化しているか否かの判断は様々な方法を用いることができ、例えばS16で保存された画像の波形と、図3で保存された画像の波形が略一致していることを条件として変化していないと判断し、略一致状態でない場合に変化していると判断してもよい。或いは、それら波形の変化度合いが一定値未満であること(例えば、S16での保存画像とS2での取得画像を画素毎に差分をとったときのその差分の総和が所定値未満である場合など)を条件として変化していないと判断し、変化度合いが一定値以上の場合に変化していると判断してもよい。若しくは、S2での画像の解読結果がS16の保存画像の解読結果と一致していない場合に変化していると判断してもよい。そして、S2で読み込まれた画像内容がS16で保存された画像から変化していない場合にはS3でNoに進み、S3でNoに進む場合には再びS1でYesとなってS2で画像が読み込まれることになる。このようなループを画像が変化するまで行う。一方、S2で読み込まれた画像がS16で保存された画像から変化している場合には、S3でYesに進み、照明光源21を点灯する。これにより、ユーザは解読済みの段から移ったことを知ることができる。
【0038】
本実施形態では、制御回路40が解読成功判断手段の一例に相当し、ラインセンサ23によってコード要素が撮像されたときに、その撮像された当該コード要素の解読が既に成功しているか否かを判断するように機能する。
【0039】
また、制御回路40が画像変化判断手段の一例に相当し、ラインセンサ23による撮像画像が、解読成功判断手段によって解読成功済みと判断されたコード要素から変化したか否かを判断するように機能する。
【0040】
更に、制御回路40及び照明光源21は通知手段の一例に相当し、ラインセンサ23によって撮像されたコード要素が解読成功判断手段によって解読成功済みと判断される間、所定の通知処理(例えば照明光源21の消灯)を行い、画像変化判断手段によって解読成功済みのコード要素から変化したと判断された場合に、所定の通知処理での通知態様(例えば照明光源21が消灯した状態)とは異なる他の通知態様(例えば照明光源21が点灯した状態)で通知を行うように機能する。なお、「所定の通知処理での通知態様」は、照明光源21の消灯に限られず、例えば、液晶表示器に所定情報(例えば、「解読済み」等のメッセージ等)を表示するような通知態様であってもよく、ブザーやスピーカなどによって所定音を発するような通知態様であってもよい。この場合、「他の通知態様」は、照明光源21の点灯に限られず、例えば、液晶表示器に所定第2情報(例えば、「未解読」等のメッセージ等)を表示するような通知態様であってもよく、ブザーやスピーカなどによって第2所定音を発するような通知態様であってもよい。
【0041】
次に、S7でNoに進む場合について説明する。
S5で読み取った段(コード要素)の解読(解析)が成功しない場合にはS7にてNoに進み、前回のS12の監視タイマの起動から一定時間経過しているか否かを判断する。一定時間経過していない場合、即ち、前回のS12でのデータ蓄積から一定時間経過していない場合にはS8にてNoに進み、S1以降の処理を繰り返す。この場合、S1にてNoに進み、再度S5にて画像が取得されることになる。つまり、監視タイマの起動から一定時間経過するまでは、S5での画像の取得及びS6での解読が繰り返されることになる。一方、S7で解読失敗と判断された場合において監視タイマの起動から一定時間経過している場合(即ち、前回のS12でのデータ蓄積から一定時間経過している場合)には、S8にてYesに進み、読取対象の多段コード(図2の例ではGS1データバー)と推定される模様が存在するか否かを判定する。この模様判定処理は、例えば図3のような流れで行うことができる。
【0042】
図3の模様判定処理では、まず1モジュールの値の登録があるか否かを判断する。例えば、いずれかの段(コード要素)についてS6で解読が成功し、S7でYes、S11でNoに進んで当該段(コード要素)のデータが蓄積される場合、このS12の処理では、その解読が成功した段(コード要素)の画像から特定できる1モジュールの値(幅)をメモリ35に登録するようになっている。従って、S21では、このような1モジュールの値(幅)の登録がなされているか否かを判断する。登録されていない場合には、S21にてNoに進み、当該模様判定処理を終了する。この場合、S9では、読取対象の多段コード(図2の例ではGS1データバー)と推定される模様が存在しないと判断し、Noに進むことになる。
【0043】
S21において、1モジュールの値が登録されていると判断される場合、S21にてYesに進み、その1モジュールの値を基準として、直近のS5で読み取られた画像において1値(1モジュールの幅値)から8値(1モジュールの幅値の8倍の値)までの模様が存在するか(具体的には例えば5値以上の模様が存在するか)否かを判断する。一般的なバーコードの場合、4値までの幅であり、GS1データバーは5値以上が存在するため、5値以上の模様が存在する場合にはGS1データバーであると推定することができる。このような場合、S22にてYesに進み、GS1データバーらしい模様があると判断し(S24)、S9ではYesに進むことになる。
【0044】
また、S22にて5値以上の模様が存在しないと判断された場合にはNoに進み、直近のS5で読み取られた画像においてGS1データバーで規定されるいずれかのファインダパターン(特徴パターン:図6参照)が存在するか否かを判断する。ファインダパターンが検出できない場合にはS23にてNoに進み、この場合、S9ではNoに進むことになる。一方、図6に示すいずれかのファインダパターンが検出できた場合にはS23にてYesに進み、GS1データバーらしい模様があると判断し(S24)、S9ではYesに進むことになる。
【0045】
そして、S9でYesに進む場合には、読み飛ばしが発生したものとしてブザーで所定音を出したり、LED43を点灯するなどして報知する(S10)。これにより、ユーザは、向けられている段(コード要素)が読取対象ではあるが解読しきれていないこと(即ち、読み飛ばしの発生中であること)を把握することができ、当該位置を確実に読み取るように操作を行いやすくなる。
【0046】
制御回路40は、単位モジュール幅検出手段の一例に相当し、一のコード要素(一の段)を構成する明色部及び暗色部に基づいて単位モジュール幅を検出するように機能する。そして、判断手段に相当する制御回路40は、一のコード要素の読み取りが成功した後、所定時間以上読み取りが成功しない場合に、その読取不成功時又は読取不成功後に得られた他のコード要素の撮像画像において、単位モジュール幅を一単位とする所定種類のモジュール画像が存在するか否かを判断し、所定種類のモジュール画像が存在する場合に読み飛ばしが発生したと判断するように機能する。
【0047】
また、判断手段に相当する制御回路40は、一のコード要素の読み取りが成功した後、所定時間以上読み取りが成功しない場合に、その読取不成功時又は読取不成功後に得られた他のコード要素の撮像画像において、ファインダパターン(特徴パターン)が存在するか否かを判断し、特徴パターンが存在する場合に読み飛ばしが発生したと判断するように機能する。
【0048】
(第1実施形態の主な効果)
第1実施形態では、多段コードCを構成するいずれか一のコード要素が撮像されたときの解読手段による当該一のコード要素の解読結果と、一のコード要素の後に撮像された他のコード要素の撮像内容とに基づき、一のコード要素の後に続くコード要素の読み飛ばしが発生したか否かを判断している。そして、読み飛ばしが発生したと判断された場合に報知を行っている。この構成では、スタック型の多段コードCにおいて、ある段(一のコード要素)が解読された後、その後に撮像された段(他のコード要素)の撮像内容を解析して読み飛ばしを判断することができ、読み飛ばしの発生時にその旨をユーザに知らしめることができる。従って、ユーザは、読み飛ばしが発生していることを早期に把握することができ、迅速に適切な対応をとることができる。従来のようにユーザが全部の段を読み取ったと感じてから初めて読み飛ばしが発生したことを把握するような方式では、それまでの時間が無駄になってしまい、読み飛ばしを把握した上での対応(例えば再度の読取動作など)をとるまでに大きく時間がかかってしまうが、本発明によれば、読み飛ばしを早期に発見して再読み取り等を迅速に行うことができ、ひいては最終的な読み取り結果をより迅速に出力できるようになる。
【0049】
また、一のコード要素を構成する明色部及び暗色部に基づいて単位モジュール幅を検出する単位モジュール幅検出手段を備えており、一のコード要素の読み取りが成功した後、所定時間以上読み取りが成功しない場合に、その読取不成功時又は読取不成功後に得られた他のコード要素の撮像画像において、単位モジュール幅を一単位とする所定種類のモジュール画像が存在するか否かを判断し、所定種類のモジュール画像が存在する場合に読み飛ばしが発生したと判断している。
この構成では、一のコード要素の解読結果から単位モジュール幅を検出することができ、所定時間以上読み取りが成功しない場合にはその際の撮像画像(他のコード要素の撮像画像)においてその単位モジュール幅を一単位とする所定種類のモジュール画像が存在するか否かを判断することができる。そして、所定種類のモジュール画像が存在する場合には、想定する種類の画像が得られているにもかかわらず解読できていないといえるため、このような場合に読み飛ばしが発生したと判定することができる。
【0050】
また、多段コードCは、複数段設けられる各コード要素C1〜C4のそれぞれに予め定められた特徴パターンが含まれたものであり、判断手段は、一のコード要素の読み取りが成功した後、所定時間以上読み取りが成功しない場合に、その読取不成功時又は読取不成功後に得られた他のコード要素の撮像画像において、特徴パターンが存在するか否かを判断し、特徴パターンが存在する場合に読み飛ばしが発生したと判断している。
所定時間以上読み取りが成功しない場合の読取不成功時又は読取不成功後の撮像画像(他のコード要素の撮像画像)において特徴パターンが確認できた場合、想定する種類の画像が得られているにもかかわらず解読できていないといえるため、このような場合に読み飛ばしが発生したと判定することができる。
【0051】
本実施形態で読取対象となる多段コードCは、複数段設けられる各コード要素C1〜C4のそれぞれに予め定められた特徴パターンが含まれ、且つ、各段と特徴パターンの構成とが予め対応付けられたものとなっている。そして、判断手段は、一のコード要素を構成する明色部及び暗色部に基づいて当該一のコード要素に含まれる特徴パターンを抽出し、且つ他のコード要素を構成する明色部及び暗色部に基づいて、他のコード要素に含まれる特徴パターンを抽出し、一のコード要素の特徴パターンと他のコード要素の特徴パターンとが規定の組み合わせでない場合に読み飛ばしが発生したと判断している。
この構成では、一のコード要素から得られた特徴パターンと次のコード要素(他のコード要素)から得られた特徴パターンが正規の順番になっていない場合に読み飛ばしを正確に検出できる。
【0052】
更に、本実施形態では、ラインセンサ23によってコード要素C1〜C4のいずれかが撮像されたときに、その撮像された当該コード要素の解読が既に成功しているか否かを判断する解読成功判断手段と、ラインセンサ23によって撮像された当該コード要素が解読成功判断手段によって解読成功済みと判断される間、所定の通知処理を行う通知手段とを備えている。
この構成によれば、使用者は、現在読み取っている段が解読成功済みか否かを確実に認識できるため、解読済みでないコード要素を読み取る際の操作位置及び操作加減をより正確に把握することができ、その結果、読み飛ばしを生じさせないような位置及び速度で操作しやすくなる。
【0053】
また、本実施形態では、ラインセンサ23による撮像画像が、解読成功判断手段によって解読成功済みと判断されたコード要素から変化したか否かを判断する画像変化判断手段を備えており、画像変化判断手段によって解読成功済みのコード要素から変化したと判断された場合に、通知手段は、所定の通知処理での通知態様とは異なる他の通知態様で通知を行っている。
解読済みの段から他の段に移った場合に他の態様(例えば、消灯から点灯)に変えることで、ユーザは操作中に解読済の段に向けられているかそうでないかを把握しながら操作を行うことができ、より正確かつ効率的に読み取り操作を行うことができる。例えば、解読済みの段に向け続けるといった無駄な操作を減らすことができ、読取処理時間の短縮化を図ることができる。
【0054】
[他の実施形態]
本発明は上記記述及び図面によって説明した実施形態に限定されるものではなく、例えば次のような実施形態も本発明の技術的範囲に含まれる。
【0055】
上記実施形態では、ラインセンサ23として受光素子を一列に並べたものを例示したが、受光素子がライン状に配列されていれば1列でなくてもよい。例えば複数列で長手状に構成されていてもよい。
【符号の説明】
【0056】
1…情報コード読取装置
21…照明光源(通知手段)
23…ラインセンサ
40…制御回路(解読手段、判断手段、報知手段、単位モジュール幅検出手段、解読成功判断手段、通知手段、画像変化判断手段)
43…LED(報知手段)
C…多段コード
図1
図2
図3
図4
図5
図6