(57)【特許請求の範囲】
【請求項１】
コード化シンボルが形成されたシンボル面を筐体の一壁面に対向させ、前記シンボルを前記壁面に形成された読み取り開口内に位置づけて読み取るシンボル読み取り装置であって、
前記筐体の揺れの速さを検出する揺れ検出手段と、
前記シンボル面の光学情報を光電変換して電荷蓄積するための素子であって、二次元配列された複数の画素を有する撮像素子と、
前記揺れ検出手段が検出する前記筐体の揺れの速さに基づいて前記撮像素子における電荷蓄積時間を制御する撮像制御手段と、
前記シンボル面に照明光を照射するための光源と、
前記揺れ検出手段が検出する前記筐体の揺れの速さに基づいて前記光源の光量を制御する光量制御手段とを備え、
前記撮像制御手段は、前記撮像素子の前記複数の画素に蓄積される電荷信号を各画素毎に独立して読み出すフレームモードと、複数の画素毎に合成して読み出すフィールドモードの２つの読み出しモードとを選択する機能を備え、
前記揺れ検出手段が検出する前記筐体の揺れの速さが所定値に達していない場合、前記電荷蓄積時間は所定時間に設定され、前記光量は所定量に設定され、前記撮像制御手段はフレームモードで前記撮像素子から電荷を読み出し、
前記筐体の揺れの速さが前記所定値に達するか若しくは前記所定値を越えると、前記光量制御手段は、前記筐体の揺れの速さに基づいて前記光量を連続的に変化させ、前記撮像制御手段は、前記筐体の揺れの速さに基づいて前記電荷蓄積時間を連続的に変化させながら、フィールドモードで前記撮像素子から電荷を読み出すことを特徴とするシンボル読み取り装置。
【請求項２】
コード化シンボルが形成されたシンボル面を筐体の一壁面に対向させ、前記シンボルを前記壁面に形成された読み取り開口内に位置づけて読み取るシンボル読み取り装置であって、
前記筐体の揺れの速さを検出する揺れ検出手段と、
前記シンボル面の光学情報を光電変換して電荷蓄積する撮像素子と、
前記揺れ検出手段が検出する前記筐体の揺れの速さに基づいて前記撮像素子における電荷蓄積時間を制御する撮像制御手段と、
前記シンボル面に照明光を照射するための光源と、
前記揺れ検出手段が検出する前記筐体の揺れの速さに基づいて前記光源の光量を制御する光量制御手段とを備え、
前記撮像制御手段は、前記揺れ検出手段が第１の揺れの速さを検出した場合、第１の電荷蓄積時間で前記撮像素子に電荷を蓄積し、前記揺れ検出手段が第２の揺れの速さを検出した場合、第２の電荷蓄積時間で前記撮像素子に電荷を蓄積することにより、前記揺れ検出手段が前記筐体の揺れの速さを実質的に検出している場合、２段階で電荷蓄積時間を制御し、
前記第１の揺れの速さは前記第２の揺れの速さより大きく、かつ前記第１の電荷蓄積時間は前記第２の電荷蓄積時間より短く、
前記光量制御手段は、前記揺れ検出手段が前記第１の揺れの速さを検出した場合、前記光源を高照度にし、前記揺れ検出手段が前記第２の揺れの速さを検出した場合、前記光源を低照度にすることを特徴とするシンボル読み取り装置。
【請求項３】
前記揺れ検出手段が角速度センサーであることを特徴とする請求項１または２に記載のシンボル読み取り装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、例えば２次元バーコードリーダ等のデータシンボルを読み取るシンボル読み取り装置に関する。
【０００２】
【従来の技術】
従来、ＰＯＳ（Ｐｏｉｎｔ  ｏｆ  Ｓａｌｅｓ）システム等に用いられるバーコードリーダには、読み取り開口部内に位置づけられた紙や容器に印刷された文字、バーコード等の２次元データシンボルを含む面に照明光を照射し撮像光学系で２次元データシンボルを撮像素子に結像させるものが知られている。撮像素子から出力された画像情報は２値化され、その２値化データを基に２次元データシンボルの位置を確認し、２次元データシンボルの画像情報が抽出されてデコード等の所定の処理を施された後、ホストコンピュータ等の外部のハードウエアに転送される。
【０００３】
このような２次元データシンボルは白黒のモザイクパターンが２次元的に配列されたものであり、高精度で読み出すためには、シンボルを読み取り開口内に完全に位置づけ、シンボル面に照明光を一定時間均一に照射して読み出すことが望ましい。従って操作者は、バーコードリーダを操作する際、筐体の位置決め、固定等に注意を払わなければならない。
【０００４】
【発明が解決しようとする課題】
ところが実際にバーコードリーダが用いられる際は、必ずしも読み取り開口をシンボル面に接触したまま一定時間筐体を固定してシンボルの読み取り動作が行われるわけではなく、操作者の手ぶれ等により筐体が揺れ、読み取り開口がシンボル面に固定されない場合がある。そのような状況でのシンボルの読み取りは失敗する可能性が高い。
【０００５】
本発明は、以上の問題を解決するものであり、２次元データシンボルの読み取りを安定して行えるシンボル読み取り装置を得ることを目的としている。
【０００６】
なお、本明細書では、「シンボル面」とはシンボル読み取り装置の開口部に位置づけられるシンボルを含む面をさし、「シンボルの読み取り」とは、読み取り開口部に位置づけられた面の撮像処理からシンボルの画像情報を抽出してデコードするまでの処理をさす。
【０００７】
【課題を解決するための手段】
本発明に係るシンボル読み取り装置は、コード化シンボルが形成されたシンボル面を筐体の一壁面に対向させ、シンボルを壁面に形成された読み取り開口内に位置づけて読み取るシンボル読み取り装置であって、筐体の揺れの速さを検出する揺れ検出手段と、シンボル面の光学情報を光電変換して電荷蓄積するための素子であって、二次元配列された複数の画素を有する撮像素子と、揺れ検出手段が検出する筐体の揺れの速さに基づいて撮像素子における電荷蓄積時間を制御する撮像制御手段と、シンボル面に照明光を照射するための光源と、揺れ検出手段が検出する筐体の揺れの速さに基づいて光源の光量を制御する光量制御手段とを備え、撮像制御手段は、撮像素子の複数の画素に蓄積される電荷信号を各画素毎に独立して読み出すフレームモードと、複数の画素毎に合成して読み出すフィールドモードの２つの読み出しモードとを選択する機能を備え、揺れ検出手段が検出する筐体の揺れの速さが所定値に達していない場合、電荷蓄積時間は所定時間に設定され、光量は所定量に設定され、撮像制御手段はフレームモードで撮像素子から電荷を読み出し、筐体の揺れの速さが上述の所定値に達するか若しくは上述の所定値を越えると、光量制御手段は、筐体の揺れの速さに基づいて光量を連続的に変化させ、撮像制御手段は、筐体の揺れの速さに基づいて電荷蓄積時間を連続的に変化させながら、フィールドモードで撮像素子から電荷を読み出すことを特徴とする。
【０００８】
揺れ検出手段は例えば角速度センサーである。
【０００９】
撮像制御手段は好ましくは揺れ検出手段が検出する筐体の揺れの速さに応じて電荷蓄積時間を連続的に変化させる。
【００１０】
撮像素子は二次元配列された複数の画素を有し、撮像制御手段は、好ましくはこれらの複数の画素に蓄積される電荷信号を各画素毎に独立して読み出すフレームモードと、複数の画素毎に合成して読み出すフィールドモードの２つの読み出しモードとを選択する機能を備え、例えば揺れ検出手段が検出する筐体の揺れの速さが所定値に達していない場合、撮像制御手段はフレームモードで撮像素子から電荷を読み出し、所定値に達するか若しくは所定値を越えると撮像制御手段はフィールドモードで読み出す。
【００１１】
揺れ検出手段が筐体の揺れの速さを実質的に検出している場合、撮像制御手段は例えば２段階で電荷蓄積時間を制御する。
【００１２】
揺れ検出手段が第１の揺れの速さを検出した場合、撮像制御手段は例えば第１の電荷蓄積時間で撮像素子に電荷を蓄積し、揺れ検出手段が第２の揺れの速さを検出した場合、撮像制御手段は例えば第２の電荷蓄積時間で前記撮像素子に電荷を蓄積する。
【００１３】
好ましくは第１の揺れの速さが第２の揺れの速さより大きく、かつ第１の電荷蓄積時間が第２の電荷蓄積時間より短い。
【００１４】
【発明の実施の形態】
以下、本発明の実施の形態を図面を参照して説明する。
図１は、本発明に係る第１実施形態であるシンボル読み取り装置の斜視図である。筐体１０はヘッド部１０ａと把持部１０ｂから構成されている。ヘッド部１０ａの底面１１にはほぼ矩形の読み取り開口１２が設けられている。把持部１０ｂの側面には読み取り動作を開始するためのトリガー１５が設けられている。また、把持部１０ｂのヘッド部１０ａと反対側の端部には、読み取り結果を他のハードウエアへ送信するケーブル１６が取り付けられている。
【００１５】
図２は、本実施形態に係るシンボル読み取り装置のブロック図である。
ＣＰＵ（中央演算処理装置）２０はシンボル読み取り装置全体の制御を行う。トリガースイッチ１５はインバータ１５ａに接続されており、インバータ１５ａはトリガースイッチ１５が押されている場合、ハイ信号すなわち「１」を出力し、トリガー１５が押されていない場合、ロー信号すなわち「０」を出力する。インバータ１５ａの出力信号はＣＰＵ２０のポートＰ3 に入力される。
【００１６】
ＣＰＵ２０には、ＣＣＤ駆動回路３２、光源駆動回路３３、信号処理回路３４が接続されている。ＣＣＤ駆動回路３２に対する制御信号はポートＳ3 から出力され、光源駆動回路３３に対する制御信号はポートＳ4 から出力される。
【００１７】
筐体１０内においてＣＣＤ３５の近傍に配設された角速度センサー４０から筐体１０の揺れの速さに応じた電圧が筐体揺れ検出回路４１に出力され、筐体揺れ検出回路４１では角速度センサー４０からの入力値に応じたアナログ電圧をコンパレータ４２に出力する。尚、角速度センサーには、振動するとその振動速度に対応した電圧が発生するセラミックから成る従来公知のセンサーが用いられる。
【００１８】
コンパレータ４２は演算増幅器を用いた比較回路であり、正相入力端子には上述のように筐体揺れ検出回路４１が接続され、逆相入力端子には可変抵抗であるボリュームＲｖが接続されている。コンパレータ４２は、ボリュームＲｖにより設定される基準電圧値Ｓ2 を閾値とし、この電圧値Ｓ2 と筐体揺れ検出回路４１の出力電圧Ｓ1 を比較し、出力電圧Ｓ1 が基準電圧値Ｓ2 より高ければハイ信号すなわち「１」を出力し、出力電圧Ｓ1 が基準電圧値Ｓ2 より低ければロー信号すなわち「０」を出力する。コンパレータ４２はＣＰＵ２０に接続されており、その出力値はＣＰＵ２０のポートＰ1 に入力される。
【００１９】
ポートＰ1 およびＰ3 の入力値に基づいてポートＳ4 の出力値が決定される。ポートＳ4 から出力される信号に基づいて光源駆動回路３３から制御信号が出力され、光源３６はこの制御信号に従って輝度が決定された上で駆動される。以上のようにして光源３６からシンボル面に照明光が照射される。
【００２０】
同様に、ポートＰ1 およびＰ3 の入力値に基づいてポートＳ3 の出力値が決定される。ＣＣＤ駆動回路３２はポートＳ3 から入力される信号に基づいて制御される。これによりＣＣＤ駆動回路３２から制御信号が出力され、ＣＣＤ３５が駆動される。上述のようにシンボル面に照射される照明光は、その反射光がＣＣＤ３５で光電変換される。ＣＣＤ３５から出力される光電変換されたシンボル面の画像情報すなわち全画素データは、信号処理回路３４で２値化処理等を施されポートＰ2 に入力される。また、ＣＣＤ駆動回路３２からはシンボル情報の抽出時に用いられる同期信号（垂直、水平同期信号およびフィールドインデックス信号ＦＩ）が出力されポートＰ4 に入力される。ＣＰＵ２０では、ポートＰ2 に入力された全画素データをポートＰ4 に入力される同期信号に基づいてメモリ（図示せず）に格納する。
【００２１】
また、ＣＰＵ２０では、メモリに格納したシンボル面の撮像情報が読み出され、ポートＰ4 に入力された同期信号（垂直、水平同期信号およびフィールドインデックス信号ＦＩ）に基づいて、画像情報からからシンボルの情報が抽出され、抽出されたシンボル情報を基にデコード等の処理が施される。デコードされたシンボル情報はポートＰ5 から出力され、外部インタフェース３８を介してホストコンピュータに送信される。
【００２２】
図３は、筐体１０の揺れの速さと筐体揺れ検出回路４１の出力値Ｓ1 との関係を示すグラフである。筐体１０の揺れの速さが大きくなるにつれて、出力値Ｓ1 も上昇する。ただし、出力値Ｓ1 の最小値および最大値は筐体揺れ検出回路４１に予め設定されており、本実施形態では、最小値は２Ｖ、最大値は４Ｖで、基準電圧値Ｓ2 は例えば２．５Ｖ程度に設定されており、筐体の揺れの速さＶｔｈに対応している。すなわち、出力値Ｓ1 は２Ｖ〜４Ｖの範囲内で筐体１０の揺れの速さに応じて可変である。
【００２３】
図４は、本実施形態に用いられる従来公知のＣＣＤの構成を示す概略図である。
図４において、各画素に対応するフォトダイオード６０と垂直転送ＣＣＤ６１が交互に配置されている。すなわち、垂直方向Ｖに延びたフォトダイオード６０と垂直転送ＣＣＤ６１が水平方向Ｈにおいて交互に配列されている。フォトダイオード６０に発生した電荷は垂直転送ＣＣＤ６１に移動され、垂直転送ＣＣＤ６１において水平転送ＣＣＤ６２に転送され、水平転送ＣＣＤ６２に接続された端子から出力される。
【００２４】
図５はフォトダイオード６０と垂直転送ＣＣＤ６１の構成を示す拡大図である。本実施形態の垂直転送ＣＣＤ６１はＶ1 、Ｖ2 、Ｖ3 、Ｖ4 の４相の転送電極で構成されている。垂直方向Ｖに並んだフォトダイオード６０は交互にＶ1 、Ｖ3 の電極に接続されている。すなわち、奇数番目のフォトダイオード（ＰＤ1 、ＰＤ3 、ＰＤ5 ．．．）は電極Ｖ1 に接続され、偶数番目のフォトダイオード（ＰＤ2 、ＰＤ4 、ＰＤ6 ．．．）は電極Ｖ3 に接続されている。各フォトダイオードに蓄積された電荷は、接続された電極に電圧が印加されると垂直転送ＣＣＤ６１に移動する。尚、奇数番目のフォトダイオードは読み出される画像の奇数フィールドに対応し、偶数番目のフォトダイオードは偶数フィールドに対応する。
【００２５】
図６は本実施形態の撮像素子の断面図である。ｎ型シリコン基板７０の上にｐ型シリコン基板７１が積層され、その上にｎ型のフォトダイオード６０が配設されている。フォトダイオード６０の近傍には垂直転送ＣＣＤ６１が形成され、垂直転送ＣＣＤ６１はアルミニウムから成る遮蔽部材６２により遮光されている。フォトダイオード６０の残留電荷は、ｎ型シリコン基板７０に数十ボルトの電圧（Ｖｓｕｂ）を印加することにより基板側に移動し撮像素子から除去される。
【００２６】
次に、フォトダイオード６０の電荷蓄積時間の制御について説明する。ｎ型シリコン基板７０に基板方向掃き出し電圧Ｖｓｕｂが印加されている間、フォトダイオード６０の残留電荷が除去され、電圧Ｖｓｕｂの印加を解除することによりフォトダイオード６０の電荷蓄積が開始される。そして、所定時間経過後、電極Ｖ1 、Ｖ3 に電荷転送パルス信号電圧（ＴＧパルス）が印加され、それまでフォトダイオード６０に蓄積された電荷が垂直転送ＣＣＤ６１の電極に転送される。従って、ｎ型シリコン基板７０に基板方向掃き出し電圧Ｖｓｕｂを印加するタイミングを制御することにより、フォトダイオード６０の電荷蓄積時間を任意に制御できる。
【００２７】
従って、筐体が揺れが大きい場合は電荷蓄積時間を短くするように設定し、筐体の揺れが小さい場合は電荷蓄積時間を長くするように設定し、筐体の状況に応じて電荷蓄積時間を設定すれば、常に信頼性の高い撮像情報を得ることができる。以下、このような制御下による電荷蓄積時間を「電子シャッタースピード」と呼ぶ。
【００２８】
図７はフィールド読み出しの場合のタイミングチャート、図８はフレーム読み出しの場合タイミングチャートである。タイミングチャート中、ＦＩはＣＣＤ駆動回路３２が出力するフィールドインデックス信号であり、ハイが奇数フィールド、ローが偶数フィールドに対応する。
図７において、Ａ７で基板電圧が印加され、フォトダイオード６０（図５参照）の残留電荷が除去される。その後フォトダイオード６０に電荷が蓄積されはじめ、Ｂ７で垂直転送ＣＣＤ６１の電極Ｖ1 、Ｖ3 （図６参照）に同時に電圧が印加されると、フォトダイオード６０に蓄積された奇数フィールドおよび偶数フィールドの電荷が垂直転送ＣＣＤ６１に転送される。垂直転送ＣＣＤ６１では水平転送ＣＣＤ６２から数えて奇数番目のフォトダイオードとその隣の偶数番目のフォトダイオード（ＰＤ1 とＰＤ2 、ＰＤ3 とＰＤ4 ．．．．．）の電荷が加算され、水平転送ＣＣＤ６２（図５参照）に転送される。Ｂ７からＤ７の期間水平転送ＣＣＤ６２から電荷が出力され、１フィールドの画像情報として読み出される。
【００２９】
次いで、Ｃ７で再び基板電圧が印加され、フォトダイオード６０の残留電荷が除去された後、Ｄ７で垂直転送ＣＣＤ６１の電極Ｖ1 、Ｖ3 に同時に電圧が印加され、フォトダイオード６０に蓄積された奇数フィールドおよび偶数フィールドの電荷が垂直転送ＣＣＤ６１に転送される。Ｂ７において垂直転送ＣＣＤ６１では加算した奇数番目のフォトダイオードと偶数番目のフォトダイオードの組み合わせを替えて電荷が加算され（ＰＤ2 とＰＤ3 、ＰＤ4 とＰＤ5 ．．．．．）、水平転送ＣＣＤ６２に転送される。同様にＤ７からＥ７の期間水平転送ＣＣＤ６２から電荷が出力され、１フィールドの画像情報として読み出される。
【００３０】
図８において、Ａ８で基板電圧が印加され、フォトダイオード６０の残留電荷がクリアされる。その後フォトダイオード６０に電荷が蓄積されはじめ、Ｂ８で垂直転送ＣＣＤ６１の電極Ｖ1 に電圧が印加されると、フォトダイオード６０に蓄積された奇数フィールドの電荷が垂直転送ＣＣＤ６１に転送され、電荷は垂直転送ＣＣＤ６１から水平転送ＣＣＤ６２に転送される。同時にＦＩは奇数フィールドを示すハイ信号に切り替わる。Ｂ８からＤ８の期間水平転送ＣＣＤ６２から電荷が出力され、奇数フィールドの画像情報として読み出される。その間、Ｃ８で再び基板電圧が印加され、フォトダイオード６０の残留電荷が除去される。Ｄ８で垂直転送ＣＣＤ６１の電極Ｖ3 に電圧が印加されると、フォトダイオード６０に蓄積された偶数フィールドの電荷が垂直転送ＣＣＤ６１に転送され、次いで水平転送ＣＣＤ６２に転送される。同時にＦＩは偶数フィールドを示すロー信号に切り替わる。Ｄ８からＦ８の期間水平転送ＣＣＤ６２から電荷が出力され、偶数フィールドの画像情報として読み出される。
【００３１】
従って、Ｖ1 、Ｖ3 の電圧印加の位相を制御することにより読み出しモードの切り替えすなわちフィールドモード、フレームモードの切り替えが可能であるが、本実施形態においては構成を簡略にするため常にフィールドモードによる読み出しのみを行う構成としている。
【００３２】
図９は、本実施形態におけるポートＰ1 およびＰ3 の入力値とポートＳ3 およびＳ4 の出力値の関係を示す真理値表である。真理値表においてポートＳ3 の出力値により電子シャッタースピード（電荷蓄積時間）が、またポートＳ4 の出力値により光源に与える電圧が決定される。
【００３３】
真理値表の第１行目は、ポートＰ3 の入力値が「１」すなわちトリガースイッチ１５が押されており、かつポートＰ1 の入力値が「１」すなわち筐体１０の揺れの速さが大きい場合を示している。この場合ポートＳ3 からは「０」すなわち電子シャッタースピードを高速（短時間）にすることを指示する信号が出力され、ポートＳ4 からは「１」すなわち光源に高電圧を与え高照度にすることを指示する信号が出力される。
【００３４】
真理値表の第２行目は、ポートＰ3 の入力値が「１」すなわちトリガースイッチ１５が押されており、かつポートＰ1 の入力値が「０」すなわち筐体１０の揺れの速さが小さい場合を示している。この場合ポートＳ3 からは「１」すなわち電子シャッタースピードを低速（長時間）にすることを指示する信号が出力され、ポートＳ4 からは「０」すなわち光源に低電圧を与え低照度にすることを指示する信号が出力される。
【００３５】
図１０は本実施形態におけるシンボル面の撮像処理からシンボルデータ送信までの処理フローである。尚、フロー中の「高速シャッタモード」「低速シャッターモード」とはシンボル面を撮像する際の撮像モードを意味し、「高速シャッタモード」は電荷蓄積時間を例えば１／１０００秒にすると共に光源に与える電流を例えば４０ｍＡ（ミリアンペア）にして照明光を明るくするモードであり、「低速シャッターモード」とは電荷蓄積時間を例えば１／２５０秒にすると共に光源に与える電流を例えば１０ｍＡにして照明光を暗くするモードである。
【００３６】
処理フローの開始時、シンボル読み取り装置本体の電源はオンされており、ＣＰＵ２０は稼働状態にあり、各駆動回路およびＣＣＤ３５、光源３６は駆動可能な状態にある。ステップ１００ではトリガースイッチ１５が押されているか否かを判断し、押されていればステップ１０１へ進み、押されていない場合は新たな処理は行われない。すなわち、トリガースイッチ１５が押されてシンボル読み取りの処理が開始される。
【００３７】
ステップ１０１においてポートＰ1 の値が確認され、「１」すなわち筐体１０の揺れの速さが大きい場合はステップ１０２へ進み、高速シャッターモードにセットされてシンボル面の画像情報が読み出される。読み出された画像情報は２値化処理や所定の画像処理が施された後メモリに格納され、ステップ１０４へ進む。
【００３８】
一方ポートＰ1 の値が「０」すなわち筐体１０の揺れの速さが小さい場合はステップ１０３に進み、低速シャッターモードにセットされてシンボル面の画像情報が読み出される。読み出された画像情報は同様に２値化処理や所定の画像処理が施された後メモリに格納され、ステップ１０４へ進む。
【００３９】
ステップ１０４ではメモリからシンボル面の画像情報が読み出され、その画像情報からデータシンボルに対応する画素データのみの抽出、すなわちシンボルの抽出処理が行われる。抽出された画素データを基にステップ１０５でデコード処理が施される。ステップ１０５においてデコード処理が成功した場合は、シンボル読み取り成功としてステップ１０６でシンボルの情報が外部のホストコンピュータへ送信される。デコード処理に失敗した場合は、ホストコンピュータへの送信は行われない。尚、シンボル読み取りの結果は、デコードの結果はブザーあるいは筐体に設けられた表示ランプ（図示せず）等により操作者に知らされる。
【００４０】
以上のように本実施形態によれば、角速度センサーにより検出される筐体の揺れの速さに応じて撮像素子の電荷蓄積時間を設定している。そのため、シンボル面の画像情報の信頼性が高くなり、シンボル面の画像情報からシンボル情報を抽出してデコードする際失敗する可能性が低減され、シンボル読み取り成功の確率が高くなる。
【００４１】
さらに、本実施形態では電荷蓄積時間が長い場合はシンボル面に照明光を照射する光源を低照度に設定するため経済的である。
【００４２】
図１１は、本発明の第２実施形態に係るシンボル読み取り装置のブロック図である。
【００４３】
第１実施形態と同様に筐体１０内においてＣＣＤ３５の近傍に配設された角速度センサー４０から筐体１０の揺れの速さに応じた電圧が筐体揺れ検出回路４１に出力され、筐体揺れ検出回路４１では角速度センサー４０からの入力値に応じたアナログ電圧Ｓ1 をＡ／Ｄコンバータ４３に出力する。Ａ／Ｄコンバータ４３はＣＰＵ２０に接続されており、Ａ／Ｄコンバータ４３では入力されたアナログ電圧Ｓ1 を例えば８ビットのデジタル値に変換して出力し、そのデジタル値はＣＰＵ２０のポートＰ1 に入力される。筐体１０の揺れの速さと筐体揺れ検出回路４１の出力値Ｓ1 との関係は第１実施形態と同様である。すなわち、角速度センサー４０が筐体の揺れを検出しない場合は、筐体揺れ検出回路４１から出力されるアナログ電圧Ｓ1 は２Ｖとなる（図３参照）。
【００４４】
また、ＣＰＵ２０にはポートＳ3 およびＳ5 を介してＣＣＤ駆動回路３２が接続されている。ポートＳ3 から出力される制御信号は第１実施形態と同様である。ポートＳ5 の出力値はポートＰ1 に入力されるデジタル値が所定値（２Ｖのデジタル値）を越えているか否かにより決定され、ポートＳ5 の出力値に従ってＣＣＤ駆動回路３２は読み出しモードを切り換えてＣＣＤ３５を駆動する。ポートＰ1 の入力値が所定値に達していなければ、フレームモードによる読み出しを行う信号がポートＳ5 から出力され、ポートＰ1 の入力値が所定値に達するか若しくは所定値を超えている場合はフィールドモードによる読み出しを行う信号がポートＳ5 から出力される。
【００４５】
さらに、ＣＰＵ２０にはフラッシュメモリ４４が接続されている。フラッシュメモリ４４には、ポートＰ1 に入力される各値、すなわちＡ／Ｄ変換された角速度センサーの出力値に対応する電荷蓄積時間および光源の輝度を決定する電圧のデジタル値がテーブルデータとして格納されている。ポートＰ1 のデジタル値がポートＳ2 から出力され、フラッシュメモリ４４のデーブルデータが参照され、Ｓ2 のデジタル値に対応する電荷蓄積時間および光源の輝度を決定する電圧のデジタル値が取得されポートＰ5 を介してＣＰＵ２０に入力される。以上のようにして取得した電荷蓄積時間のデジタル値はポートＳ3 からＣＣＤ駆動回路３２に出力され、光源の輝度を決定する電圧のデジタル値はポートＳ4 から光源駆動回路３３に出力される。その他の構成は第１実施形態と同様である。
【００４６】
図１２は本実施形態におけるシンボル面の撮像処理からシンボルデータ送信までの処理フローである。尚、フローで用いられている「ＤＶ」は、検出回路４１が揺れを検出していない時の出力電圧値である２Ｖの電圧値をデジタル変換した値である。
処理フローの開始時、シンボル読み取り装置本体の電源はオンされており、ＣＰＵ２０は稼働状態にあり、各駆動回路およびＣＣＤ３５、光源３６は駆動可能な状態にある。ステップ２００ではトリガースイッチ１５が押されているか否かを判断し、押されていればステップ２０１へ進み、押されていない場合は新たな処理は行われない。すなわち、トリガースイッチ１５が押されてシンボル読み取りの処理が開始される。
【００４７】
ステップ２０１では、角速度センサー４０から筐体１０の揺れの速さに応じた信号が筐体揺れ検出回路に出力され、角速度センター４０から入力された信号に応じて筐体揺れ検出回路から出力されるアナログ電圧値がＡ／Ｄコンバータによりデジタル値に変換されＣＰＵ２０のポートＰ1 に入力される。
【００４８】
次いでステップ２０２では、ポートＰ1 の値をＤＶと比較する。ポートＰ1 の値がＤＶより大きい場合、すなわち筐体が揺れている場合はステップ２０３に進み、ポートＰ1 の値がＤＶ以下の場合、すなわち筐体が実質的に揺れていない場合はステップ２１１へ進む。
【００４９】
ステップ２０３では、ポートＳ5 から出力される信号が「０」となって撮像素子に蓄積される電荷の読み出しモードがフィールドモードにセットされる。
【００５０】
次いでステップ２０４では、ポートＰ1 に入力されたデジタルの値がポートＳ2 からフラッシュメモリ４４に出力され、フラッシュメモリ４４に内蔵されたテーブルデータが参照され、ステップ２０５でポートＳ2 から出力されるデジタル値に対応する電荷蓄積時間および光源の駆動電流の値を取得する。
【００５１】
ステップ２０６では、ステップ２０５で取得した電荷蓄積時間のデジタル値がポートＳ3 からＣＣＤ駆動回路３２に、光源の駆動電流のデジタル値がポートＳ4 から光源駆動回路３３に出力され、ＣＣＤ３５において所定の電荷蓄積時間の間、所定の光源の輝度もとでシンボル面の撮像が行われる。
【００５２】
次いでステップ２０７でシンボル面の画像情報に２値化処理や所定の画像処理が施された後メモリに格納され、ステップ２０８へ進む。ステップ２０８でメモリからシンボル面の画像情報が読み出され、その画像情報からデータシンボルに対応する画素データのみの抽出、すなわちシンボルの抽出処理が行われ、ステップ２０９でシンボル情報に対してデコード処理が施される。
【００５３】
ステップ２０９においてデコード処理に成功した場合は、シンボル読み取り成功としてステップ２１０でシンボルの情報が外部のホストコンピュータへ送信される。デコード処理に失敗した場合は、ホストコンピュータへの送信は行われない。尚、シンボル読み取りの結果は、デコードの結果はブザーあるいは筐体に設けられた表示ランプ（図示せず）等により操作者に知らされる。
【００５４】
一方、ステップ２１１ではポートＳ5 から出力される信号が「１」となって撮像素子に蓄積される電荷の読み出しモードがフレームモードにセットされる。
【００５５】
次いでステップ２１２では、フレームモードに応じて光源に与える電流が２０ｍＡに、電荷蓄積時間が例えば１／２００秒に決定される。その後ステップ２０６に進み、ステップ２１２で決定された光源の電流による照明光の照度、および電荷蓄積時間のもとでシンボル面の撮像が行われる。以下の処理はフィールドモードの場合と同様である。
【００５６】
以上のように本実施形態においては、筐体１０が揺れている可能性が極めて低い場合は、フレームモードで画像情報の読み出しを行い、筐体１０が揺れている場合は読み出しモードをフィールドモードにし、さらに揺れの速さに応じて電荷蓄積時間および光源の照度を連続的に変化させて画像情報の読み出しを行っている。
【００５７】
第１実施形態で述べたように、フィールドモードで読み出す場合は、偶数フィールドの画素情報と奇数フィールドの画素情報を加算して処理するため、フレームモードによる読み出しに比べると画像情報量が半分に減少する反面、撮像時間（電荷蓄積時間から全画素データ分の読み出しが完了するまでに要する時間）がフレームモードの約半分ですむため筐体が揺れている可能性の高い場合には有効な読み取りモードである。
【００５８】
一方、フレームモードで画像情報を読み出す場合は、電荷蓄積時間および読み出しに要する時間がフィールドモードの２倍の時間を必要とするため、読み取り開口をシンボル面により長時間位置づける必要があり、操作者の手振れ等による外乱に弱い反面、画像情報量が多くデコードの精度が向上するという利点がある。
【００５９】
従って、本実施形態によれば筐体の状況に対応して常に適切な状態でシンボル面の画像情報を読み込むことができ、画像情報の精度が常に高く保たれるのでデコード処理が安定して行われる。
【００６０】
【発明の効果】
以上のように本発明によれば、筐体の固定状態に応じて２次元シンボルの読み取りを安定して行うことができる。
【図面の簡単な説明】
【図１】本発明の第１実施形態に係るシンボル読み取り装置の斜視図である。
【図２】第１実施形態のシンボル読み取り装置のブロック図である。
【図３】筐体の振れ量と筐体揺れ検出回路の出力値との関係を示すグラフである。
【図４】本実施形態のシンボル読み取り装置に用いられるＣＣＤの模式図である。
【図５】ＣＣＤのフォトダイオードと垂直転送ＣＣＤの構成を示す拡大図である。
【図６】ＣＣＤの層構造を示す断面図である。
【図７】フィールドモードによる画像情報の読み出しのタイミングチャートである。
【図８】フレームモードによる画像情報の読み出しのタイミングチャートである。
【図９】シンボル読み取り装置に内蔵されたＣＰＵにおける演算処理の真理値表である。
【図１０】第１本実施形態におけるシンボル読み出しの処理フローである。
【図１１】第２実施形態のシンボル読み取り装置のブロック図である。
【図１２】第２本実施形態におけるシンボル読み出しの処理フローである。
【符号の説明】
１０  筐体
１２  読み取り開口部
１５  トリガー
２０  ＣＰＵ
６０  フォトダイオード
６１  垂直転送ＣＣＤ
６２  水平転送ＣＣＤ
【図１】
0003776989.tif 000002
【図２】
0003776989.tif 000003
【図３】
0003776989.tif 000004
【図４】
0003776989.tif 000005
【図５】
0003776989.tif 000006
【図６】
0003776989.tif 000007
【図７】
0003776989.tif 000008
【図８】
0003776989.tif 000009
【図９】
0003776989.tif 000010
【図１０】
0003776989.tif 000011
【図１１】
0003776989.tif 000012
【図１２】
0003776989.tif 000013