JP3960108B2 - Optical information reader - Google Patents

Optical information reader Download PDF

Info

Publication number
JP3960108B2
JP3960108B2 JP2002117653A JP2002117653A JP3960108B2 JP 3960108 B2 JP3960108 B2 JP 3960108B2 JP 2002117653 A JP2002117653 A JP 2002117653A JP 2002117653 A JP2002117653 A JP 2002117653A JP 3960108 B2 JP3960108 B2 JP 3960108B2
Authority
JP
Japan
Prior art keywords
time
optical information
decoding
exposure
information reading
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2002117653A
Other languages
Japanese (ja)
Other versions
JP2003317031A (en
Inventor
圭介 谷川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Denso Corp
Original Assignee
Denso Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Denso Corp filed Critical Denso Corp
Priority to JP2002117653A priority Critical patent/JP3960108B2/en
Publication of JP2003317031A publication Critical patent/JP2003317031A/en
Application granted granted Critical
Publication of JP3960108B2 publication Critical patent/JP3960108B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、処理速度変更可能なマイクロプロセッサを備えた光学的情報読取装置に関する。
【0002】
【発明が解決しようとする課題】
近年、バーコードハンディターミナルとして、動作クロックの変更可能なマイクロプロセッサを搭載した製品が供給されており、動作クロックを変更することによりユーザの要求性能に合わせることができる。例えば、より高速処理を要求する場合は、動作クロックを高速に設定し、より長時間動作を要求する場合は、動作クロックを低速に設定する。また、デコード時間もマイクロプロセッサの動作クロックに従って変動し、動作クロックが速ければデコード時間は短く、遅ければ長くなる。このデコード時間は設定動作クロックとコード種によって最短時間が予測可能である。
【0003】
図8は、従来の読取動作を示している。この図8において、マイクロプロセッサは、例えばラインセンサに撮像されたバーコードをデコードする際は、ラインセンサを露光させる露光処理とラインセンサからの出力を取込む取込み処理とを交互に実行しながら、取込んだデータをデコードするデコード処理を並列処理するようになっている。この場合、露光時間と取込み時間はラインセンサの仕様により決まるのに対して、デコード時間は上述したようにマイクロプロセッサの動作速度に応じて変動することから、デコード時間によっては図8に示すようにデコード時間内に複数の露光処理と取込み処理とを並列に実行することがある。このため、デコード時間内の最終の露光処理及び取込み処理(デコード直前の露光処理及び取込み処理)以外は無駄であり、それだけ消費電流の増加を伴う。
【0004】
本発明は上記事情に鑑みてなされたものであり、その目的は、読取った光学的情報をデコードしながら次の読取りのための露光処理及び取込み処理を並列処理する処理速度可変なマイクロプロセッサを備えた構成において、無駄な露光処理及び取込み処理を実行してしまうことを防止できる光学的情報読取装置を提供することにある。
【0005】
【課題を解決するための手段】
請求項1の発明によれば、マイクロプロセッサは、光学的情報を読取る場合は、駆動手段を制御することにより光学的情報読取センサを露光させる露光処理を実行してから、光学的情報読取センサからの出力を二値化手段で二値化して取込む取込み処理を実行し、その二値化データをデコードする。このとき、マイクロプロセッサは、光学的情報をデコードしながら露光処理及び取込処理を並列に実行する。この場合、露光時間及び取込時間は一定であるものの、デコード時間はマイクロプロセッサの動作速度に応じて変動する。このため、デコード時間中に露光処理及び取込処理を複数実行する場合があり、デコード時間中の最終の露光処理及び取込処理以外が無駄となる虞がある。
ここで、マイクロプロセッサは、デコード時間中に露光処理及び取込処理を1回のみ実行するので、露光処理及び取込処理を無駄に実行してしまうことはなく、消費電流を低減することができる。
【0006】
また、マイクロプロセッサは、自己の動作速度からデコードに要する時間を予測し、この予測デコード時間から露光処理に要する露光時間及び取込み処理に要する取込み時間を差引いた調整時間を求める。この場合、デコード時間は、露光時間と取込み時間と調整時間とを加算した時間となるので、デコード開始から調整時間が経過したところで露光処理及び取込み処理を順に実行することにより、デコード時間中に露光処理及び取込処理を1回のみ実行することができる。さらに、マイクロプロセッサは、デコードしたデータ数が本来のデータ数よりも少ない場合は、使用者が読取りを行っていないと判断し、予測デコード時間を長くするので、読取間隔が長くなり、消費電流を低減することができる。
【0007】
請求項の発明によれば、マイクロプロセッサは、デコードを実行開始したときは露光処理を実行してから取込み処理を調整時間だけ延長して実行するので、デコード時間中に露光処理及び取込処理を1回のみ実行することができる。
【0008】
請求項の発明によれば、デコードに要した時間を記憶しておき予測デコード時間とするので、予測デコード時間が実際のデコード時間と異なっている場合であっても、デコード時間中に露光処理及び取込処理を1回のみ実行できるようになる。
【0010】
請求項の発明によれば、マイクロプロセッサは、露光処理中は照明手段を駆動するので、照明手段を使用する構成でありながら、消費電流を大きく抑制することができる。
【0011】
【発明の実施の形態】
(第1の実施の形態)
以下、本発明をバーコードハンディターミナル(光学的情報読取センサに相当)に適用した第1の実施の形態を図1ないし図7に基づいて説明する。
バーコードハンディターミナル1はマイクロプロセッサ2を主体として構成されている。照明LED3は赤色発光ダイオードであり、マイクロプロセッサ2からの指令に応じて読取対象となるバーコードラベル4を均一に照明する。バーコードラベル4からの反射光はレンズ5により収束してラインセンサ6上に結像される。ラインセンサ(光学的情報読取センサに相当)6は、照明LED3の発光スペクトラム付近に分光感度を持つ多数のフォトダイオードを直線上に並べた一次元の白黒イメージセンサで、駆動回路(駆動手段に相当)7から与えられるシフトパルスとシフトクロックとにより駆動される。シフトパルスはラインセンサ6内部の蓄積電荷をシフトレジスタに転送するための信号であり、シフトパルスの間隔がラインセンサ走査の露光時間となる。シフトクロックはシフトレジスタからの電荷をセンサ出力として出力させるための信号である。つまり、ラインセンサ6によりバーコードを読むためには、露光時間と取込時間の2つの駆動サイクルが必要となる。
ラインセンサ6からの出力信号は二値化回路(二値化手段に相当)8により二値化され、マイクロプロセッサ2が取込むことによってバーコード情報にデコードされる。
【0012】
キー9は、バーコード読取開始の起動タイミングや例えば日付時刻などを入力するために用いる。ブザー10は、バーコード読取完了を知らせたり、電池電圧低下などの警告に用いる。LCD11は、ユーザへのガイダンスやバーコード読取データなどを表示する。通信ポート12は、バーコードデータなどの蓄積されたデータをホストコンピュータへ転送するために用いる。メモリ13は、バーコードハンディターミナル1を動作させるためのプログラムやデコードされたバーコードデータなどを蓄積する。電源回路14は、電池15からの電圧を各回路ブロック毎に昇圧した状態で供給する。
【0013】
次に上記構成の作用について説明する。
ユーザがキー9のうちのトリガキーを操作すると、バーコードハンディターミナル1のマイクロプロセッサ2はバーコード情報の読取りを実行する。
図2は、バーコードハンディターミナル1のマイクロプロセッサ2による読取りルーチンを示している。この図2において、マイクロプロセッサ2は、まず、初期設定を行う(S101)。この初期設定では、後述の処理フラグ及び調整時間の初期値を設定する。この場合、処理フラグとして「露光」、調整時間としてデフォルト値を設定する。
次に、ラインセンサ6、駆動回路7、二値化回路8などに対し電源を投入する(S102)。
【0014】
次に、ラインセンサ6に溜まっていた不要な電荷を吐き出させるために、駆動回路7からラインセンサ6に対してシフトパルス及びシフトクロックを発生させることによりイニシャル掃出しを行うと共にイニシャル掃出しに要する規定時間分のタイマ割込みを設定する(S103)。この場合、駆動回路7からラインセンサ6に対して与えられるシフトパルスは1パルス、シフトクロックはマルチバイブレータ発振の繰返しクロックであり、ラインセンサ6の感光部に蓄積された電荷がシフトパルスに応じてシフトレジスタに転送されると共に、このシフトレジスタに転送された電荷がシフトクロックに応じて外部に出力されることによりイニシャル掃出しが行われるようになっている(図7に示すイニシャル掃き出し)。
【0015】
次に、マイクロプロセッサ2は、割込み待ちを行い(S104)、上述のステップS103によるタイマ割込みやユーザによるキー操作に対するキー割込みなどが発生するまで、このステップS104で待機する。そして,ステップS103で設定したイニシャル掃出しの規定時間となってタイマ割込みが発生したときは、タイマ割込処理を行う。
【0016】
図3は、マイクロプロセッサ2によるタイマ割込み処理を示している。このタイマ割込み処理は、タイマ割込みが発生した際に実行する処理を決定するためのものである。図3において、マイクロプロセッサ2は、現在の処理フラグに応じてこれから行う処理に分岐する(S201)。最初は読取りルーチンのステップS101において「露光」に設定されていることから、露光処理を実行する(S202)。
【0017】
図4はマイクロプロセッサ2による露光処理を示している。この露光処理は、前回の不要露光の掃出しを行うと共に、バーコードを読取るためにラインセンサ6に規定の露光時間で電荷を蓄積させるためのものである。図4において、マイクロプロセッサ2は、照明LED3をオンしてから(S301)、駆動回路7からシフトクロックを一旦停止した状態でシフトパルスを発生させる(S302)。これにより、ラインセンサ6の感光部に蓄積されている電荷がシフトレジスタに転送され、露光処理の開始となる。
【0018】
次に、露光時間Xmsのタイマ割込みを設定し(S303)、駆動回路7からシフトクロックを発生させてから(S304)、次の処理である「取込み」を処理フラグに設定する(S305)。これにより、シフトレジスタに転送されている不要露光を掃出すことができる。
【0019】
マイクロプロセッサ2は、露光処理が終了し、タイマ割込みが終了すると、図2に示す読取りルーチンにおいて、待機状態から読取り処理自体の終了判断の分岐を行う(S105)。終了する条件はデコードが完了した場合か、ユーザがトリガスイッチを離すなどで読取りを中断する場合で、終了しない場合は(S105:NO)、取込みデータが有るかを判断する(S106)。上述した不要露光の掃出し時にあっては、取込みデータはないので(S106:NO)、割込み待ちの待機状態となる(S104)。
【0020】
そして、上述した露光処理において設定したタイマ割込みXms時間が経過すると、割込みルーチンにおいて再びタイマ割込みが発生し、図3に示すタイマ割込み処理に移行する。このとき、処理フラグが「取込み」であることから、取込処理を行う(S203)。
【0021】
図5は、マイクロプロセッサ2による取込み処理を示している。この取込み処理は前回露光処理で蓄積させた電荷を取込むためのものである。図5において、マイクロプロセッサ2は、照明LED3をオフしてから(S401)、シフトクロックを一旦停止した状態でシフトパルスを発生させる(S402)。これにより、ラインセンサ6の感光部に蓄積された電荷がシフトレジスタに転送され、取込み処理開始となる。
【0022】
次に、取込時間Ymsのタイマ割込みを設定してから(S403)、シフトクロックを発生し(S404)、次の処理である「調整」を処理フラグに設定し(S405)、その後、データ取込みを行う(S406)。データ取込みは例えばDMA機能やゲートアレイによる処理などでマイクロプロセッサ2に負荷がかからない方法で行う。
【0023】
マイクロプロセッサ2は、取込み処理が終了してタイマ割込みが終了すると、図2に示す読取りルーチンにおいて、待機状態から読取り処理自体の終了判断の分岐を行う(S105)。終了しない場合において(S105:NO)、上述した露光処理が終了した状態にあっては、取込みデータが有るので(S106:YES)、データのデコードを実行する(S107)。
【0024】
このとき、タイマ割込みYms時間が経過して再びタイマ割込みが発生すると、図3に示すタイマ割込みにおいて、処理フラグが「調整」であることから、調整処理を実行する(S204)。つまり、デコードを実行開始すると同時に調整処理を実行することになる。
【0025】
図6は、マイクロプロセッサ2による調整処理を示している。この調整処理は、デコード開始から露光処理及び取込み処理の何れも実行しない調整時間を設けるもので、後述するようにデコード時間を予測し、そのデコード時間から露光時間及び取込み時間を差引いた時間である。図6において、マイクロプロセッサ2は、照明LED3をオフしてから(S501)、駆動回路7からシフトクロックを一旦停止した状態でシフトパルスを発生させる(S502)。これにより、ラインセンサ6の不要露光がシフトレジスタに転送される。
【0026】
次に、調整時間Zmsのタイマ割込みを設定し(S503)、駆動回路7からシフトクロックを発生してから(S504)、次の処理である「露光」を処理フラグに設定する(S505)。これにより、ラインセンサ6のシフトレジスタの不要露光が掃出される(図7に示す調整時間1)。
【0027】
以上のような調整処理が終了してタイマ割込みZms時間が経過すると、再びタイマ割込みが発生する。このとき、図3に示すタイマ割込みにおいて、処理フラグが「露光」であることから、露光処理が選択されて上述した露光処理を実行する(図7に示す露光時間2)。
【0028】
また、露光処理が終了してタイマ割込みXms時間が経過すると、再びタイマ割込みが発生する。このとき、図3に示すタイマ割込みにおいて、処理フラグが「取込み」であることから、取込み処理が選択されて上述した取込み処理を実行し(図7に示す取込み時間2)、タイマ割込みYmsを設定する。
【0029】
ここで、調整時間は、後述するように予測したデコード時間から露光時間と取込み時間とを差引いた時間であることから、デコードが終了すると同時にタイマ割込みYms時間が経過するようになり、マイクロプロセッサ2は、次のデコード開始と同時に調整処理を実行するようになる。
尚、デコード処理が終了すると、デコードが完了した場合は終了するが、万一終了しない場合は、次の取込みデータによってデコードを行うようになっている。
【0030】
ところで、本実施の形態のバーコードハンディターミナル1は、動作クロックの変更可能なマイクロプロセッサ2を搭載しており、高速処理を要求する場合は動作クロックを高速に設定し、より長時間動作を要求する場合には動作クロックを低速に設定するようになっている。この場合、デコード時間もマイクロプロセッサ2の動作クロックの速度に応じて変動し、動作クロックが速ければデコード時間は短く、遅ければ長くなる。
【0031】
しかるに、上述した調整時間Zmsはこのデコード時間の変動を吸収するために設定されているもので、調整時間Z>0の場合はデコード時間=露光時間X+取込み時間Y+調整時間Zであり、調整時間Z=0の場合のみデコード時間=露光時間X+取込み時間Yの関係となる。
【0032】
図7は、ラインセンサ6の駆動タイミングを示している。この図7では、デコード時間=露光時間+取込み時間+調整時間(Z>0)になった場合を示している。図8に示した従来の方法では、上述した調整時間を持たないため、不要な露光時間・取込み時間が発生しているのに対して、本実施の形態では不要な露光時間・取込み時間が発生してしまうことを防止できることが分る。
【0033】
このような実施の形態によれば、読取ったバーコードをデコードしながら、露光処理及び取込み処理を並列処理するマイクロプロセッサ2において、デコード時間内に露光処理及び取込み処理を1回のみ実行するようにしたので、無駄な露光処理及び取込み処理を実行することがなくなり、デコード時間内に複数回の露光処理及び取込み処理を実行してしまうことがある従来例のものと違って、マイクロプロセッサ2の消費電流を低減することができる。
【0034】
しかも、マイクロプロセッサ2は動作速度変更可能であるものの、自己の動作速度からデコード時間を予測し、その予測デコード時間から露光処理及び取込み時間を差引いた調整時間を求め、デコードを実行開始したときは調整時間が経過したところで露光処理及び取込み処理を順に実行するようにしたので、デコード時間内に露光処理及び取込み処理を1回のみ実行することができる。
【0035】
参考の実施の形態)
次に、参考の実施の形態を説明する。この参考の実施の形態は取込み時間を調整することにより、デコード時間内で不要な露光処理及び取込み処理を実行しないことを特徴とする。
即ち、第1の実施の形態では、デコード時間内に調整時間を設けるようにしたが、取込み時間として調整時間を含めた時間を設定することにより、第1の実施の形態と同一の作用効果を得るものである。この場合、調整時間Z>0の場合は、デコード時間=露光時間X+取込み時間(Y+Z)であり、調整時間Z=0の場合のみ、デコード時間≦露光時間X+取込み時間Yの関係となる。
このような実施の形態によれば、第1の実施の形態のような調整時間を設けることなく、取込み時間の調整だけで実施することができる。
【0036】
本発明は、上記第1の実施の形態に限定されるものではなく、次のように変形または拡張することができる。
予測デコード時間として予めメモリに設定した値を使用するのに代えて、実際のデコード時間を記憶しておき、そのデコード時間を予測デコード時間として用いるようにしてもよい。つまり、デコード時間はマイクロプロセッサ2の動作クロックの周期、読取対象のデコードコード種により最短時間の予測は可能であるものの、コード長(桁数)やラベルの状態によりデコード時間が影響されるので、前回の実際のデコード時間を使用することにより精度を高めることができる。
【0037】
マイクロプロセッサ2が取込んだバーの本数によって、明らかにバーコードを構成できないと判断された場合、つまり、ユーザがバーコードラベルを読もうとしていない場合は、調整時間ひいては予測デコード時間を長くして、読取動作を実行する間隔を長くすることにより消費電流を低減させるようにしてもよい。
【0038】
デコード時間内に、露光処理及び取込み処理に続けて調整処理を実行するようにしてもよいし、露光処理に続けて調整処理を実行してから取込み処理を実行するようにしてもよい。
ラインセンサが電気的なシャッタ機能を有する場合は、照明LEDを点灯状態に保持するようにしてもよい。
ラインセンサに代えて2次元センサを用いるようにしてもよい。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態における全体構成を概略的に示すブロック図
【図2】マイクロプロセッサによる読取りルーチンを示すフローチャート
【図3】マイクロプロセッサによるタイマ割込み処理を示すフローチャート
【図4】マイクロプロセッサによる露光処理を示すフローチャート
【図5】マイクロプロセッサによる取込み処理を示すフローチャート
【図6】マイクロプロセッサによる調整処理を示すフローチャート
【図7】シフトパルスと照明LEDの点灯タイミングを示す図
【図8】従来例を示す図7相当図
【符号の説明】
1はバーコードハンディターミナル(光学的情報読取装置)、2はマイクロプロセッサ、3は照明LED(照明手段)、4はバーコードラベル、6はラインセンサ(光学的情報読取センサ)、7は駆動回路(駆動手段)、8は二値化回路(二値化手段)である。
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an optical information reader having a microprocessor capable of changing the processing speed.
[0002]
[Problems to be solved by the invention]
In recent years, products equipped with a microprocessor whose operation clock can be changed have been supplied as a barcode handy terminal. By changing the operation clock, it is possible to match the performance required by the user. For example, when requesting higher speed processing, the operation clock is set to a higher speed, and when requesting operation for a longer time, the operation clock is set to a lower speed. Also, the decoding time varies according to the operation clock of the microprocessor, and if the operation clock is fast, the decoding time is short, and if it is slow, the decoding time is long. This decoding time can be predicted by the set operation clock and the code type.
[0003]
FIG. 8 shows a conventional reading operation. In FIG. 8, for example, when decoding a barcode imaged by the line sensor, the microprocessor alternately executes an exposure process for exposing the line sensor and a capture process for capturing the output from the line sensor, The decoding process for decoding the fetched data is processed in parallel. In this case, while the exposure time and the capture time are determined by the specifications of the line sensor, the decoding time varies depending on the operation speed of the microprocessor as described above, so that depending on the decoding time, as shown in FIG. A plurality of exposure processes and capture processes may be executed in parallel within the decoding time. For this reason, the processes other than the final exposure process and capture process within the decode time (exposure process and capture process immediately before decoding) are useless, and the current consumption increases accordingly.
[0004]
The present invention has been made in view of the above circumstances, and an object thereof is to provide a microprocessor with a variable processing speed that performs parallel processing of exposure processing and capture processing for the next reading while decoding the read optical information. Another object of the present invention is to provide an optical information reading apparatus that can prevent unnecessary exposure processing and capture processing from being executed.
[0005]
[Means for Solving the Problems]
According to the first aspect of the present invention, when the optical information is read, the microprocessor executes an exposure process for exposing the optical information reading sensor by controlling the driving unit, and then performs the exposure processing from the optical information reading sensor. The binarization unit binarizes the output of the output and fetches the binarized data, and decodes the binarized data. At this time, the microprocessor executes the exposure process and the capture process in parallel while decoding the optical information. In this case, although the exposure time and the capture time are constant, the decoding time varies depending on the operation speed of the microprocessor. For this reason, there are cases where a plurality of exposure processes and capture processes are executed during the decode time, and there is a possibility that other than the final exposure process and capture process during the decode time will be wasted.
Here, since the microprocessor executes the exposure process and the capture process only once during the decoding time, the exposure process and the capture process are not performed wastefully, and the current consumption can be reduced. .
[0006]
Further , the microprocessor predicts the time required for decoding from its own operation speed, and obtains an adjustment time obtained by subtracting the exposure time required for the exposure processing and the acquisition time required for the acquisition processing from the predicted decoding time. In this case, since the decoding time is a time obtained by adding the exposure time, the capture time, and the adjustment time, the exposure process and the capture process are performed in sequence when the adjustment time has elapsed from the start of decoding, so that the exposure is performed during the decode time. The process and the capture process can be executed only once. Furthermore, when the number of decoded data is less than the original number of data, the microprocessor determines that the user is not reading and increases the predicted decoding time, thus increasing the reading interval and reducing the current consumption. Can be reduced.
[0007]
According to the second aspect of the present invention, when the decoding is started, the microprocessor executes the exposure process and then extends the capture process by the adjustment time, so that the exposure process and the capture process are performed during the decode time. Can be executed only once.
[0008]
According to the invention of claim 3 , since the time required for decoding is stored and used as the predicted decoding time, the exposure processing is performed during the decoding time even when the predicted decoding time is different from the actual decoding time. And the capture process can be executed only once.
[0010]
According to the fourth aspect of the present invention, since the microprocessor drives the illumination unit during the exposure process, the consumption current can be greatly suppressed while the illumination unit is used.
[0011]
DETAILED DESCRIPTION OF THE INVENTION
(First embodiment)
Hereinafter, a first embodiment in which the present invention is applied to a barcode handy terminal (corresponding to an optical information reading sensor) will be described with reference to FIGS.
The bar code handy terminal 1 is composed mainly of a microprocessor 2. The illumination LED 3 is a red light emitting diode, and uniformly illuminates the barcode label 4 to be read in response to a command from the microprocessor 2. The reflected light from the barcode label 4 is converged by the lens 5 and formed on the line sensor 6. A line sensor (corresponding to an optical information reading sensor) 6 is a one-dimensional black-and-white image sensor in which a large number of photodiodes having spectral sensitivity are arranged in a straight line near the emission spectrum of the illumination LED 3, and is a driving circuit (corresponding to a driving means). ) It is driven by the shift pulse and shift clock given from 7. The shift pulse is a signal for transferring the charge accumulated in the line sensor 6 to the shift register, and the interval between the shift pulses becomes the exposure time of the line sensor scan. The shift clock is a signal for outputting the charge from the shift register as a sensor output. That is, in order to read the bar code by the line sensor 6, two driving cycles of exposure time and capture time are required.
An output signal from the line sensor 6 is binarized by a binarization circuit (corresponding to binarization means) 8 and is decoded into bar code information by being taken in by the microprocessor 2.
[0012]
The key 9 is used to input a start timing for starting barcode reading, for example, a date and time. The buzzer 10 is used for notifying completion of barcode reading or for warnings such as a battery voltage drop. The LCD 11 displays guidance to the user, barcode reading data, and the like. The communication port 12 is used to transfer accumulated data such as barcode data to the host computer. The memory 13 stores a program for operating the barcode handy terminal 1 and decoded barcode data. The power supply circuit 14 supplies the voltage from the battery 15 in a state where it is boosted for each circuit block.
[0013]
Next, the operation of the above configuration will be described.
When the user operates the trigger key of the keys 9, the microprocessor 2 of the barcode handy terminal 1 reads the barcode information.
FIG. 2 shows a reading routine by the microprocessor 2 of the bar code handy terminal 1. In FIG. 2, the microprocessor 2 first performs an initial setting (S101). In this initial setting, the processing flag and the initial value of the adjustment time described later are set. In this case, “exposure” is set as the processing flag, and a default value is set as the adjustment time.
Next, power is turned on to the line sensor 6, the drive circuit 7, the binarization circuit 8, etc. (S102).
[0014]
Next, in order to discharge unnecessary charges accumulated in the line sensor 6, the drive circuit 7 generates a shift pulse and a shift clock from the line sensor 6 to perform the initial sweep and a specified time required for the initial sweep. Minute timer interrupt is set (S103). In this case, the shift pulse supplied from the drive circuit 7 to the line sensor 6 is one pulse, the shift clock is a repetitive clock of multivibrator oscillation, and the electric charge accumulated in the photosensitive part of the line sensor 6 corresponds to the shift pulse. In addition to being transferred to the shift register, the electric charge transferred to the shift register is output to the outside in accordance with the shift clock, whereby initial sweep is performed (initial sweep shown in FIG. 7).
[0015]
Next, the microprocessor 2 waits for an interrupt (S104), and waits in this step S104 until a timer interrupt in the above-described step S103 or a key interrupt for a key operation by the user occurs. Then, when a timer interrupt occurs at the initial sweep specified time set in step S103, a timer interrupt process is performed.
[0016]
FIG. 3 shows timer interrupt processing by the microprocessor 2. This timer interrupt process is for determining a process to be executed when a timer interrupt occurs. In FIG. 3, the microprocessor 2 branches to the processing to be performed from now on according to the current processing flag (S201). Initially, since “exposure” is set in step S101 of the reading routine, exposure processing is executed (S202).
[0017]
FIG. 4 shows an exposure process by the microprocessor 2. This exposure process is for sweeping out the previous unnecessary exposure and for accumulating charges in the line sensor 6 for a specified exposure time in order to read the barcode. In FIG. 4, after turning on the illumination LED 3 (S301), the microprocessor 2 generates a shift pulse with the shift clock temporarily stopped from the drive circuit 7 (S302). Thereby, the electric charge accumulated in the photosensitive part of the line sensor 6 is transferred to the shift register, and the exposure process is started.
[0018]
Next, a timer interrupt with an exposure time Xms is set (S303), a shift clock is generated from the drive circuit 7 (S304), and the next process "take-in" is set as a process flag (S305). Thereby, unnecessary exposure transferred to the shift register can be swept out.
[0019]
When the exposure process is finished and the timer interrupt is finished, the microprocessor 2 branches the end of the reading process itself from the standby state in the reading routine shown in FIG. 2 (S105). The condition for ending is when the decoding is completed or when reading is interrupted by the user releasing the trigger switch or the like, and when the reading is not finished (S105: NO), it is determined whether there is captured data (S106). At the time of sweeping out the unnecessary exposure described above, since there is no fetched data (S106: NO), it enters a standby state waiting for an interrupt (S104).
[0020]
When the timer interrupt Xms time set in the above-described exposure process elapses, a timer interrupt occurs again in the interrupt routine, and the process proceeds to the timer interrupt process shown in FIG. At this time, since the processing flag is “take-in”, the take-in process is performed (S203).
[0021]
FIG. 5 shows the capturing process performed by the microprocessor 2. This take-in process is for taking in the charges accumulated in the previous exposure process. In FIG. 5, after turning off the illumination LED 3 (S401), the microprocessor 2 generates a shift pulse with the shift clock temporarily stopped (S402). Thereby, the electric charge accumulated in the photosensitive part of the line sensor 6 is transferred to the shift register, and the capturing process is started.
[0022]
Next, after setting a timer interrupt for the capture time Yms (S403), a shift clock is generated (S404), the next process "adjustment" is set in the process flag (S405), and then the data capture (S406). Data acquisition is performed by a method that does not put a load on the microprocessor 2 by, for example, processing by a DMA function or a gate array.
[0023]
When the capture process is finished and the timer interrupt is finished, the microprocessor 2 branches the end of the read process itself from the standby state in the read routine shown in FIG. 2 (S105). If not completed (S105: NO), in the state where the above-described exposure process has been completed, since there is captured data (S106: YES), data decoding is executed (S107).
[0024]
At this time, when the timer interrupt Yms time elapses and a timer interrupt occurs again, an adjustment process is executed because the process flag is “adjustment” in the timer interrupt shown in FIG. 3 (S204). That is, the adjustment process is executed simultaneously with the start of the decoding.
[0025]
FIG. 6 shows adjustment processing by the microprocessor 2. This adjustment process provides an adjustment time during which neither the exposure process nor the capture process is executed from the start of decoding. The decode time is predicted as will be described later, and the exposure time and the capture time are subtracted from the decode time. . In FIG. 6, after turning off the illumination LED 3 (S501), the microprocessor 2 generates a shift pulse with the shift clock temporarily stopped from the drive circuit 7 (S502). Thereby, the unnecessary exposure of the line sensor 6 is transferred to the shift register.
[0026]
Next, a timer interrupt of the adjustment time Zms is set (S503), a shift clock is generated from the drive circuit 7 (S504), and the next process "exposure" is set as a process flag (S505). Thereby, unnecessary exposure of the shift register of the line sensor 6 is swept out (adjustment time 1 shown in FIG. 7).
[0027]
When the adjustment process as described above is completed and the timer interrupt Zms time has elapsed, a timer interrupt is generated again. At this time, since the process flag is “exposure” in the timer interruption shown in FIG. 3, the exposure process is selected and the above-described exposure process is executed (exposure time 2 shown in FIG. 7).
[0028]
In addition, when the timer interruption Xms time has elapsed after the exposure process is completed, a timer interruption occurs again. At this time, since the processing flag in the timer interrupt shown in FIG. 3 is “take-in”, the take-in process is selected and the above-described take-in process is executed (take-in time 2 shown in FIG. 7), and the timer interrupt Yms is set. To do.
[0029]
Here, since the adjustment time is a time obtained by subtracting the exposure time and the capture time from the predicted decoding time as will be described later, the timer interrupt Yms time elapses at the same time as the decoding ends, and the microprocessor 2 The adjustment process is executed simultaneously with the start of the next decoding.
When the decoding process is completed, the decoding process is completed when the decoding process is completed. If the decoding process is not completed, the decoding process is performed using the next fetched data.
[0030]
By the way, the barcode handy terminal 1 of this embodiment is equipped with a microprocessor 2 capable of changing the operation clock. When a high-speed process is required, the operation clock is set to a high speed and a longer operation is required. When doing so, the operation clock is set to a low speed. In this case, the decoding time also varies according to the speed of the operation clock of the microprocessor 2, and if the operation clock is fast, the decoding time is short, and if it is slow, it becomes long.
[0031]
However, the above-described adjustment time Zms is set to absorb the variation in the decode time. When the adjustment time Z> 0, the decode time = exposure time X + acquisition time Y + adjustment time Z. Only when Z = 0, the relationship of decoding time = exposure time X + capture time Y is established.
[0032]
FIG. 7 shows the drive timing of the line sensor 6. FIG. 7 shows a case where decoding time = exposure time + acquisition time + adjustment time (Z> 0). Since the conventional method shown in FIG. 8 does not have the above-described adjustment time, unnecessary exposure time and capture time are generated, whereas in this embodiment, unnecessary exposure time and capture time are generated. It can be seen that this can be prevented.
[0033]
According to such an embodiment, in the microprocessor 2 that processes the exposure process and the capture process in parallel while decoding the read barcode, the exposure process and the capture process are executed only once within the decoding time. As a result, useless exposure processing and capture processing are not executed, and the consumption of the microprocessor 2 is different from the conventional example in which exposure processing and capture processing are executed a plurality of times within the decoding time. The current can be reduced.
[0034]
Moreover, although the operation speed can be changed, the microprocessor 2 predicts the decode time from its own operation speed, obtains an adjustment time obtained by subtracting the exposure process and the capture time from the predicted decode time, and starts decoding. Since the exposure process and the capture process are sequentially executed when the adjustment time has elapsed, the exposure process and the capture process can be performed only once within the decoding time.
[0035]
( Reference embodiment)
Next, a reference embodiment will be described. This reference embodiment is characterized in that unnecessary exposure processing and capture processing are not executed within the decoding time by adjusting the capture time.
That is, in the first embodiment, the adjustment time is provided within the decoding time. However, by setting the time including the adjustment time as the capture time, the same effect as the first embodiment can be obtained. To get. In this case, when adjustment time Z> 0, decode time = exposure time X + capture time (Y + Z). Only when adjustment time Z = 0, the relationship of decode time ≦ exposure time X + capture time Y is established.
According to such an embodiment, the adjustment can be performed only by adjusting the capture time without providing the adjustment time as in the first embodiment.
[0036]
The present invention is not limited to the first embodiment, and can be modified or expanded as follows.
Instead of using a value set in the memory in advance as the predicted decoding time, the actual decoding time may be stored and used as the predicted decoding time. That is, the decoding time can be predicted by the cycle of the operation clock of the microprocessor 2 and the decoding code type to be read, but the decoding time is affected by the code length (number of digits) and the state of the label. Accuracy can be increased by using the previous actual decoding time.
[0037]
If it is determined that the barcode cannot be clearly formed by the number of bars taken in by the microprocessor 2, that is, if the user is not trying to read the barcode label, the adjustment time and therefore the predicted decoding time are increased. The current consumption may be reduced by increasing the interval at which the reading operation is performed.
[0038]
Within the decoding time, the adjustment process may be executed subsequent to the exposure process and the capture process, or the capture process may be performed after the adjustment process is performed following the exposure process.
When the line sensor has an electrical shutter function, the illumination LED may be held in a lighting state.
A two-dimensional sensor may be used instead of the line sensor.
[Brief description of the drawings]
FIG. 1 is a block diagram schematically showing an overall configuration according to a first embodiment of the present invention. FIG. 2 is a flowchart showing a read routine by a microprocessor. FIG. 3 is a flowchart showing timer interrupt processing by a microprocessor. 4] Flow chart showing the exposure process by the microprocessor [FIG. 5] Flow chart showing the capture process by the microprocessor [FIG. 6] Flow chart showing the adjustment process by the microprocessor [FIG. 7] FIG. FIG. 8 is a diagram corresponding to FIG. 7 showing a conventional example.
1 is a barcode handy terminal (optical information reader), 2 is a microprocessor, 3 is an illumination LED (illumination means), 4 is a barcode label, 6 is a line sensor (optical information reader), 7 is a drive circuit (Drive means) 8 is a binarization circuit (binarization means).

Claims (6)

光学的情報が撮像される光学的情報読取センサと、
この光学的情報読取センサを駆動する駆動手段と、
前記光学的情報読取センサからの出力を二値化する二値化手段と、
前記駆動手段を制御することにより前記光学的情報読取センサを露光させる露光処理を実行してから、前記光学的情報読取センサからの出力を前記二値化手段で二値化して取込む取込み処理を実行し、この取込み処理で取込んだ二値化データをデコードしながら前記露光処理及び前記取込み処理を並列処理する処理速度変更可能なマイクロプロセッサを備えた光学的情報読取装置において、
前記マイクロプロセッサは、前記デコード時間中に前記露光処理及び取込み処理を1回のみ実行すると共に、自己の動作速度からデコードに要する時間を予測し、この予測デコード時間から前記露光処理に要する露光時間及び前記取込み処理に要する取込み時間を差引いた調整時間を求め、前記デコード開始から前記調整時間が経過したところで前記露光処理及び前記取込み処理を順に実行し、さらにデコードしたデータ数が本来のデータ数よりも少ない場合は、前記予測デコード時間を長くすることを特徴とする光学的情報読取装置。
An optical information reading sensor for imaging optical information;
Driving means for driving the optical information reading sensor;
Binarization means for binarizing the output from the optical information reading sensor;
An exposure process for exposing the optical information reading sensor by controlling the driving unit is executed, and then an acquisition process for binarizing the output from the optical information reading sensor by the binarizing unit and taking in the output In an optical information reading apparatus comprising a microprocessor capable of executing processing and changing the exposure speed and the capture process in parallel while decoding the binarized data captured by the capture process and processing the capture process in parallel,
The microprocessor executes the exposure process and the capture process only once during the decoding time, and predicts the time required for decoding from its own operation speed. From the predicted decoding time, the exposure time required for the exposure process and An adjustment time obtained by subtracting the acquisition time required for the acquisition process is obtained, and the exposure process and the acquisition process are sequentially performed when the adjustment time has elapsed from the start of the decoding, and the number of decoded data is more than the original number of data. In the case where the number is small, the optical decoding device is characterized in that the prediction decoding time is lengthened .
前記マイクロプロセッサは、前記デコードを実行開始したときは前記デコード開始から前記調整時間が経過したところで前記露光処理及び前記取込み処理を順に実行するのに代えて、前記露光処理を実行してから前記取込み処理を前記調整時間だけ延長して実行することを特徴とする請求項1記載の光学的情報読取装置。When the microprocessor starts executing the decoding, instead of sequentially executing the exposure process and the capture process when the adjustment time has elapsed from the start of the decode , the microprocessor executes the exposure process and then performs the capture. The optical information reading apparatus according to claim 1 , wherein the process is executed by extending the adjustment time . 前記マイクロプロセッサは、デコードに要した時間を記憶しておき予測デコード時間とすることを特徴とする請求項1または2記載の光学的情報読取装置。 3. The optical information reading apparatus according to claim 1 , wherein the microprocessor stores a time required for decoding and sets the predicted decoding time . 照明手段を設け、
前記マイクロプロセッサは、前記露光処理中は前記照明手段を駆動することを特徴とする請求項1ないし3の何れかに記載の光学的情報読取装置。
Provide lighting means,
4. The optical information reading apparatus according to claim 1 , wherein the microprocessor drives the illumination unit during the exposure process .
前記光学的情報読取センサはラインセンサであることを特徴とする請求項1ないし4の何れかに記載の光学的情報読取装置。 5. The optical information reading apparatus according to claim 1, wherein the optical information reading sensor is a line sensor . 前記光学的情報読取センサは2次元センサであることを特徴とする請求項1ないしの何れかに記載の光学的情報読取装置Optical information reading apparatus according to any one of claims 1 to 4, wherein the optical information reading sensor is a two-dimensional sensor
JP2002117653A 2002-04-19 2002-04-19 Optical information reader Expired - Fee Related JP3960108B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002117653A JP3960108B2 (en) 2002-04-19 2002-04-19 Optical information reader

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002117653A JP3960108B2 (en) 2002-04-19 2002-04-19 Optical information reader

Publications (2)

Publication Number Publication Date
JP2003317031A JP2003317031A (en) 2003-11-07
JP3960108B2 true JP3960108B2 (en) 2007-08-15

Family

ID=29534782

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002117653A Expired - Fee Related JP3960108B2 (en) 2002-04-19 2002-04-19 Optical information reader

Country Status (1)

Country Link
JP (1) JP3960108B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4930172B2 (en) * 2007-04-23 2012-05-16 株式会社デンソーウェーブ Optical information reader
JP5251964B2 (en) * 2009-11-24 2013-07-31 株式会社デンソーウェーブ Optical information reader
JP2012064178A (en) * 2010-09-17 2012-03-29 Keyence Corp Optical information reader

Also Published As

Publication number Publication date
JP2003317031A (en) 2003-11-07

Similar Documents

Publication Publication Date Title
CN105868668B (en) Low power multi-core decoder system and method
EP1717728B1 (en) Optical reader having partial frame operating mode
US9582696B2 (en) Imaging apparatus having imaging assembly
US5576529A (en) Hand-held optically readable information set reader focus with operation over a range of distances
US5640001A (en) Hand-held instant bar code reader having automatic focus control for operation over a range of distances
CN1179583C (en) Radio communication apparatus with power consumption reduced
JP2785534B2 (en) Information reader
US4567360A (en) Optical reading apparatus
JP3960108B2 (en) Optical information reader
US7519239B2 (en) Systems and methods for concurrent image capture and decoding of graphical codes
JP3244040B2 (en) Optical information reader
JPH0844812A (en) Optical information reader
JP4232291B2 (en) Optical information reader
JP4403991B2 (en) Information code reader and control method of information code reader
JP2004326546A (en) Device and method for reading information code
JPH06290292A (en) Laser lighting controller
CN117710956A (en) Data acquisition method, device and storage medium for information code reading device
JP3639968B2 (en) Bar code reader
JP3918713B2 (en) Optical information reader
JPS6295682A (en) Bar code reader
JP2004133689A (en) Two-dimensional code read method and device thereof
JPH06261187A (en) Optical information reader
JP2002281189A (en) Facsimile machine
JPH1049614A (en) Device for reading symbol
JPH01102690A (en) Code recognition system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040603

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070131

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070206

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070316

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070424

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070507

R150 Certificate of patent (=grant) or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees