JP3292635B2 - バーコード読取装置 - Google Patents
バーコード読取装置Info
- Publication number
- JP3292635B2 JP3292635B2 JP22782295A JP22782295A JP3292635B2 JP 3292635 B2 JP3292635 B2 JP 3292635B2 JP 22782295 A JP22782295 A JP 22782295A JP 22782295 A JP22782295 A JP 22782295A JP 3292635 B2 JP3292635 B2 JP 3292635B2
- Authority
- JP
- Japan
- Prior art keywords
- bar width
- bar
- width data
- data
- transfer
- 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 - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/14—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
- G06K7/1404—Methods for optical code recognition
- G06K7/146—Methods for optical code recognition the method including quality enhancement steps
- G06K7/1486—Setting the threshold-width for bar codes to be decoded
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/14—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Electromagnetism (AREA)
- General Health & Medical Sciences (AREA)
- Toxicology (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Bus Control (AREA)
Description
み取ったバー幅データ群を復調するバーコード読取装置
に関し、特に、データの取りこぼしがないバーコード読
取装置に関する。
に代表されるように、商品等の管理をバーコードによっ
て行うことが一般化している。例えば、商店のPOSシ
ステムでは、商品の種類や販売価格等の情報をバーコー
ドのフォーマットにコード化して商品に貼り付けてお
く。そして、レジにてこのバーコードを読み取ることに
よって、精算を行うとともに、商品の売り上げ数をリア
ルタイムで集計し、在庫管理や仕入れ管理に役立てるよ
うにしている。
ド読取装置では、バーコードに走査光を照射してバーコ
ードからの反射光の強度変化を検出し、バーコードを構
成する各バーの幅に対応するバー幅データを生成する。
そして、生成されたバー幅データを順次プロセッサ(M
PU)に転送し、バーコードにコード化されていたデー
タに復調する。
取装置の主要部を図10に示す。図10においてバー幅
カウンタ(RAMCONT)50には、図示せぬ受光装
置によって検出された反射光強度変化を示す信号(BE
G,WEG),及びクロックパルス(40MHz)が入
力される。バー幅カウンタ50は、これらの信号に基づ
いて、各バーの幅を示すバー幅データを、クロックパル
スのカウント値として生成し、その内部のFIFO(先
入れ先出し)メモリ51を介して、外部のバスバッファ
52に出力される。
に接続されている。このデータバスDBには、その他
に、外部RAM53,ROM54,及びMPU55が接
続されている。MPU55は、バー幅データを復調する
プロセッサであり、ROM54はMPU55において実
行される制御プログラムを格納している。
タは、MPU55からの制御に従い、外部RAM53に
転送され、ここに蓄えられる。MPU55は、この外部
RAM53に蓄えられたバー幅データを順次読み出すと
ともに、4個のバー幅データ群(WPCコード等におけ
る1キャラクタ)を読み出す毎に、読み出した4個のバ
ー幅データ群を対応するデータへ復調する。そして、読
み出したバー幅データ群の復調処理が完了すると、再
度、バー幅カウンタ50から外部RAM53へバー幅デ
ータの転送がなされるのである。
AM53とMPU55との間がバスによって接続されて
いると、外部RAM53からMPU55へバー幅データ
を転送するのに時間が掛かり過ぎるので、復調処理に伴
ってデータの取りこぼしが生じるという問題があった。
このことを、図11に基づいて説明する。
T)50,外部RAM53,及びMPU55の信号状態
を示すタイムチャートである。図11の最上段は、バー
幅カウンタ50の信号状態であり、逆三角形の記号によ
りバー幅データの発生を示す。先ず、1キャラクタを構
成する4個のバー幅データがバー幅カウンタ50から外
部RAM53へ全て転送し終わるには、この4個のバー
幅データが全て生成し終わるまで待たねばならない。次
に、MPU55が外部RAM53から4個のバー幅デー
タを読み出すのにも、データバスDB上でのデータ転送
速度がバー幅カウンタ50でのバー幅データ生成速度と
ほとんど同じであることから、やはり同程度の時間がか
かってしまうのである。
実行される復調に掛かる時間を含め、MPU55におい
て1キャラクタのバー幅データ群に対する処理を行うの
に要する時間は、バー幅カウンタ50において1キャラ
クタのバー幅データ群を生成するのに要する時間よりも
多くなってしまう。そのため、その時間差に生成された
バー幅データ群は、MPU55によって読み出されるこ
となく取りこぼされてしまうのである。また、仮令デー
タバスDB上でのデータ転送速度がバー幅カウンタ50
でのバー幅データ生成速度よりも多少速い場合であって
も、復調処理に時間が掛かりすぎると、同様なデータの
取りこぼしが生じてしまう(第1の問題点)。
としての容量を大きくすれば、MPU55は、取りこぼ
しをすることなく全てのデータを読み出すことができる
かも知れない。しかしながら、一個のバーコードに対応
する一連のバー幅データ群がこれら複数のRAMに跨っ
て記憶されてしまった場合には、MPU55における復
調サイクルがずれてしまうので、もとのデータへ復調す
ることは不可能である(第2の問題点)。
に鑑み、バー幅データの取りこぼしをすることなくバー
コードの復調を行うことができるバーコード読取装置を
提供することである。
に鑑み、一連のバー幅データを分割することなく連続し
たまま転送することができるバーコード読取装置を提供
することである。
読取装置は、上記第1の課題を解決するため、以下の構
成を採用した。
は、図1の原理図に示した通り、バーコードを構成する
各バーの幅を検出してこれら各バーの幅に対応するバー
幅データを生成するバー幅データ生成手段(100)
と、このバー幅データ生成手段(100)によって生成
された前記バー幅データが転送される低速メモリ(10
1)と、この低速メモリ(101)に転送された前記バ
ー幅データが更に転送される高速メモリ(102)と、
この高速メモリ(102)に転送された前記バー幅デー
タを読み出してこのバー幅データに対応するデータに復
調する復調装置(103)とを備えたことを特徴とす
る。
ば、バー幅データ生成手段(100)は、読み取り対象
としてのバーコードを構成する各バーの幅を検出し、こ
れら各バーの幅に対応するバー幅データを生成する。低
速メモリ(101)には、バー幅データ生成手段(10
0)によって生成されたバー幅データが、一旦転送され
る。高速メモリ(102)には、低速メモリ(101)
に転送されたバー幅データが、更に転送される。復調装
置(103)は、この高速メモリ(102)に転送され
ているバー幅データを高速読み出しし、読み出したバー
幅データを、対応するデータへ復調する。従って、バー
幅データを高速メモリ(102)から読み出してから復
調が完了するまでに要する時間は、同量のバー幅データ
がバー幅データ生成手段100から低速メモリ101に
転送されるのに要する時間よりも短くされ得る。従っ
て、一定量のバー幅データがバー幅データ生成手段10
0から低速メモリ101に転送され終わるまでに、復調
装置は、同量のバー幅データを高速メモリ(102)か
ら読み出して復調し終えるようにすることが可能であ
る。よって、データの取りこぼしを防止することができ
る。
意味を明らかにしたものである。即ち、請求項2による
バーコード読取装置においては、前記バー幅データ生成
手段,前記低速メモリ,及び前記高速メモリの間はデー
タバスを介して接続されているとともに、前記高速メモ
リと前記復調装置との間は直接接続されている。従っ
て、低速メモリから高速メモリへのバー幅データの転送
は、データバスを介して行われるので低速になる。これ
に対し、高速メモリから復調装置へのバー幅データの読
み出しは、両者が直接接続されていることから高速に行
い得る。
求項1における前記バー幅データ生成手段から前記低速
メモリへの前記バー幅データの転送,及び前記低速メモ
リから前記高速メモリへの前記バー幅データの転送を制
御する転送制御手段を更に備えたことを特徴とする。両
転送を同一の転送制御手段によって制御することによ
り、各構成要素の状態を把握した上での効率良い転送を
行うことができるのである。
求項3の低速メモリが高速メモリよりも大容量であるこ
とで特定したものである。このように低速メモリを高速
メモリよりも大容量としておけば、高速メモリの容量が
小容量とせざるを得ない場合であっても、バー幅データ
生成手段100から次々に出力されてくるバー幅データ
を、取りこぼすことなく保持しておくことができる。
求項4の転送制御手段が、前記低速メモリに格納されて
いる複数の前記バー幅データを前記高速メモリの容量以
下の量に分け、複数回にわたって前記高速メモリに転送
することで特定したものである。このように複数回に分
けてバー幅データを転送すれば、低速メモリに比べて高
速メモリの容量が小さい場合でも、バー幅データを取り
こぼすことなく転送することができる。
求項5の転送制御手段が、各転送時において転送される
前記バー幅データの最後尾部分を、その次の転送時にお
いて転送される前記バー幅データの先頭部分にも含める
ようにしたことで、特定したものである。このようにす
れば、低速メモリ内のバー幅データを複数に分ける場合
であっても、分割部分にある一連のバー幅データ群を細
切れにしてしまって復調不可能としてしまうことが避け
られる。これにより、上述した第2の課題が解決され
る。
求項6のように、転送制御手段が各転送時において転送
される前記バー幅データの最後尾部分をその次の転送時
において転送される前記バー幅データの先頭部分にも含
める場合において、各転送時において転送される前記バ
ー幅データの最後尾部分であってその次の転送時におい
て転送される前記バー幅データの先頭部分にも含まれる
部分の量を、一個のバーコードの先頭端から最終端まで
に対応するバー幅データの量よりも大きくしたことで特
定したものである。このようにすれば、一個のバーコー
ド全体に対応する一連のバー幅データ群を細切れにして
しまって復調不可能としてしまうことが避けられる。
実施の態様の説明を行う。
コード読取装置の概略構成を示すブロック図である。 (全体構成)図2において、レーザー光源1は、レーザ
ービームLを出射する半導体レーザである。このレーザ
光源1から出射されたレーザービームLは、走査/集光
光学系2に入射される。この走査/集光光学系2は、ポ
リゴンミラーによってレーザービームLを偏向するとと
もに、偏向されたレーザビームを複数の固定ミラーで種
々の方向に反射させる光学系である。この走査/集光光
学系2によると、ポリゴンミラーの一反射面による偏向
周期内で、この走査/集光光学系2の上方に向けて、複
数の方向へのレーザビーム走査が連続的に高速で行われ
る。このようにして走査されたレーザビームLが商品3
の表面に当たると、この表面においてレーザビームLが
乱反射され、その反射光Rの一部が走査/集光光学系2
に戻る。
検知器4にリレーする。光検知器4は、レーザビームL
(反射光R)と同じ波長の光のみを透過するフィルタが
被せられたホトダイオードであり、反射光Rの強度変化
に応じた電流を二値化回路5に入力する。
た電流値を電圧値に変換するとともに、変換された電圧
値を所定のしきい値と比較して、方形波信号に波形整形
する。この方形波信号は、反射光Rの強度が商品3上の
バーコード3a中の白バーの反射率に対応する場合には
“H”を示し、反射光Rの強度が商品3上のバーコード
3a中の黒バーの反射率に対応する場合には“L”を示
す。二値化回路5は、この方形波信号の立ち上がり(白
エッジ)と立ち下がり(黒エッジ)とを夫々検出し、白
エッジに同期して白エッジパルス(WEG)を出力する
とともに、黒エッジに同期して黒エッジパルス(BE
G)を出力する。
ッジパルス(BEG)は、ともに、これら各パルスに基
づいてバーコード3aにコード化されていたデータを復
調するためのバーコード認識/復調装置10に入力され
る。このバーコード認識/復調装置10には、また、ク
ロック7からのクロックパルス(40MHz)が入力さ
れる。このバーコード認識/復調装置10の具体的構成
を図3に示す。
EG)及び黒エッジパルス(BEG),並びにクロック
パルス(40MHz)は、バー幅カウンタ(RAMCO
NT)11に入力される。このバー幅カウンタ11は、
バスバッファ12を介してデータバスDBに接続されて
いる。このデータバスDBには、また、外部RAM(R
AM)13,ROM17,及びRISCプロセッサ1
4の内部RAM(RAM)16が接続されている。こ
れら外部RAM13,ROM17,及びRISCプロセ
ッサ14は、また、アドレスバスABによって相互に接
続されている。以下、これら構成について、詳しく説明
する。
Cプロセッサ14に接続された2個の出力端子(C50
ns,OR),及び1個の入力端子(sftout)を
備えている。このうち、C50ns出力端子は、RIS
Cプロセッサ14のEXTAL入力端子に、クロックを
供給している。
から入力された白エッジパルス(WEG)及び黒エッジ
パルス(BEG)に基づいて、白エッジパルス(WE
G)のタイミングから黒エッジパルス(BEG)のタイ
ミングまでの時間(バーコード3a中の白バーの幅に対
応するものと期待される),及び黒エッジパルス(BE
G)のタイミングから白エッジパルス(WEG)のタイ
ミングまでの時間(バーコード3a中の黒バーの幅に対
応するものと期待される)を測定する。なお、バー幅カ
ウンタ11は、これらバー幅に対応する時間を計測する
ためにクロック7からのクロック数をカウントし、これ
らバー幅に対応するカウント値(以下、「バー幅デー
タ」という)を生成する。従って、これらレーザー光源
1,走査/集光光学系2,光検知器4,二値化回路5,
及びバー幅カウンタ11により、バーコードを構成する
各バーの幅を検出してこれら各バーの幅に対応するバー
幅データを生成するバー幅データ生成手段が構成され
る。
モリ回路18を内蔵している。このFIFOメモリ回路
18は、先入れ先出しメモリであり、生成されたバー幅
データを一旦保持するとともに、保持した順序に従って
このバー幅データを出力することができる。バー幅カウ
ンタ11は、バー幅データを生成完了する毎に、生成し
たバー幅データをFIFOメモリ回路18に格納すると
ともに、OR出力端子からRISCプロセッサ14に向
けて転送要求信号(DREQ)を送信する。そして、こ
の転送要求信号(DREQ)に応じてRISCプロセッ
サ14(DMAコントローラ15)が転送要求受付信号
(DACK)を送信してきた時には、sftout入力
端子を介してこの転送要求受付信号(DACK)を受信
し、FIFOメモリ回路18に格納されているバー幅デ
ータをバスバッファ12へ出力する。
号(DACK)をイネーブル信号とするバッファであ
る。従って、バー幅カウンタ11から出力されたバー幅
データを、データバスDBへ向けて通過させることがで
きる。
って指定された書込アドレスにデータバスDBからのデ
ータが書き込まれるとともに、アドレスバスABによっ
て指定された読出アドレスに書き込まれたデータがデー
タバスDBに向けて読み出される。このように、外部R
AM13は、データバスDBを通じてデータ授受を行う
ので、他のデバイスとの間のデータ転送は低速である。
従って、外部RAM13は「低速メモリ」である。但
し、その容量は大容量(3584ワード)である。
クロプロセッサ)19,内部RAM16,DMA(ダイ
レクトメモリアクセス)コントローラ15,及び図示せ
ぬI/O(入出力)ユニットをワンチップに搭載したプ
ロセッサである。
されている内部メモリである。このようにMPU19と
内部RAM16とが直接接続されているため、MPU1
9による内部RAM16からのデータの読み取りは高速
(0ウェイト)に行える。従って、内部RAM16は、
「高速メモリ」である。なお、この内部RAM16は、
高速メモリ故にその容量は小さい(512ワード)。そ
のため、本実施形態では、データの取りこぼしを防ぐた
めに、大容量の外部RAM13を備えているのである。
5は、バー幅カウンタ11から受信した転送要求信号
(DREQ)に応じて、転送要求受付信号(DACK)
を出力するとともに、この転送要求受付信号(DAC
K)に起因してバー幅カウンタ11から出力されるバー
幅データを外部RAM13に書き込むため、外部RAM
13上の書き込みアドレスをアドレスバスABへ出力す
る。このように、DMAコントローラ15は、シングル
アドレスモードにより、バー幅カウンタ11から外部R
AM13へバー幅データをDMA転送する。
AM13に書き込まれているバー幅データ群を、デュア
ルアドレスモードに従って、内部RAM16に転送す
る。即ち、DMAコントローラ15は、読み出しサイク
ルと書き込みサイクルとを1ワード(32ビットパラレ
ルのデータバスDBを通じて1クロックで転送できるデ
ータ単位)毎に繰り返す。そして、読み出しサイクルに
おいて、読出アドレスを指定して外部RAM13をアク
セスするとともに、書き込みサイクルにおいて、書込ア
ドレスを指定して内部RAM16をアクセスする。
DMA転送をする際に用いるバスモードは、サイクルス
チルモードである。即ち、1ワードの転送を終了する毎
に一旦バス権をMPU19に返し、次の1ワードの転送
をするために再度バス権を取り戻すというサイクルを繰
り返すのである。また、バー幅カウンタ11から外部R
AM13へのDMA転送,及び、外部RAM13から内
部RAM16へのDMA転送を同時に行う場合には、こ
れらの各転送を1ワードづつ交互に行う。
7に格納されている制御プログラムを実行することによ
り、このバーコード認識/復調装置10全体の制御を行
うとともに、内部RAM16から順次バー幅データを読
み出し、この読み出したバー幅データ群に基づいて、バ
ーコードにコード化されたデータの復調を行う。ここで
復調のアルゴリズムは、バーコード3aがWPCコード
のフォーマットに従っている場合には、交互に連続する
2本の白バー及び2本の黒バーからなるキャラクタ毎
に、キャラクタを構成する各バーの幅の組み合わせに対
応するデータ(数字)をテーブルから読み出して、この
キャラクタをこのデータに変換するというものである。 (制御内容)次に、DMAコントローラ15によって実
行されるDMA転送制御の内容を、図4及び図5のフロ
ーチャートに基づいて説明する。図4の処理は、バー幅
カウンタ11から転送要求信号(DREQ)を受信する
ことにより、スタートする。そして、最初のS01にお
いて転送要求信号(DREQ)が消滅したかどうかをチ
ェックする。このチェックは、2回目以降のループ処理
(結合子2参照)の途中でこの処理を中止するためのチ
ェックである。
いない場合には、S02において、バー幅カウンタ11
から外部RAM13へ、サイクルスチルモード(シング
ルアドレスモード)で3584ワード分のバー幅データ
をDMA転送し始める(図6RAM参照)。そして、
全バー幅データのDMA転送が完了するまでこのDMA
転送を継続する一方で、処理をS03に進める。
バー幅データがあるかどうかをチェックする。そして、
S02によるDMA転送の結果、外部RAM13内にバ
ー幅データが書き込まれた時には、処理をS04に進め
る。
る。次のS05では、外部RAM13のn番地[0番
地]から(n+448)番地[448番地]までに書き
込まれているバー幅データ群をサイクルスチルモード
(デュアルアドレスモード)でDMA転送し、内部RA
M16の64番地から512番地へ書き込む(図6RA
M「1回目」参照)。
RAM16への448ワード分(内部RAM16の64
〜512番地に対応)のDMA転送が完了したか否かを
チェックする。そして、448ワード分のDMA転送が
完了している場合には、処理をそのままS08に進め
る。これに対して、未だ448ワード分の転送が行われ
ていない場合には、バー幅カウンタ11でのバー幅デー
タの生成,又はバー幅カウンタ11から外部RAM13
へのDMA転送が遅れている場合である可能性がある。
そこで、S07において、5ms経過するまでは処理を
S06に戻し、448ワード分の転送が完了した場合
(S06),及び、5ms連続してバー幅データが外部
RAM13へ書き込まれなかった場合(S07)に限
り、処理をS08に進める。
ド復調処理を指示し、このバーコード復調処理が終了す
るのを待つ。なお、このバーコード復調処理において
は、MPU19は、内部RAM16内の各アドレスに記
憶されているバー幅データ値を、アドレス順に高速に読
み出す。そして、各キャラクタを構成する4個のバー幅
データを読み出す毎に、対応するデータへ復調するので
ある。
処理の結果が良好であったかどうかをチェックする。そ
して、処理結果が良好であった場合,即ち、対応するデ
ータに変換された場合には、S10において、変換され
たデータを内部RAM16に格納するとともに、これま
でに変換されていたデータ群に基づいてバーコード全体
に対応するデータの合成を行い、処理をS11に進め
る。これに対して、処理結果が不良であった場合,即
ち、対応するデータに変換できなかった場合には、処理
をそのままS11に進める。
部RAM16の448番地を過ぎたかどうかをチェック
する。このバーコード検索ポインタとは、バー幅カウン
タ11から外部RAM13へのDMA転送速度と同速度
で、内部RAM16へのDMA転送が完了する毎に内部
RAM16の0番地からアドレス順に走査されるポイン
タである。そして、このバーコード検索ポインタが44
8番地を過ぎるまでは、処理がS08に戻される。S0
8乃至S11のループ処理を繰り返した結果、バーコー
ド検索ポインタが内部RAM16の448番地を過ぎた
場合には、処理がS12に進められる。
する。次のS13では、外部RAM13のn番地から
(n+512)番地までに書き込まれているバー幅デー
タ群をサイクルスチルモード(デュアルアドレスモー
ド)でDMA転送し、内部RAM16の0番地から51
2番地へ書き込む。例えば、2回目のDMA転送の場合
には、外部RAM13の384番地〜896番地に書き
込まれているバー幅データ群を、内部RAM16の0番
地〜512番地へ転送する(図6RAM「2回目」参
照)。
ド分のDMA転送が完了したか否かをチェックする。チ
ェックの結果、512ワード分のDMA転送が完了して
いる場合には、処理をそのままS16に進める。これに
対して、未だ512ワード分の転送が行われていない場
合には、バー幅カウンタ11でのバー幅データの生成,
又はバー幅カウンタ11から外部RAM13へのDMA
転送が遅れている場合である可能性がある。そこで、S
15において、5ms経過するまでは処理をS14に戻
し、512ワード分の転送が完了した場合(S14),
及び、5ms連続してバー幅データが外部RAM13へ
書き込まれなかった場合(S15)に限り、処理をS1
6に進める。
ド復調処理を指示し、このバーコード復調処理が終了す
るのを待つ。次のS17では、S16のバーコード復調
処理の結果が良好であったかどうかをチェックする。そ
して、処理結果が良好であった場合,即ち、対応するデ
ータに変換された場合には、S18において、変換され
たデータを内部RAM16に格納するとともに、これま
でに変換されていたデータ群に基づいてバーコード全体
に対応するデータの合成を行い、処理をS19に進め
る。これに対して、処理結果が不良であった場合,即
ち、対応するデータに変換されなかった場合には、処理
をそのままS19に進める。
部RAM16の448番地を過ぎたかどうかをチェック
する。そして、448番地を過ぎるまで、処理をS16
に戻す。S16乃至S19のループ処理を繰り返した結
果、バーコード検索ポインタが内部RAM16の448
番地を過ぎた場合には、処理をS20に進める。
次のS21では、現在の変数nの値が“1728”であ
るか否かをチェックする。これは、即ち、4回目のDM
A転送(外部RAM13から内部RAM16へのDMA
転送)が完了した直後であるか否かのチェックである。
そして、現在の変数nの値が“1728”でない場合,
即ち、4回目のDMA転送完了直後でない場合には、S
24において、現在の変数nの値が“3072”を超え
ているか否かをチェックする。これは、即ち、8回目の
DMA転送(外部RAM13から内部RAM16へのD
MA転送)が完了した直後であるか否かのチェックであ
る。
8回目のDMA転送直後でもない場合(2,3,5〜7
回目のDMA転送直後)には、処理をS13に戻す。そ
の結果、3,4,6〜8回目の何れかのDMA転送が実
行される。
後である場合には、S22において、外部RAM13に
現在書き込まれている全バー幅データのDMA転送が完
了しているかどうかをチェックする。そして、完了して
いない場合には、2,3,5〜7回目のDMA転送直後
の場合と同様に、処理をS13に戻す。その結果、5回
目のDMA転送が実行される。
込まれている全バー幅データのDMA転送が完了してい
る場合には、S23において、バー幅カウンタ11から
外部RAM13へ、サイクルスチルモード(シングルア
ドレスモード)で1792ワード分のバー幅データをD
MA転送し始める(図7参照)。そして、全バー幅デー
タのDMA転送が完了するまでこのDMA転送を継続す
る一方で、処理をS13に戻す。その結果、5回目のD
MA転送が実行される。
72”を超えた場合には、今回のシーケンスにおける8
回目のDMA転送が完了した直後であるので、処理をS
24からS01に戻し、次回のシーケンスのデータ転送
を行う。
幅カウンタ11でのバー幅データ生成が終了し、転送要
求信号(DREQ)が消滅した場合には、S01からこ
の処理を終了する。 (実施形態の作用)上記した本実施形態によると、図6
に示すように、DMAコントローラ15からバー幅カウ
ンタ11へ転送要求受付信号(DACK)が入力される
ことを条件に、バー幅カウンタ11から外部RAM13
へ、最大3584ワード単位でバー幅データ群がDMA
転送される。
M13へのDMA転送と並行して、外部RAM13から
内部RAM16へのDMA転送を行う。バー幅カウンタ
11から外部RAM13へDMA転送されてきた358
4ワードのバー幅データ群の内部RAM16への更なる
DMA転送は、8回(複数回)に分けて行われる。これ
は、外部RAM13の容量に比して、内部RAM16の
容量は1/8だからである。
13から内部RAM16へのDMA転送)でのバー幅デ
ータ群のデータ量は448ワードであり、2回目以降の
DMA転送でのバー幅データ群のデータ量は512ワー
ドであり、何れにしても内部RAM16の容量(512
ワード)以下に分けられている。そして、各回における
内部RAM16の448番地〜512番地(最後尾部
分)に書き込まれる64ワードは、その次の回における
内部RAM16の0番地〜64番地(先端部分)にも書
き込まれる。即ち、64ワード単位で、各回のDMA転
送データが重複する。
データのキャラクタ数は13キャラクタであるので、こ
のWPCコードの先頭端から最後端までを連続的に一気
に読み取ったバー幅データ群におけるバー幅データ数は
61である。そして、一個のバー幅データ群は、1ワー
ドに相当する。
の走査によって得られる同一のバーコードに基づくバー
幅データ群(バーコード3)は、各回のDMA転送デー
タの重複部分内に完全に収まり得る。しかし、実際に
は、一回の走査によって得られる同一のバーコードに基
づくバー幅データ群(バーコード1,バーコード2)が
各回のDMA転送データの重複部分内に位置することは
稀であり、図8(例1)に示すように、何れか一方のD
MA転送データの端部からはみ出してしまう。しかし、
その場合でも、そのバー幅データ群(バーコード1,バ
ーコード2)は他方のDMA転送データの中には収まる
ので、MPU19は、連続してこのバー幅データ群(バ
ーコード1,バーコード2)に対する復調を行い、バー
コード3aに対応するデータを復元することができる。
ンタ11から外部RAM13へのDMA転送,及び、外
部RAM13から内部RAM16へのDMA転送は、デ
ータバスDBを介して行われるので、転送速度が上がる
わけではない。しかし、MPU19による内部RAM1
6からのバー幅データ群読み取りは、非常に高速に行わ
れる。従って、図9に示すように、MPU19において
4個のバー幅データを読み取って復調処理が完了するま
での総時間は、外部RAM13から内部RAM16へ4
個のバー幅データ群がDMA転送される時間よりも短く
て済む。
6へのDMA転送時,及び内部RAM16からMPU1
9への転送時において、バー幅データの取りこぼしが生
じることはない。
ード読取装置によると、バー幅データの取りこぼしをす
ることなくバーコードの復調を行うことができる。
置のブロック図
成を示すブロック図
A転送処理の内容を示すフローチャート
A転送処理の内容を示すフローチャート
構成を示すブロック図
明図
Claims (2)
- 【請求項1】バーコードを構成する各バーの幅を検出し
てこれら各バーの幅に対応するバー幅データを生成する
バー幅データ生成手段と、このバー幅データ生成手段に
よって生成された前記バー幅データが転送される低速メ
モリと、この低速メモリに転送された前記バー幅データ
が更に転送される高速メモリと、この高速メモリに転送
された前記バー幅データを読み出してこのバー幅データ
に対応するデータに復調する復調装置と、 前記バー幅データ生成手段から前記低速メモリへの前記
バー幅データの転送,及び前記低速メモリから前記高速
メモリへの前記バー幅データの転送を制御する転送制御
手段を備え、 前記低速メモリは前記高速メモリよりも大容量であり、 前記転送制御手段は、前記低速メモリに格納されている
複数の前記バー幅データを前記高速メモリの容量以下の
量に分け、複数回にわたって前記高速メモリに転送し、 前記転送制御手段は、各転送時において転送される前記
バー幅データの最後尾部分を、その次の転送時において
転送される前記バー幅データの先頭部分にも含めること
を特徴とするバーコード読取装置。 - 【請求項2】前記各転送時において転送される前記バー
幅データの最後尾部分であってその次の転送時において
転送される前記バー幅データの先頭部分にも含まれる部
分の量を、一個のバーコードの先頭端から最終端までに
対応するバー幅データの量よりも大きくしたことを特徴
とする請求項1記載のバーコード読取装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP22782295A JP3292635B2 (ja) | 1995-09-05 | 1995-09-05 | バーコード読取装置 |
US08/654,676 US5670771A (en) | 1995-09-05 | 1996-05-29 | Apparatus for reading a bar code |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP22782295A JP3292635B2 (ja) | 1995-09-05 | 1995-09-05 | バーコード読取装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0973504A JPH0973504A (ja) | 1997-03-18 |
JP3292635B2 true JP3292635B2 (ja) | 2002-06-17 |
Family
ID=16866925
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP22782295A Expired - Lifetime JP3292635B2 (ja) | 1995-09-05 | 1995-09-05 | バーコード読取装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US5670771A (ja) |
JP (1) | JP3292635B2 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8682077B1 (en) | 2000-11-28 | 2014-03-25 | Hand Held Products, Inc. | Method for omnidirectional processing of 2D images including recognizable characters |
US7578436B1 (en) * | 2004-11-08 | 2009-08-25 | Pisafe, Inc. | Method and apparatus for providing secure document distribution |
US7543748B2 (en) * | 2005-02-16 | 2009-06-09 | Pisafe, Inc. | Method and system for creating and using redundant and high capacity barcodes |
US7571864B2 (en) | 2005-12-16 | 2009-08-11 | Pisafe, Inc. | Method and system for creating and using barcodes |
DE102006017194B4 (de) * | 2006-04-12 | 2010-11-04 | Birgit Riesinger | Flüssigkeitsdurchlässiger Primärverband |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3240750B2 (ja) * | 1993-06-03 | 2001-12-25 | ソニー株式会社 | 二値化回路及び固体撮像装置 |
-
1995
- 1995-09-05 JP JP22782295A patent/JP3292635B2/ja not_active Expired - Lifetime
-
1996
- 1996-05-29 US US08/654,676 patent/US5670771A/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPH0973504A (ja) | 1997-03-18 |
US5670771A (en) | 1997-09-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2750083B2 (ja) | 走査装置 | |
EP0980537B1 (en) | Optical scanner and image reader for reading images and decoding optical information including one and two dimensional symbologies at variable depth of field | |
US3971917A (en) | Labels and label readers | |
EP1025532B1 (en) | Ccd-based bar code scanner | |
EP0029456B1 (en) | Slot scanning system | |
EP0029455B1 (en) | Symbol processing system | |
EP1466291B1 (en) | Method and apparatus for rapid image capture in an image system | |
EP1100038A2 (en) | CCD-based bar code scanner | |
JPH02257295A (ja) | バーコード読取り方法及びその装置 | |
US7389923B2 (en) | Methods and apparatus for tracking the direction of a moving item by a bar code scanner | |
US5821520A (en) | Bar code scanning system with the pre-decoding signal processing and method for bar code candidate selection for decoding | |
US6247646B1 (en) | Bar code reader, and bar code reading method | |
JP4491082B2 (ja) | バーコードスキャナ | |
JP3292635B2 (ja) | バーコード読取装置 | |
JPH0246986B2 (ja) | ||
JP3514982B2 (ja) | バーコード読取装置及びバーコード読取方法 | |
US5481097A (en) | Apparatus and method for decoding bar codes | |
US4059225A (en) | Labels and label readers | |
JPH02257378A (ja) | 光スキヤナの出力反復方法及び装置 | |
JP3083464B2 (ja) | バーコード検出装置及び検出方法 | |
JPH0283681A (ja) | 光学式読取装置 | |
EP1916557B1 (en) | Optical scanner and image reader for reading images and decoding optical information including one and two dimensional symbologies at variable depth of field | |
JPS6131912B2 (ja) | ||
JPS63266585A (ja) | 読み取り制御方式 | |
JP2751641B2 (ja) | バーコード読取装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20020312 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080329 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090329 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100329 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100329 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110329 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110329 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120329 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130329 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130329 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140329 Year of fee payment: 12 |
|
EXPY | Cancellation because of completion of term |