説明

高速光学コード読取

光学コードリーダにおいて、少なくともAGC処理とオートフォーカス制御のうちの選択された一つが光学コードのデコードと並行して実行される。選択された処理は、デコードを開始するどの信号よりも先に開始されるとよい。選択された処理はまた、デコードを開始するどの信号からも独立して周期的に実行されるのがよい。実施形態においては、デコードと選択された処理とは、並行動作する異なる第1及び第2のプロセッサによってそれぞれ実行され、第2のプロセッサは選択された処理を実行し、第1のプロセッサは選択された処理の実行に対していかなる制御も行わない。

【発明の詳細な説明】
【技術分野】
【0001】
この発明は光学コードを検出して読み取る装置に関し、特に、並行処理により高速動作を実現する光学コード読取装置及び光学コード読取方法に関する。
【背景技術】
【0002】
近頃のスーパーマーケットで買い物をする人なら誰でも、製品のパッケージに印刷されたバーコードを走査することによって、迅速な精算を容易にするバーコードスキャナが光学コードリーダの一形態として馴染がある。これは、バーコードを走査するために作業者によってパッケージが基本的に静止されるので、バーコード読み取りの適用が比較的容易である。
【0003】
最近では、製品の組立、検査、梱包などが行われる製造ラインにおいても、光学コードリーダが利用されるようになってきている。この光学コード読み取りの適用は、製品が製造ラインを、例えばコンベアベルト上で比較的速い速度で移動していくので、より多くの要求がなされる。いくつかの実例において、光学コードが二次元である場合には、より複雑な光学コードのデコードが必要とされる。製造ライン上に隘路を作らないようにするため、製造ラインを製品が移動する速度を落とすことなく、光学コードの正確なデコード(復号)が行われることが重要である。そのため、光学コードを正確にデコードできる速さが最も重要になる。
【0004】
一般に、光学コードリーダは離れた光学コードをし、その光学コードをデコードするために反射光を処理する(光学コードに含まれる情報を復元する)。光学コードを読み取るためのセットアップ処理中に、一般に光学コードリーダは自動利得制御(AGC)回路を調整し、光学コード上へ自動焦点合わせ(オートフォーカス)を行う。AGC回路は、検出される光学信号の強さが変動しても、処理回路に与えられる信号が所定の動作範囲内の振幅を有するのを確実にするために、リーダ内の電子回路を調整する。オートフォーカスは、光学コードリーダがそのコードリーダと光学コードとの間の所定の距離範囲に亘って焦点が合った画像を得るのを確実にし、そのコードリーダの被写界深度を効果的に増加させる。
【0005】
図1は光学コードをデコードする従来の光学コードリーダによって用いられる一般的な処理を示すフロー図である。光学コードリーダに最初に電源が投入されたときに、この処理がブロック100から開始される。ブロック102でトリガーコマンドが受信されたかどうかを判断するためのテストが実行され、それが受信されるまで動作はこのステップに留まる。一般に、トリガーコマンドは光学コードリーダの所定の動作範囲内で光学コードを含む物体が検出されたときに発生される。トリガーコマンドが発生した時、処理はブロック104に進み、そこでAGCが調整される。それからブロック106へ進み、そこでコントラストが検出される。コントラスト測定は焦点の質をテストするための方法である。処理はそれから自動焦点調整されるブロック108へ進む。
【0006】
ブロック110では取得したコードがデコードされ、それからブロック112で、デコードが成功したかどうかを判断するためのテストが実行される。成功した場合は、ブロック114でデコードの成功結果が記録され、処理はブロック102に戻り、次のトリガーコマンドを待つ。もし、ブロック112におけるテストによりデコードが成功しなかったことが明らかになったら、ブロック116でデコードを所定回数(N)試みたかどうかを判断するためのテストが実行される。デコードをN回試みたと判断した場合は、制御はブロック114に移行し、そのブロック114でデコードが不成功の結果が記録され、処理はブロック102に戻り、次のトリガーコマンドを待つ。デコードをN回試みていないと判断した場合は、ブロック116でのテストからブロック104にその制御を移す。そして、AGCが再調節され、コントラストが再検出され、焦点が再調整され、その光学コードのデコードを再度試みる。
【0007】
この従来技術による図1の処理の問題は、AGCの調節及び自動焦点調整の処理に比較的時間を要することである。光学コードが検出範囲内に入った後繰り返しループでそれらが実行されることは、デコードの速度に深刻な制約を負わす程大きな遅延をもたらし、高速の製造ライン上を移動する物体の光学コードの信頼性のあるデコードを実現できない程深刻であった。
【発明の概要】
【0008】
この発明の一態様によれば、AGC処理とオートフォーカス制御(自動焦点制御)のうちの少なくとも選択された一方が光学コードのデコードと並行して行なわれる。その選択された処理はデコードを開始するどの信号よりも先に開始されるのが望ましい。その選択された処理はまた、周期的に且つデコードを開始するどの信号からも独立して実行されるとよい。実施例においては、デコードとその選択された処理とが、それぞれ並行動作する第1及び第2の異なるプロセッサによって実行され、第1のプロセッサがその選択された処理の実行を制御することなく、第2のプロセッサがその選択された処理を実行する。
【0009】
この発明の上述の及び他の目的、特徴並びに利点は、以下に詳述するこの発明の好ましい実施形態の記載を添付図面と共に参照することによって、より完全に理解されるであろう。
【図面の簡単な説明】
【0010】
【図1】光学コードをデコードする従来の光学コードリーダによって用いられる一般的な処理を説明するためのフロー図である。
【図2】この発明を実施した光学コードリーダの機能ブロック図である。
【図3】(A)と(B)からなり、光学コードを有する物体とコードリーダとの間の距離を判断する方法を説明するための図である。
【図4】CPU2の好ましい動作方法を説明するためのフロー図である。
【図5】CPU1の好ましい動作方法を説明するためのフロー図である。
【発明を実施するための最良の形態】
【0011】
図面に戻って、図2はこの発明の具体的な光学コードリーダ10の機能ブロック図である。光学コードリーダ10は概略的には、離れた光学コードを照明してその反射光を捕捉し、コードの画像を記録するカメラモジュールCと、カメラモジュールC内にストアされた画像を受け取ってデコードする第1のプロセッサCPU1と、画像を処理するために必要なときにCPU1によってトリガされる第2のプロセッサCPU2とからなり、第2のプロセッサCPU2はカメラモジュールCを制御するために、オートフォーカス制御処理とAGC処理を行う。
【0012】
光学コードリーダ10はまた、特定用途用にカスタマイズされた集積回路(ASIC)であるゲートアレイGAを備えており、それはカメラモジュールC内にストアされた画像からある特徴を抽出して、それをオートフォーカス処理とAGC処理で用いるためにCPU2に渡す。そのASICはまた、カメラモジュール内にストアされた画像情報をCPUに送る前に処理したり、カメラモジュールCによる照明を制御することもできる。
【0013】
カメラモジュールCは、1個以上のLEDのような可視光光源12と、1個以上の赤外線レーザダイオードのようなレーザ光源14を有している。光源12及び14は離れた光学コードを適切に照明するようにゲートアレイGAによって制御される。電子カメラにおいて一般的であるように、カメラモジュールCはイメージセンサ18上に画像を形成する焦点調節装置16を備えた光学系を有している。焦点調節装置は、例えばボイスコイルモータによって操作される一つの可動素子を含むようなズームレンズ、あるいは電気的に制御される液体レンズであり得る。その目的は、センサ18上に焦点の合った画像を与えられるように、カメラモジュールCから光学コードを配置できる距離範囲のような合焦範囲を広げるためである。センサ18はCMOS素子の二次元アレイのような光学アレイであるとよい。
【0014】
CPU1はセンサ18にストアされた画像情報を取得し(ブロック20)、ゲートアレイGAから受け取った情報に基づいて、光学コードの情報を復元するためにその画像をデコードする(ブロック22)。この実施例では、光学コードリーダ10は、例えば表示の目的で、センサ18の素子内にストアされた画像を復元することもできる。この場合、それは光学コードをデコードすることなく、単純な電子カメラのように動作をする。
【0015】
CPU1が画像の取得又はデコードの準備をするとき、トリガーコマンドをCPU2に送る。しかしながら、CPU2はAGC処理(ブロック24)を実行するためにトリガーコマンドを待ってはいない。動作を早めるために、CPU1が画像の取得又はデコードの準備ができたときに遅れを最小限にできるように、AGC処理は継続的に実行される。CPU2はセンサ18にストアされた画像に関してゲートアレイGAから受け取った情報に基づいてAGC処理を実行する。例えば、もしその情報が、センサ18に受けとられている信号が弱いことを示す場合、AGC処理はセンサ18の感度を増加させ、そうしなかった場合より強い信号がセンサ18にストアされるようにする。
【0016】
同様に、ゲートアレイGAは焦点調整装置16を制御するための情報をCPU2に送る。例えば、もしゲートアレイからの情報がセンサ18上の画像のエッジ品質が低いことを示している場合、焦点が調整される。詳細は後述するが、好ましい実施形態においては、レーザ測距が光学コードとセンサ18との間の距離を測定するために実行される。これは光学コードが最初にリーダ10の動作範囲に入るときにレーザ光で光学コードを照明し、その光学コードの距離を判断するために反射されたレーザ光を検知する必要がある。この情報を用いて、CPU2は光学コードの実際の距離に合焦するように焦点調整装置16を制御する。
【0017】
ゲートアレイGAは特定用途用集積回路(ASIC)により処理がなされる。それは画像処理部42と照明制御部44とを有する処理部40を含む。画像処理部42は、センサ18上の画像情報に種々のタイプの処理を実行する。詳細は後述するが、センサアレイ18上のレーザビームの画像から、画像処理部42はレーザ測距46を実行することができる。それは光学コードの距離を推定することである。画像処理部42はまた、輝度測定処理48とセンサ18上の画像情報に対するエッジ評価処理50も実行する。画像処理部42はまた、画像の重要ではない部分が削除されたトリム画像がCPU1に与えられるように、画像トリミング処理52も行なえる。照明制御部44は、レーザ制御処理54とLED制御処理56を実行し、レーザ光源14と可視光光源12をそれぞれオン及びオフにする。
【0018】
図示はしないが、ゲートアレイGAはレジスタ制御58の制御下にある1セットのレジスタを有する。CPU2からのオートフォーカスとAGCの情報は処理制御パラメータとして記憶するためにレジスタ制御58に与えられる。レジスタ制御58は、それからこれらのパラメータを必要に応じてプロセッサ40に渡す。同様に、プロセッサ40からの処理結果がレジスタ制御58に渡され、結果として適切なレジスタにストアされる。
【0019】
これらの結果は、それからオートフォーカス制御処理とAGC処理の実行に用いるためにCPU2に渡されることができる。例えば、レーザ測距46とエッジ評価50の結果はオートフォーカス制御に重要であり、輝度測定48はAGC処理に重要である。このような情報を受け取ることによって、CPU2は焦点調整装置16の調節とセンサ18のゲインの制御をすることができる。
【0020】
レーザによる測距や距離測定を用いることは今日では広く普及している。ほとんどの電子デジタルカメラにはオートフォーカスを行うために赤外線測距の形で用いられており、正確な距離測定を行うためにレーザ測距を用いた多くの木工品や建設用工具が存在している。レーザ測距技術はよく知られている。この発明を実施した光学コードリーダは、後述の特に単純でかつ効果的なレーザ測距方法にするとよい。
【0021】
図3は(A)と(B)からなり、光学コードを有する物体とコードリーダ10との間の距離を推定する方法を説明する図であり、(A)は三つの異なる位置a,b,及びc(それぞれ50mm,100mm,150mm)に置かれた物体を模式的に示し、(B)はa,b,及びcの各位置(左から右へ)において得られる反射された赤外レーザ線の画像(スポット)を示している。
【0022】
図3の(A)は、画像センサ18から三つの異なる距離a,b,及びc(それぞれ50mm,100mm,150mm)における光学コードを有する物体を示す。図示のように、赤外レーザ線Rはa,b,及びcの位置において異なる高さで物体に当たる。物体からの光線Rの反射は、図3の(A)に破線で示されている。その反射された光線はミラーMで反射され、レンズLを通過して画像センサ18上に光線Rの画像を形成する(レンズLはカメラモジュールCの一部である)。画像センサ18上の光線Rの画像は他の暗い領域内のスポット70であり、図3の(B)に見られるように、そのスポット70は、位置a,b,及びcのそれぞれにおいて光線が物体に異なる高さで当たるために、画像内における高さが異なっている(それぞれ左から右の画像)。
【0023】
実際には、光学コードリーダ10は、物体が測定される最も近い位置にあるときに、センサ18上に形成される画像の一番上にスポット70が位置するように較正される。その後、画像内のスポット70の高さに基づいて、物体とセンサ18との間の距離を推定できる。当業者ならば容易にこの機能を、システムエレクトロニクスやルックアップテーブル用にプログラムすることができる。
【0024】
当業者ならば、光学コードリーダ10は、前述のように二次元画像センサを使用すれば画像リーダになり、あるいは走査ラインに沿って読み取るスキャンリーダにもなることが分かるであろう。画像リーダは、図示の便宜上この特別なレーザ測距方法を有するものとしてここに示したに過ぎない。この発明はスキャンリーダにも同様に適用される。
【0025】
図4はCPU2の好ましい動作を説明するためのフロー図である。好ましくは光学コードリーダ10が最初に電源を投入されたとき、動作がブロック200から開始する。そのとき、ブロック202でAGC処理が始まり、CPU1から独立して動作し続ける。AGC処理は定期的に継続して実行されるとよい。CPU2はゲートアレイGAから輝度測定48の結果を受け取り、それによってセンサ18を制御して、センサ18が受け取る光学信号の強さの変化に係らず、センサ18内の素子上の電荷を所定の動作範囲内に維持する。
【0026】
AGC処理と同時に、ブロック204でCPU1からトリガーコマンドが受け取ったかどうかを判断するためのテストが実行され、受け取ったときは、制御はCPU1がデコードモードで動作しているか画像取得モードで動作しているかを判断するためのテストをするブロック206に移行する。もし、画像取得モードで動作している場合は、制御はすぐに画像データをCPU1に送ることができるブロック216に移行し、CPU1へ画像データを送ることが可能になり、CPU1は基本的に画像取得処理20(図2)を実行して画像を形成する。
【0027】
一方、ブロック206でCPU1がデコードモードで動作していると判断した場合は、制御は光学コードの距離を決定するためにレーザ測距を実行するブロック208へ移行する。それから、レーザ測距が成功して距離を判定できたかどうかを判断するためにブロック210でのテストを実行する。成功したら、CPU2はオートフォーカス処理26で焦点調整装置16の焦点を調整する。
【0028】
動作は画像データをCPU1へ送ることができるブロック216へ続く。それからCPU1がデコードの結果(成功又は失敗のいずれか)を得た信号を発したかどうかを判断するためにブロック218でのテストを実行する。信号が発せられた場合、この処理は終了し、制御はブロック204へ戻り、CPU1からの新たなトリガーコマンドを待つ。
【0029】
もしブロック218で、デコード結果の情報2をCPU1から受け取っていないと判断した場合は、ブロック220でCPU1に画像データが送られたかどうかを判断するテストを実行する。もしブロック220で画像データが送られたと判断した場合は、CPU1によってデコード結果が作られなかったという事実が、画像データがデコードするのに十分良好なものではなかったということを示している。
【0030】
その場合、制御はレーザ測距を再度行うためにブロック208へ移行する。この処理全体において、AGC処理はブロック202で周期的に行われ、それを続けていることに留意すべきである。したがって、次のデコードがなされる前に、光学コードから受け取る光の強度が大幅に変わるために必要になるセンサ18の調整がなされるであろう。
【0031】
レーザ測距は非常に信頼性のある処理である。従って、ブロック210における成功結果が得られなかったことは、多分ほぼレーザ測距装置内の不具合や失敗を示すことになり、CPU2は一般に警告をするであろう。しかしながら、レーザ測距が失敗したとき、オートフォーカスの失敗を避けるためのバックアップとして、もしブロック210でのテストでレーザ測距が成功しなかったことが明らかになると、ブロック214で適切な焦点を推定するために従来のコントラスト検出が実行され、それからブロック212で焦点が調整される。そして、レーザ測距が成功したかのように動作は続行される。
【0032】
図5はCPU1の適切な動作を説明するためのフロー図である。好ましくは光学コードリーダ10の電源が投入されると、この処理がブロック300から開始され、ブロック302でCPU1はトリガの受信を待つ。一般に、光学コードを有する物体がその動作範囲に入ったときに、トリガを受信する。トリガを受信した後、ブロック304で光学コードリーダ10がデコードモードにあるかどうかを判断するためのテストが実行される。
【0033】
説明したように、設計によりビデオカメラのように動作して、単に光学コードの画像を生成する画像取得モードで動作することもできる。もし光学コードリーダ10が画像取得モードであると、センサ18のCMOSレジスタがブロック306でセットされ、制御はブロック308へ移行する。一方、ブロック304で光学コードリーダ10がデコードモードにあると判断されると、処理はブロック304からブロック308に移移行する。
【0034】
ブロック308で、CPU1はトリガーコマンドをCPU2へ送る。それから、動作はブロック310へ移行し、そこで画像データの受け取りを待つ。画像データを受け取ると(ブロック312)、ブロック314で、光学コードリーダ10がデコードモードにあるかどうかを判断するためのテストが実行される。もしデコードモードでなかったら、CPU1によって取得された画像データがブロック316で出力され、制御はブロック302に移行し、そこでCPU1は次のトリガの受信を待つ。ブロック314でのテストにより、光学コードリーダ10がデコードモードにあることが明らかになると、ブロック318でCPU1は取得した画像データを処理し、そのデコード(コード内の情報を復元する)を試みる。
【0035】
動作はブロック320へ進み、そこでブロック318でのデコードが成功したかどうかを判断するためのテストが実行され、成功していれば、ブロック322でデコードに成功したことをCPU2に通知する。一方、もしブロック320でのテストでデコードに成功しなかったと判断したら、ブロック326で所定回数(N)のデコードを試みたかどうかを判断するテストが実行される。もしそうであったら、制御はブロック322へ移行し、そこでCPU1はデコードに失敗したことをCPU2に通知する。一方、もしブロック326でのテストで、N回のデコードが試みられていなかったことが明らかになったら、制御はブロック310に移行し、CPU1はデコードのための新たな画像データの取得を待つ。
【0036】
処理はブロック324で終了し、そこでCPU1はデコード結果を出力する。もしデコードに成功していたら、光学コードが有する値が出力されるだろう。一方、もしデコードに失敗していたら、その結果の通知がなされる。それから制御はブロック302に移行し、CPU1は次のトリガの受信を待つ。
【0037】
開示した実施形態では、三つのプロセッサが使用されている。CPU1は画像のデコードを実行し、CPU2はAGCとオートフォーカス制御を実行し、ASIC(ゲートアレイGA)は特定の画像処理を実行する。この方法で処理負荷を分割することによって、各プロセッサがその特定の機能のために最適化されることにより、特に効率よく且つ速く画像処理をする結果となる。
【0038】
しかしながら、この発明の利益は単一のプロセッサだけが使用される場合にも享受することができる。例えば、単一のプロセッサが使用され、CPU1とCPU2の機能が異なるスレッド処理で並行して分割して実行される場合でも、繰り返し行うAGC処理を避けることができ、それによる利益はある。ASICの機能もまた、同じ単一のプロセッサにプログラムすることができる。
【0039】
この発明の好ましい実施形態について説明してきたが、当業者であれば、種々の追加や変更及び置き替えが、添付した特許請求の範囲によって規定されるこの発明の範囲及び趣旨から逸脱することなく可能であることが分かるであろう。

【特許請求の範囲】
【請求項1】
離れた光学コードの画像を規定する光学的品質の範囲の光学情報を撮像距離範囲上で受け取り、前記光学コードの画像から光学情報を復元するためにデコードして、前記光学コードに含まれる画像情報から光学情報を抽出し、前記光学情報に対して光学的品質の変動を補正をするために自動利得制御(AGC)処理を実行し、前記光学コードリーダから前記光学コードまでの距離の変動を補正するために可変焦点装置のオートフォーカス制御を実行する、光学コードリーダの動作方法であって、
前記AGC処理と前記オートフォーカス制御のうちの少なくとも一つに対応する選択された処理を前記デコードと並行して実行する光学コードリーダの動作方法。
【請求項2】
前記選択された処理は、前記デコードを開始するどの信号よりも先に開始される請求項1に記載の光学コードリーダの動作方法。
【請求項3】
前記選択された処理は、デコードを開始するどの信号からも独立して、周期的に実行される請求項1に記載の光学コードリーダの動作方法。
【請求項4】
前記AGC処理と前記オートフォーカス制御の両方が選択される請求項1に記載の光学コードリーダの動作方法。
【請求項5】
AGC処理が選択され、該AGC処理は、前記デコードを開始するどの信号よりも先に開始され、デコードを開始するどの信号からも独立して、周期的に実行される請求項1に記載の光学コードリーダの動作方法。
【請求項6】
オートフォーカス制御が選択され、該オートフォーカス制御は、レーザ光源を用い、前記光学コードと前記光学コードリーダとの間の距離を測定し、その距離測定結果に基づいて前記可変焦点装置の焦点を調整する請求項1に記載の光学コードリーダの動作方法。
【請求項7】
請求項6に記載の光学コードリーダの動作方法において、
前記焦点の調整に先立って、前記距離の測定が成功したかどうかをテストし、該距離の測定が成功した場合にその測定した距離に基づいて前記焦点を調整し、前記距離の測定が成功しなかった場合には代わりの焦点テストを実行し、該代わりの焦点テストに基づいて前記焦点を調整する光学コードリーダの動作方法。
【請求項8】
前記デコード処理と前記選択された処理は、並行動作する異なる第1及び第2のプロセッサによってそれぞれ実行される請求項1に記載の光学コードリーダの動作方法。
【請求項9】
前記第2のプロセッサは前記選択された処理を実行し、前記第1のプロセッサは該選択された処理の実行に対して何等の制御もすることがない請求項8に記載の光学コードリーダの動作方法。
【請求項10】
前記第2のプロセッサは、デコードを開始する前記第1のプロセッサのいかなる信号からも独立して、前記選択された処理を周期的に実行する請求項9に記載の光学コードリーダの動作方法。
【請求項11】
前記AGC処理と前記オートフォーカス制御の両方が選択される請求項8に記載の光学コードリーダの動作方法。
【請求項12】
前記第2のプロセッサは前記AGC処理を実行し、該処理は前記第1のプロセッサによる該第2のプロセッサに対するいかなる制御もされることなく開始され、デコードを開始する前記第1のプロセッサのいかなる信号からも独立して、周期的に実行される請求項8に記載の光学コードリーダの動作方法。
【請求項13】
前記第2のプロセッサはオートフォーカス制御を実行し、該制御はレーザ光源を用いて前記光学コードと前記光学コードリーダとの間の距離を測定し、その距離測定結果に基づいて前記可変焦点装置の焦点を調整する請求項8に記載の光学コードリーダの動作方法。
【請求項14】
請求項13に記載の光学コードリーダの動作方法において、
前記焦点の調整に先立って、前記距離の測定が成功したかどうかをテストし、該距離の測定が成功した場合にはその測定した距離に基づいて前記焦点を調整し、前記距離の測定が成功しなかった場合には代わりの焦点テストを実行して、該代わりの焦点テストに基づいて前記焦点を調整する光学コードリーダの動作方法。
【請求項15】
請求項8に記載の光学コードリーダの動作方法において、
前記光学コードリーダは、前記光学コードの画像を形成する光学センサを有し、
前記光学コードリーダの動作方法はさらに、前記光学センサから画像情報を抽出し、該画像情報を前記第2のプロセッサへ送る第3のプロセッサを使用し、前記画像情報は、前記光学コードの距離、前記画像の輝度、および前記画像のエッジ評価のうちの一つである光学コードリーダの動作方法。
【請求項16】
前記第3のプロセッサがASICである請求項15に記載の光学コードリーダの動作方法。
【請求項17】
前記第2のプロセッサは、オートフォーカス制御とAGC処理のうちの一つに関する情報を前記第3のプロセッサに与える請求項15に記載の光学コードリーダの動作方法。
【請求項18】
離れた光学コードの画像を規定する光学的品質の範囲の光学情報を撮像距離範囲上で受け取り、前記光学コードの画像から光学情報を復元するためにデコードして、前記光学コードに含まれる画像情報から光学情報を抽出し、前記光学情報に対して光学的品質の変動を補正をするために自動利得制御(AGC)処理を実行し、前記光学コードリーダから前記光学コードまでの距離を補正するために可変焦点装置のオートフォーカス制御を実行する光学コードリーダであって、
前記AGC処理と前記オートフォーカス制御のうち少なくとも一つに対応する選択された処理を、前記光学コードのデコードと並行して実行する制御プロセッサを設けたことを特徴とする光学コードリーダ。
【請求項19】
前記制御プロセッサは、前記デコードを開始するどの信号よりも先に前記選択された処理を開始する請求項18に記載の光学コードリーダ。
【請求項20】
前記制御プロセッサは、前記デコードを開始するど信号からも独立して前記選択された処理を実行する請求項18に記載の光学コードリーダ。
【請求項21】
前記制御プロセッサは、前記AGC処理と前記オートフォーカス制御の両方を実行する請求項18に記載の光学コードリーダ。
【請求項22】
前記制御プロセッサは、前記光学コードと前記光学コードリーダとの間の距離を測定するためにレーザ光源を制御し、その距離の測定結果に基づいて前記可変焦点装置の焦点の調整を制御して、前記オートフォーカス制御を実行する請求項18に記載の光学コードリーダ。
【請求項23】
請求項22に記載の光学コードリーダにおいて、
前記制御プロセッサは、前記焦点の調整に先立って、前記距離の測定が成功したかどうかをテストし、該距離の測定が成功した場合にはその測定した該距離に基づいて前記焦点を調整し、前記距離の測定が成功しなかった場合には代わりの焦点テストを実行して、該代わりの焦点テストに基づいて前記焦点を調整する光学コードリーダ。
【請求項24】
前記制御プロセッサは、前記デコードと前記選択された処理とをそれぞれ並行して実行する、第1及び第2のプロセッサからなる請求項18に記載の光学コードリーダ。
【請求項25】
前記第2のプロセッサは前記選択された処理を実行し、前記第1のプロセッサは該選択された処理の実行に対して何等の制御もすることがない請求項24に記載の光学コードリーダ。
【請求項26】
前記第2のプロセッサは、前記デコードを開始する前記第1のプロセッサのどの信号からも独立して、周期的に前記選択された処理を実行する請求項24に記載の光学コードリーダ。
【請求項27】
前記第2のプロセッサは前記AGC処理を実行し、該処理を前記第1のプロセッサによる該第2のプロセッサに対するいかなる制御もされることなく開始し、デコードを開始する前記第1のプロセッサのいかなる信号からも独立して、周期的に実行する請求項24に記載の光学コードリーダ。
【請求項28】
前記第2のプロセッサはオートフォーカス制御を実行し、該制御はレーザ光源を用いて前記光学コードと前記光学コードリーダとの間の距離を測定し、その距離測定結果に基づいて前記可変焦点装置の焦点を調整する請求項24に記載の光学コードリーダ。
【請求項29】
請求項24に記載の光学コードリーダにおいて、
前記第2のプロセッサは、前記焦点調整に先立って前記距離の測定が成功したかどうかをテストし、該距離の測定が成功した場合にはその測定した距離に基づいて前記焦点を調整し、前記距離の測定が成功しなかった場合には代わりの焦点テストを実行して、該代わりの焦点テストに基づいて前記焦点を調整する光学コードリーダ。
【請求項30】
請求項24に記載の光学コードリーダにおいて、
前記光学コードの画像を形成する光学センサと、該光学センサから画像情報を抽出し、該画像情報を前記第2のプロセッサへ送る第3のプロセッサとを有し、前記画像情報は、前記光学コードの距離、前記画像の輝度、および前記画像のエッジ評価のうちの一つである光学コードリーダ。
【請求項31】
前記第3のプロセッサはASICである請求項30に記載の光学コードリーダ。
【請求項32】
前記第2のプロセッサは、オートフォーカス制御とAGC処理のうちの一つに関する情報を前記第3のプロセッサに与える請求項30に記載の光学コードリーダ。

【図1】
image rotate

【図2】
image rotate

【図4】
image rotate

【図5】
image rotate

【図3】
image rotate


【公表番号】特表2012−508927(P2012−508927A)
【公表日】平成24年4月12日(2012.4.12)
【国際特許分類】
【出願番号】特願2011−536298(P2011−536298)
【出願日】平成20年11月17日(2008.11.17)
【国際出願番号】PCT/US2008/083770
【国際公開番号】WO2010/056256
【国際公開日】平成22年5月20日(2010.5.20)
【出願人】(391062872)株式会社オプトエレクトロニクス (70)
【出願人】(592252968)オプチコン インコーポレイテッド (31)
【住所又は居所原語表記】2220 Lind Avenue SW, Suite 100, Renton, Washington 98057 USA
【Fターム(参考)】