(58)【調査した分野】(Int.Cl.,DB名)
前記制御手段は、前記複数の撮像手段のうちの1つに設けられる前記出力切替手段に対して前記出力指示信号を出力することを特徴とする請求項1に記載の情報コード読取装置。
前記制御手段は、前記画像データ入力インタフェースを介して取り込んだ画像データから得られる情報に基づいて、前記複数の撮像手段のうち次に画像データを取り込む撮像手段に設けられる前記出力切替手段に対して前記出力指示信号を出力することを特徴とする請求項2に記載の情報コード読取装置。
【発明を実施するための形態】
【0018】
[第1実施形態]
以下、本発明に係る情報コード読取装置を具現化した第1実施形態について、図面を参照して説明する。
図1(A)は、第1実施形態に係る情報コード読取装置10の電気的構成を示すブロック図であり、
図1(B)は、
図1(A)の情報コード読取部40の電気的構成を例示するブロック図である。
本実施形態に係る情報コード読取装置10は、物品に付されたバーコードなどの一次元コードやQRコード(登録商標)などの二次元コード等の情報コードを光学的に読み取る携帯型の読取装置として構成されている。具体的には、情報コード読取装置10は、例えば、店舗等に設置されたPOSレジスタのスキャナとして構成され、商品に表示されるバーコード等を光学的に読み取るように機能する。
【0019】
図1(A)に示すように、情報コード読取装置10の筐体内には、情報コード読取装置10全体を制御するCPU20が設けられており、このCPU20には、各種電気部品として、メモリ31、LCD32、LED33、キー操作部34、スピーカ35などが対応する入出力インタフェースを介して接続されている。CPU20は、メモリ31に記憶される所定のプログラムに基づいて算術演算や論理演算等の各種演算処理を行い各種電気部品を制御するように構成されている。
【0020】
特に、本実施形態では、CPU20として、画像データ入力インタフェース21を1系統有する汎用的なCPUが採用されており、このため、多系統の画像データ入力インタフェースを有するCPUを採用する場合と比較して、情報コード読取装置10を安価に構成することができる。なお、CPU20は、「制御手段」の一例に相当し得る。
【0021】
メモリ31は、半導体メモリ装置で、例えばRAM(DRAM、SRAM等)やROM(EPROM、EEPROM等)がこれに相当する。このメモリ31のうちのRAMには、CPU20が算術演算や論理演算等の各処理時に利用する作業領域や画像データ記憶領域、読取条件テーブル等を確保可能に構成されている。またROMには、読取処理や後述する転送処理等を実行可能な所定プログラムや各ハードウェアを制御可能なシステムプログラム等が予め格納されている。
【0022】
LCD32は、LCDインタフェースを介してCPU20に制御可能に接続されており、CPU20によってその表示内容が制御されるように構成されている。キー操作部34は、所定のインタフェースを介してCPU20に対して操作信号を出力可能に接続されており、CPU20は、この操作信号を受けて操作信号の内容に応じた動作を行う。LED33およびスピーカ35は、それぞれ所定のインタフェースを介してCPU20に制御可能に接続されており、CPU20によってその動作が制御されるように構成されている。また、筐体内には、電源となるバッテリ36や電源部37が設けられており、これらによってCPU20や各種電気部品に電力が供給されている。
【0023】
また、CPU20には、情報コード読取部40が電気的に接続されている。情報コード読取部40は、
図1(B)に示すように、撮像部43、結像レンズ42、複数個のLEDやレンズ等から構成される照明部41などを備えた構成をなしており、CPU20と協働して読取対象に付された情報コードを光学的に読み取るように機能する。なお、
図1(B)では、情報コードCが付された読取対象Rに向けて照明光Lfを照射する例を概念的に示している。
【0024】
このように構成される情報コード読取部40によって読み取りを行う場合、まず、CPU20によって指令を受けた照明部41から照明光Lfが出射され、この照明光Lfが図略の読取口を通って読取対象に照射される。そして、照明光Lfが情報コードにて反射した反射光Lrは読取口を通って装置内に取り込まれ、結像レンズ42を通って撮像部43により撮像される。この撮像に応じて撮像部43から出力される画像データが画像データ入力インタフェース21を介してCPU20に取り込まれて、この画像データに含まれる情報コードのデコード処理がなされることで、情報コードとしてコード化された文字データ等の情報が取得される。
【0025】
次に、撮像部43の構成について、
図2および
図3を参照して詳述する。なお、
図2は、撮像部43の深度を説明する説明図であり、
図2(A)は、第1エリアセンサ43aの状態を示し、
図2(B)は、第2エリアセンサ43bの状態を示す。
図3は、第1エリアセンサ43aの深度と第2エリアセンサ43bの深度とを比較する説明図である。
【0026】
撮像部43は、C−MOSやCCD等の固体撮像素子(受光素子)を2次元に配列されて構成されるエリアセンサを2つ備えるツインカメラとして構成されるものである。これら両エリアセンサは、近点撮像用のエリアセンサ(以下、第1エリアセンサ43aともいう)と、遠点撮像用のエリアセンサ(以下、第2エリアセンサ43bともいう)とからなる。なお、第1エリアセンサ43aおよび第2エリアセンサ43bは、「撮像手段」の一例に相当し得る。
【0027】
本実施形態では、第1エリアセンサ43aおよび第2エリアセンサ43bは、CPU20から後述するOE信号がHi状態で入力されるタイミングで、画像データをCPU20に対して出力するように構成されている。すなわち、第1エリアセンサ43aおよび第2エリアセンサ43bは、入力されるHi状態のOE信号に応じて画像データを画像データ入力インタフェース21を介して出力し、Hi状態のOE信号が入力されない状態(OE信号がLo状態)では画像データを画像データ入力インタフェース21に出力しないように出力状態を切り替える出力切替機能(出力切替手段)を有している。
【0028】
図2(A)(B)に示すように、第2エリアセンサ43bは、第1エリアセンサ43aよりも画角が狭くなるように設定されることで遠方まで撮像可能に構成されている。
【0029】
特に、本実施形態では、第1エリアセンサ43aおよび第2エリアセンサ43bは、同じ読取口を介して情報コードからの反射光を受光するように、撮像方向が同じ方向であって近接して配置されている。このため、第1エリアセンサ43aから取り込まれる画像データおよび第2エリアセンサ43bから取り込まれる画像データの少なくともいずれか一方をデコード処理に利用することで、読取口に対して比較的近くに位置する情報コードだけでなく読取口から比較的遠くに位置する情報コードも読み取ることができる。
【0030】
例えば、
図3に例示するように、幅が0.20mmのITFコード(バーコード)が撮像対象である場合には、読取口を接触させる程度の近距離に位置するITFコードから比較的遠距離に位置するITFコードまで、読み取ることができる。また、幅が0.50mmのITFコードが撮像対象である場合には、読取口を接触させない程度に近づけたITFコードからさらに遠距離に位置するITFコードまで、読み取ることができる。また、幅が0.20mmのQRコード(二次元コード)が撮像対象である場合には、第1エリアセンサ43aを用いて読取口の近くに位置するQRコードを読み取ることができる。また、幅が0.50mmのQRコードが撮像対象である場合には、読取口を接触させる程度の近距離に位置するQRコードから比較的遠距離に位置するQRコードまで、読み取ることができる。また、幅が0.33mmのEANコード(バーコード)が撮像対象である場合には、読取口を接触させる程度の近距離に位置するEANコードから比較的遠距離に位置するEANコードまで、読み取ることができる。
【0031】
ここで、CPU20と第1エリアセンサ43aおよび第2エリアセンサ43bとの接続構成について、
図4を用いて説明する。なお、
図4は、第1実施形態におけるCPU20と両エリアセンサ43a,43bとの接続構成を示すブロック図である。
本実施形態では、
図4に示すように、CPU20は、エリアセンサの出力タイミングを同期させるため、第1エリアセンサ43aおよび第2エリアセンサ43bに対して同じクロック信号や設定信号、リセット解除信号等を入力可能に接続されている。また、CPU20は、エリアセンサの出力を制御するためのOE信号(tri-states signals)を、第1エリアセンサ43aおよび第2エリアセンサ43bに対して個々に入力可能に接続されている。そして、エリアセンサ43aおよび第2エリアセンサ43bは、CPU20の画像データ入力インタフェース21に対して、共通のバス22を介して画像データ用の出力信号(以下、画像信号ともいう)を出力可能に接続されている。なお、OE信号は、「出力指示信号」の一例に相当し得る。
【0032】
次に、画像信号に関して、第1エリアセンサ43aおよび第2エリアセンサ43bでの出力状態とCPU20での入力状態とについて、
図5〜
図7を参照して説明する。なお、
図5は、両エリアセンサ43a,43bにおける画像信号の出力状態を示す説明図である。
図6は、CPU20における撮像部43からの画像信号の入力状態を示す説明図である。
図7は、非同期時の両エリアセンサ43a,43bにおける画像信号の出力状態を示す説明図である。なお、
図5および
図6では、第1エリアセンサ43aの画像信号の出力タイミングと第2エリアセンサ43bの画像信号の出力タイミングとを後述する処理により同期させている状態を示している。
【0033】
図5に示すように、CPU20からHi状態のOE信号(
図5のOE1参照)が第1エリアセンサ43aに入力されると、第1エリアセンサ43aから出力される画像信号がバス22を介して出力される。このタイミングでは、第2エリアセンサ43bにはHi状態のOE信号が入力されないため、第2エリアセンサ43bからの画像信号がバス22に出力されることもなく、第2エリアセンサ43bの出力は、Hi−Z状態となる。
【0034】
この状態において、CPU20からHi状態のOE信号(
図5のOE2参照)が第2エリアセンサ43bに入力されると、第2エリアセンサ43bから出力される画像信号がバス22を介して出力される状態に切り替わる。このタイミングでは、第1エリアセンサ43aにはHi状態のOE信号が入力されないため、第1エリアセンサ43aから画像信号がバス22に出力されない状態に切り替わり、第1エリアセンサ43aの出力は、Hi−Z状態となる。
【0035】
これにより、
図6に示すように、CPU20は、Hi状態のOE信号(
図6のOE1参照)を第1エリアセンサ43aに出力した場合には、撮像部43からの出力として、第1エリアセンサ43aにて撮像された画像データを取り込むことができる。また、CPU20は、Hi状態のOE信号(
図6のOE2参照)を第2エリアセンサ43bに出力した場合には、撮像部43からの出力として、第2エリアセンサ43bにて撮像された画像データを取り込むことができる。
【0036】
特に、本実施形態では、
図5および
図6からわかるように、第1エリアセンサ43aの画像信号の出力タイミングと第2エリアセンサ43bの画像信号の出力タイミングとを同期させている。例えば、第1エリアセンサ43aの画像信号の出力タイミングと第2エリアセンサ43bの画像信号の出力タイミングとが同期されていない場合、
図7に示すように、第1エリアセンサ43aから第2エリアセンサ43bに変更した際に両エリアセンサ43a,43bでの画像データの出力タイミングがずれていると、第2エリアセンサ43bの出力タイミングまで画像データを取り込むことができずに、処理時間が長くなってしまう。そうすると、最大で2画像データ分、取り込みタイミングが遅くなってしまう。
【0037】
これに対して、本実施形態では、上述したように両エリアセンサ43a,43bの画像信号の出力タイミングを同期させているため、上述のように異なるエリアセンサの画像信号の出力タイミングを待つ必要もないので、取り込みタイミングが遅くなることもない。すなわち、出力タイミングの同期により、常に同じ速度で画像データを取り込むことができるので、2つのエリアセンサ43a,43bから画像データ入力インタフェース21を介して画像データをそれぞれ取り込む場合でも、1つのエリアセンサから画像データを取り込む場合と同等の処理速度を実現することができる。
【0038】
次に、CPU20において、両エリアセンサ43a,43bから画像データを取り込むことで撮像した情報コードをデコードする読取処理について、以下に説明する。
本実施形態における読取処理では、通常は、近点撮像用のエリアセンサである第1エリアセンサ43aから取り込まれる画像データを用いてデコード処理を行う。そして、遠くに位置する情報コードを読み取る際の操作として、キー操作部34に設けられる遠点読取用のトリガースイッチを操作した場合に、遠点撮像用のエリアセンサである第2エリアセンサ43bから取り込まれる画像データを用いてデコード処理を行う。
【0039】
以下、CPU20にて実行される読取処理について、
図8に示すフローチャートを参照して詳述する。なお、
図8は、第1実施形態においてCPU20にて実行される読取処理の流れを例示するフローチャートである。
キー操作部34に対して所定の操作がなされることで、CPU20により読取処理が開始されると、CPU20により制御されて、第1エリアセンサ43aおよび第2エリアセンサ43bが電源ON状態となる(
図8のS101)。次に、両エリアセンサ43a,43bのデータ出力がそれぞれOFFに制御された後に(S103)、両エリアセンサ43a,43bに対してそれぞれクロック信号が同じタイミングで供給される(S105)。また、両エリアセンサ43a,43bにおいて同じタイミングで取り込みを開始するために、両エリアセンサ43a,43bに対して、リセット解除が同じタイミングで実施され(S107)、所定の初期設定が実施される(S109)。
【0040】
上述のような処理により第1エリアセンサ43aの画像信号の出力タイミングと第2エリアセンサ43bの画像信号の出力タイミングとが同期すると、ステップS111に示す判定処理にて、切り替え指示がなされているか否かについて判定される。ここで、近くに位置する情報コードを読み取ることから遠点読取用のトリガースイッチが操作されていない場合には、遠点読取への切り替え指示がなされていないと判定される(S111でNo)。
【0041】
この場合には、第1エリアセンサ43aからの画像データを取り込むため、第1エリアセンサ43aに対してHi状態のOE信号が出力される(S113)。これにより、第1エリアセンサ43aから画像データが取り込まれ(S115)、この取り込んだ画像データに対して公知のデコード処理がなされる(S117)。このデコード処理が成功して情報コードとしてコード化された文字データ等が取得されると(S119でYes)、本読取処理が終了する。一方、デコード処理が失敗すると(S119でNo)、上記ステップS111からの処理が繰り返され、トリガースイッチが操作されない場合には、第1エリアセンサ43aに対するHi状態のOE信号の出力が断続的に繰り返される。
【0042】
上記繰り返し処理中に、遠くに位置する情報コードを読み取ることから遠点読取用のトリガースイッチが操作されると(S111でYes)、第2エリアセンサ43bからの画像データを取り込むため、第2エリアセンサ43bに対してHi状態のOE信号が出力される(S121)。これにより、第2エリアセンサ43bから画像データが取り込まれ(S123)、この取り込んだ画像データに対して公知のデコード処理がなされる(S117)。このデコード処理が成功して情報コードとしてコード化された文字データ等が取得されると(S119でYes)、本読取処理が終了する。一方、デコード処理が失敗すると(S119でNo)、上記ステップS111からの処理が繰り返され、トリガースイッチが操作されている間、第2エリアセンサ43bに対するHi状態のOE信号の出力が断続的に繰り返される。
【0043】
以上説明したように、本実施形態に係る情報コード読取装置10では、情報コードを撮像するための2つのエリアセンサ43a,43bと、これら両エリアセンサ43a,43bから1つの画像データ入力インタフェース21を介して取り込まれる画像データに基づいて情報コードをデコードするCPU20とが設けられている。そして、入力されるHi状態のOE信号に応じて画像データを画像データ入力インタフェース21を介して出力し、Hi状態のOE信号が入力されない状態では画像データを画像データ入力インタフェース21に出力しないように出力状態を切り替える出力切替機能が設けられるように両エリアセンサ43a,43bが構成されている。
【0044】
これにより、両エリアセンサ43a,43bがそれぞれ画像データを出力可能な状態であっても、Hi状態のOE信号が入力されるエリアセンサからその画像データが画像データ入力インタフェース21を介してCPU20に取り込まれる。また、他のエリアセンサに対してHi状態のOE信号が入力されると、この他のエリアセンサからその画像データが画像データ入力インタフェース21を介してCPU20に取り込まれる。すなわち、両エリアセンサ43a,43bのうちHi状態のOE信号が入力されるエリアセンサのみがその画像データを画像データ入力インタフェース21を介してCPU20に出力する。したがって、画像データ入力インタフェース21を1つ有するCPU20であっても2つのエリアセンサ43a,43bからの画像データを取り込むことができる。
【0045】
特に、CPU20により、両エリアセンサ43a,43bのうちの1つに対してHi状態のOE信号が出力される。これにより、CPU20は、両エリアセンサ43a,43bのうち所望のエリアセンサから画像データを所望のタイミングで取り込むことができる。
【0046】
なお、OE信号は、CPU20から両エリアセンサ43a,43bに対して出力されることに限らず、他の制御手段等から両エリアセンサ43a,43bに対して出力されてもよい。
【0047】
さらに、両エリアセンサ43a,43bにおける画像データの出力タイミングを同期させるため、どのエリアセンサから画像データを取り込む場合でもエリアセンサに対して出力するHi状態のOE信号のタイミングが同じになる。これにより、どのエリアセンサからも同じタイミングで画像データが出力されるので、エリアセンサを変更しても画像データの出力タイミングがずれることもない。これにより、エリアセンサを変更しても画像データの出力タイミングがずれないので、エリアセンサを変更したことに起因して処理時間が長くなることを防止することができる。
【0048】
図9(A)は、第1実施形態の第1変形例に係る情報コード読取装置10における両エリアセンサ43a,43bの配置例を示す説明図であり、
図9(B)は、第1実施形態の第2変形例に係る情報コード読取装置10における両エリアセンサ43a,43bの配置例を示す説明図である。
両エリアセンサ43a,43bは、撮像方向が同じ方向となるように構成されることに限らず、撮像方向が異なる方向となるように構成されてもよい。これにより、情報コード読取装置10が用いられる環境に適した複数の撮像方向を実現することができる。例えば、POSレジスタ近くの情報コードだけでなく、ショッピングカートに載置される商品に表示されるようなPOSレジスタから離れた情報コードも、情報コード読取装置10を持ち替えることなく読み取ることができる。
【0049】
具体的には、例えば、
図9(A)に示すように、反射鏡44を用いることで、第2エリアセンサ43bの撮像方向を第1エリアセンサ43aの撮像方向に対して異なる方向としてもよい。また、
図9(B)に示すように、基板の一方の基板面に第1エリアセンサ43aを実装し、他方の基板面に第2エリアセンサ43bを実装することで、両エリアセンサ43a,43bの撮像方向が異なる方向となるように構成されてもよい。
【0050】
[第2実施形態]
次に、本発明の第2実施形態に係る情報コード読取装置について、
図10を参照して説明する。なお、
図10は、第2実施形態においてCPU20にて実行される読取処理の流れを例示するフローチャートである。
本第2実施形態では、画像データ入力インタフェース21を介して取り込んだ画像データから得られる情報に基づいて、次に画像データを取り込むエリアセンサを両エリアセンサ43a,43bのいずれかに切り替える点が主に上記第1実施形態と異なる。このため、第1実施形態と実質的に同様の構成部分には同一符号を付して説明を省略する。
【0051】
本実施形態では、CPU20にて実施される読取処理において、画像データを取り込むエリアセンサを、トリガースイッチの操作に応じて手動的に切り替えるのではなく、デコードの成否に応じて自動的に切り替える。
【0052】
以下、本実施形態における読取処理について、
図10に示すフローチャートを参照して詳述する。
上記第1実施形態と同様に所定の初期設定までの処理(
図10のS109)がなされて両エリアセンサ43a,43bの出力タイミングが同期すると、ステップS111aに示す判定処理にて、取り込むエリアセンサを切り替えるためのフラグFがF=1に設定されているか否かについて判定される。ここで、フラグFは、第1エリアセンサ43aから画像データを取り込む場合にF=0に設定され、第2エリアセンサ43bから画像データを取り込む場合にF=1に設定されるもので、初期設定では、F=0に設定されている。このため、ステップS111aにてNoと判定されて、上記ステップS113以降の処理、すなわち、第1エリアセンサ43aから取り込んだ画像データに基づくデコード処理がなされる。
【0053】
そして、デコードが失敗すると(S119でNo)、ステップS125の判定処理にて、情報コードが撮像されているか否かについて判定される。ここで、第1エリアセンサ43aにて情報コードが撮像されていないことからデコードが失敗している場合には、ステップS125にてNoと判定される。この場合には、フラグFが変更されることなく、上記ステップS111aからの処理が繰り返されて、第1エリアセンサ43aからの画像データが取り込まれる。
【0054】
一方、第1エリアセンサ43aにて情報コードが撮像されており、この第1エリアセンサ43aから取り込んだ画像データに基づく情報コードのデコードが失敗すると(S119でNo、S125でYes)、フラグFが0から1に変更される(S127)。この場合には、上記ステップS111aにてYesと判定されて、上記ステップS121以降の処理、すなわち、第2エリアセンサ43bから取り込んだ画像データに基づくデコード処理がなされる。
【0055】
そして、フラグF=1であることから、第2エリアセンサ43bから取り込んだ画像データに基づくデコード処理がなされて、そのデコードが失敗すると(S119でNo)、ステップS125の判定処理にて、情報コードが撮像されているか否かについて判定される。ここで、第2エリアセンサ43bにて情報コードが撮像されていないことからデコードが失敗している場合には、ステップS125にてNoと判定される。この場合には、フラグFが変更されることなく、上記ステップS111aからの処理が繰り返されて、第2エリアセンサ43bからの画像データが取り込まれる。
【0056】
一方、第2エリアセンサ43bにて情報コードが撮像されており、この第2エリアセンサ43bから取り込んだ画像データに基づく情報コードのデコードが失敗すると(S119でNo、S125でYes)、フラグFが1から0に変更される(S127)。この場合には、上記ステップS111aにてNoと判定されて、第1エリアセンサ43aから取り込んだ画像データに基づくデコード処理がなされる。
【0057】
以上説明したように、本実施形態に係る情報コード読取装置10では、CPU20における読取処理により、画像データ入力インタフェース21を介して取り込んだ画像データから得られる情報に基づいて、両エリアセンサ43a,43bのうち次に画像データを取り込むエリアセンサに対してHi状態のOE信号が出力される。
【0058】
このため、CPU20は、取り込んだ画像データに基づく情報コードのデコードに失敗した場合に、その情報コードを撮像可能な他のエリアセンサに対してHi状態のOE信号を出力してその画像データを取り込むことができる。このように、2つのエリアセンサ43a,43bを用いて情報コードを撮像することで、様々な撮影条件で情報コードを撮像できるので、画像データ入力インタフェース21を1つ有するCPU20であっても情報コードのデコード成功率を向上させることができる。
【0059】
[第3実施形態]
次に、本発明の第3実施形態に係る情報コード読取装置について、
図11を参照して説明する。なお、
図11は、第3実施形態においてCPU20にて実行される読取処理の流れを例示するフローチャートである。
本第3実施形態では、CPU20に取り込まれた画像データに基づいて、その画像データを取り込んだエリアセンサと異なるエリアセンサの露光条件を変更する点が主に上記第1実施形態と異なる。このため、第1実施形態と実質的に同様の構成部分には同一符号を付して説明を省略する。
【0060】
本実施形態では、CPU20にて実施される読取処理において、露光条件が適切でないためにデコードが失敗した場合に、そのデコードに用いた画像データを取り込んだエリアセンサの露光条件を適正に変更するとともに、この露光条件の変更に応じて他のエリアセンサの露光条件も変更する。
【0061】
以下、本実施形態における読取処理について、
図11に示すフローチャートを参照して詳述する。
上記第1実施形態と同様に所定の初期設定までの処理(
図11のS109)がなされて両エリアセンサ43a,43bの出力タイミングが同期すると、トリガースイッチが操作されていない場合には(S111でNo)、第1エリアセンサ43aから取り込んだ画像データに基づくデコード処理がなされる。このデコードが失敗すると(S119でNo)、デコードが失敗した画像データに関する明るさ解析がなされ(S131)、ステップS133の判定処理にて、画像データの明るさがデコード処理にとって適した状態であるか否かについて判定される。ここで、画像データの明るさがデコード処理にとって適した状態であり適正画像であると判定されると(S133でYes)、露光条件を変更することなく、上記ステップS111からの処理が繰り返される。
【0062】
一方、画像データの明るさがデコード処理にとって適した状態でないと判定されると(S133でNo)、上記ステップ131の処理における画像データの明るさ解析の結果に応じて、その画像データを取り込んだエリアセンサの露光条件が適正に変更される(S135)。例えば、露光不足であれば露光時間を長くするように露光条件が変更され、露光過多であれば露光時間を短くするように露光条件が変更される。
【0063】
次に、デコードが失敗したエリアセンサと異なる他のエリアセンサの露光条件が、上述した露光条件の変更に応じて変更される(S137)。本実施形態では、第1エリアセンサ43aの画角θaと第2エリアセンサ43bの画角θbとが異なるため、この画角の違いを考慮して他のエリアセンサの露光条件が変更される。この露光条件の変更として、例えば、距離に応じた照明光の減衰量に関して公知の逆2乗則を考慮することで、露光条件の変更を適切に行うことができる。
【0064】
例えば、上記ステップS135の処理にて第1エリアセンサ43aの露光条件が適正に変更されている場合には、この第1エリアセンサ43aでの露光条件変更内容と、上記逆2乗則から求められる第1エリアセンサ43aと第2エリアセンサ43bとの露光状態の違いとに基づいて、第2エリアセンサ43bの露光条件が変更される。なお、上記ステップS137の処理を実行するCPU20は、「露光条件変更手段」の一例に相当し得る。
【0065】
このように、デコードが失敗したエリアセンサの露光条件が変更されるだけでなく、この露光条件の変更を考慮して他のエリアセンサの露光条件も変更されて、上記ステップS111からの処理が繰り返される。
【0066】
以上説明したように、本実施形態に係る情報コード読取装置10では、CPU20に取り込まれた画像データに基づいて、その画像データを取り込んだエリアセンサと異なるエリアセンサの露光条件が変更される。このため、前回取り込んだ画像データに基づく情報コードのデコードが露光条件に起因して失敗した場合に、この失敗した露光条件から求めた適切な露光条件に応じて異なるエリアセンサの露光条件を変更することができる。これにより、情報コードを適切な露光条件で撮像できるので、画像データ入力インタフェース21を1つ有するCPU20であっても情報コードのデコード成功率を向上させることができる。
【0067】
なお、上記読取処理では、デコードが失敗した場合に両エリアセンサ43a,43bの露光条件を変更することに限らず、例えば、所定の時間間隔にて、上述のように取り込んだ画像データに基づいて、両エリアセンサ43a,43bの露光条件を断続的に変更してもよい。
【0068】
また、CPU20に取り込まれた画像データに基づいてその画像データを取り込んだエリアセンサと異なるエリアセンサの露光条件を変更する本実施形態の特徴的構成は、他の実施形態にも適用することができる。
【0069】
[第4実施形態]
次に、本発明の第4実施形態に係る情報コード読取装置について、
図12〜
図15を参照して説明する。なお、
図12は、第4実施形態におけるCPU20と各エリアセンサ45a〜45cとの接続構成を示すブロック図である。
図13は、各エリアセンサ45a〜45cの配置状態を説明する説明図である。
図14は、第4実施形態においてCPU20にて実行される読取処理の流れを例示するフローチャートである。
図15は、各エリアセンサ45a〜45cにおける画像信号の出力状態を示す説明図である。
本第4実施形態では、さらに多くのエリアセンサを有する点が主に上記第1実施形態と異なる。このため、第1実施形態と実質的に同様の構成部分には同一符号を付して説明を省略する。
【0070】
本実施形態では、
図12に示すように、撮像部43は、3つのエリアセンサ45a〜45cを有するように構成されている。各エリアセンサ45a〜45cは、CPU20からOE信号がHi状態で入力されるタイミングで、画像データをCPU20に対して画像データ入力インタフェース21を介して出力するように構成されている。各エリアセンサ45a〜45cは、それぞれ画角が同じ120°であって、
図13に示すように、全方位カメラとして機能するように配置されている。
【0071】
以下、本実施形態における読取処理について、
図14に示すフローチャートを参照して詳述する。
上記第1実施形態と同様に所定の初期設定までの処理(
図14のS109)がなされて各エリアセンサ45a〜45cの出力タイミングが同期すると、所定の順番でHi状態のOE信号がいずれか1つのエリアセンサに対して出力される(S141)。Hi状態のOE信号が入力されたエリアセンサから画像データ入力インタフェース21を介して画像データが取り込まれ(S143)、この取り込んだ画像データに対して公知のデコード処理がなされる(S145)。このデコード処理が成功して情報コードとしてコード化された文字データ等が取得されると(S147でYes)、本読取処理が終了する。一方、デコード処理が失敗すると(S147でNo)、次のエリアセンサに対してHi状態のOE信号が入力されように各エリアセンサに対するOE信号が切り替えられる(S149)。そして、上記ステップS141からの処理が繰り返され、デコードが成功するまで画像データを取り込むエリアセンサが順次切り替えられる。
【0072】
例えば、
図15に示すように各エリアセンサ45a〜45cに対してOE信号が入力される場合、第1エリアセンサ45aから画像データ入力インタフェース21を介して取り込まれた画像データに対するデコードが失敗すると、第2エリアセンサ45bに対してHi状態のOE信号が入力されて、第2エリアセンサ45bから画像データ入力インタフェース21を介して画像データが取り込まれる。このデコードが失敗すると、第3エリアセンサ45cに対してHi状態のOE信号が入力されて、第3エリアセンサ45cから画像データ入力インタフェース21を介して画像データが取り込まれる。
【0073】
このように、3つのエリアセンサ45a〜45cを有するように構成される場合でも、各エリアセンサ45a〜45cのうちHi状態のOE信号が入力されるエリアセンサのみがその画像データを画像データ入力インタフェース21を介してCPU20に出力する。したがって、画像データ入力インタフェース21を1つ有するCPU20であっても3つのエリアセンサ45a〜45cからの画像データを取り込むことができる。
【0074】
なお、撮像部43は、エリアセンサを3つ有するように構成されることに限らず、さらに多くのエリアセンサを有するように構成されてもよい。このような構成でも、各エリアセンサのうちHi状態のOE信号が入力されるエリアセンサのみがその画像データを画像データ入力インタフェース21を介してCPU20に出力するように構成されることで、上記効果を奏する。
【0075】
また、上記ステップS149におけるOE信号の切り替えは、毎回実施することに限らず、例えば、所定時間ごとまたは所定回数ごとに実施されてもよい。
【0076】
また、さらに多くのエリアセンサを有する本実施形態の特徴的構成は、他の実施形態にも適用することができる。
【0077】
[
参考例]
次に、
参考例に係る情報コード読取装置について、
図16を参照して説明する。なお、
図16は、
参考例におけるCPU20と両エリアセンサ46a,46bとの接続構成を示すブロック図である。
本
参考例では、各エリアセンサに対してそれぞれ出力切替手段が別途設けられる点が主に上記第1実施形態と異なる。このため、第1実施形態と実質的に同様の構成部分には同一符号を付して説明を省略する。
【0078】
本
参考例では、撮像部43は、近点撮像用の第1エリアセンサ46aと遠点撮像用の第2エリアセンサ46bとを有するように構成されている。第1エリアセンサ46aおよび第2エリアセンサ46bは、上述した第1エリアセンサ43aおよび第2エリアセンサ43bと異なり、常時画像データを出力するようなより単純化されたエリアセンサとして構成されている。
【0079】
本
参考例では、
図16に示すように、両エリアセンサ46a,46bとバス22との間に出力切替手段47a,47bがそれぞれ設けられており、エリアセンサからの画像信号が常に入力されるように接続されている。これら両出力切替手段47a,47bは、例えば、バススイッチであって、CPU20からOE信号がHi状態で入力されるタイミングで、エリアセンサからの画像データをCPU20に対して画像データ入力インタフェース21を介して出力するように構成されている。
【0080】
このように構成される場合でも、両エリアセンサ46a,46bのうちHi状態のOE信号が入力される出力切替手段が設けられたエリアセンサのみがその画像データを画像データ入力インタフェース21を介してCPU20に出力する。したがって、画像データ入力インタフェース21を1つ有するCPU20であっても複数のエリアセンサからの画像データを取り込むことができる。特に、両エリアセンサ46a,46bにはOE信号を入力する必要もないため、常時画像データを出力するようなより単純化された安価なエリアセンサを採用することができる。
【0082】
[他の実施形態]
なお、本発明は上記各実施形態および変形例に限定されるものではなく、例えば、以下のように具体化してもよい。
(1)本発明に係る情報コード読取装置10は、携帯型の読取装置として構成されることに限らず、据え置き型の読取装置として構成されてもよい。
【0083】
(2)本発明に係る情報コード読取装置10は、情報コードだけでなく他の物品等を撮像対象としてもよい。これにより、情報コード読取装置10は、情報コードを光学的に読み取る読取機能に加えて、複数のエリアセンサから取り込まれる画像データを利用することで、例えば、セキュリティ機能などの他の機能を兼備することができる。