JPH04268984A - 光学読取装置 - Google Patents

光学読取装置

Info

Publication number
JPH04268984A
JPH04268984A JP3050089A JP5008991A JPH04268984A JP H04268984 A JPH04268984 A JP H04268984A JP 3050089 A JP3050089 A JP 3050089A JP 5008991 A JP5008991 A JP 5008991A JP H04268984 A JPH04268984 A JP H04268984A
Authority
JP
Japan
Prior art keywords
character
barcode
code
counter
bars
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.)
Pending
Application number
JP3050089A
Other languages
English (en)
Inventor
Kazuo Hasegawa
和男 長谷川
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.)
Alps Alpine Co Ltd
Original Assignee
Alps Electric Co Ltd
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 Alps Electric Co Ltd filed Critical Alps Electric Co Ltd
Priority to JP3050089A priority Critical patent/JPH04268984A/ja
Priority to US07/839,463 priority patent/US5336874A/en
Publication of JPH04268984A publication Critical patent/JPH04268984A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、紙などのメデイア上に
印刷されたバーコードを読み取る光学読取装置に係り、
特に、バーコードの読取りエラー検出に関する。
【0002】
【従来の技術】バーコードは、文字や数字などのキヤラ
クタを幅が異なる複数個のバーでもつてコード化するこ
とにより、商品の値段や商品名などのキヤラクタ列をバ
ーの配列でもつて表わすようにしたものである。キヤラ
クタを表わすコードを、以下、キヤラクタコードという
が、1キヤラクタコードを表わすバーの個数や太バー、
細バーの組合せパターンはバーコードの形式によつて異
なつているものの、いずれの形式も、全てのキヤラクタ
コードを表わすバーの列の前後に夫々マージン(空白部
)とスタートコード、ストツプコードを表わすバー列が
設けられている。以下では、説明を明確にするために、
バーコードの形式をInterleaved  2of
5とする。これは、5本の黒バーで1キヤラクタを表わ
し、また、黒バーの間隔をなす白バー5本でも1キヤラ
クタを表わすようにしたものである。1つのバーコード
は複数個のキヤラクタコードを表わしているが、各キヤ
ラクタコードを1桁として複数桁のキヤラクタコードを
表わしている。
【0003】この種のバーコード表示では、このバーコ
ード表示の左側での所定幅の媒体の地色の部分をスター
トマージン、右側での所定幅の媒体の地色の部分をスト
ツプマージンとし、これらマージンをバーコード表示が
なされていることを判定するために使用する。バーコー
ド表示の左端の細バーとこれに続く細バーとはスタート
コードを表わし、右端の細バーとこれより1つ左側の太
バーとがストツプコードを表わしている。そして、これ
らスタートコード、ストツプコードとの間に、所定本数
の細バーや太バー(黒バー)と細スペースや太スベース
(白バー)との組合わせでもつて夫々の表示内容を判定
するキヤラクタコードが表示されている。ここで、キヤ
ラクタコードの配列方向(すなわち、スタートコードか
らストツプコードへの方向)を順方向とすると、バーコ
ードは上記の順方向に読み取られるようにするのが一般
的であるが、逆方向に読み取られる場合もあり得、この
ような場合には、ストツプコードがスタートコードであ
るかのように、また、スタートコードがストツプコード
であるかのように読み取られるから、読取り方向によつ
てスタートコード、ストツプコードのパターンが違うこ
とになり、これによつてバーコードの読み取り方向を判
別できるようにしている。
【0004】かかるバーコードを読み取る光学読取装置
はバーコードスキヤナと呼ばれるが、以下、ラインセン
サを用いた従来のバーコードスキヤナの一例を図2、図
3により説明する。但し、同図において、1は読取中信
号ラツチ回路、2は照光部、3は光学結像部、4は1走
査カウンタ、5はメデイア、6はバーコード、7はスタ
ートパルス発生回路、8はパルス幅設定回路、9はレベ
ル検出回路、10は光電変換部、11,12は分周回路
、13は発振回路、14は二値化回路、15は走査回数
定数メモリ、16は走査回数カウンタ、17は走査回数
比較器、18はエツジ検出回路、19はタイマカウンタ
、20はカウント値メモリ、21はカウント値メモリ制
御部、22はビツトイメージ変換器、23はキヤラクタ
コードビツトイメージメモリ、24はストツプコードビ
ツトイメージメモリ、25はビツトイメージメモリ制御
部、251はアドレスカウンタ、252はアドレスデコ
ーダ、2511はビツトカウンタ、2512はキヤラク
タカウンタ、26はスタートストツプ判定部、27はキ
ヤラクタ変換部、28はキヤラクタコード一致比較器、
29はエラー処理回路、30は定数メモリ、31はデー
タ一致回数カウンタ、32はデータ一致回数比較器、3
3は出力データ変換部である。
【0005】図2において、発振回路13は常時動作し
ており、その出力信号が分周回路11で分周されてクロ
ツクφ1が、また、分周回路12で分周されてクロツク
φ2が夫々形成される。クロツクφ1はラインセンサか
らなる光電変換部10と1走査カウンタ4とに供給され
、クロツクφ2はタイマカウンタ19に供給される。
【0006】図示しないホスト機器から読取開始信号S
が供給されると、読取中信号ラツチ回路1はセツトされ
て読取中信号READを出力し、照光部2とスタートパ
ルス発生回路7とに供給する。照光部2は発光素子とし
てLEDを有し、読取中信号READによつてLEDを
点灯させてメデイア5上のバーコード6の印刷領域を照
光する。この印刷領域から反射された光は光学結像部3
を介して光電変換部10であるラインセンサの受光面に
照射され、この光学結像部3によつてラインセンサの受
光面にバーコード6の像が結像される。以下、光電変換
部10をラインセンサとして説明する。
【0007】スタートパルス発生回路7は、次の4条件
、すなわち、 (1)1走査カウンタ4から走査終了信号SEDが供給
されている (2)読取中信号ラツチ回路1から読取中信号READ
が供給されている (3)パルス幅設定回路8でパルス幅設定が完了し、そ
の設定値が送られてきている (4)キヤラクタ変換部27からキヤラクタ変換終了信
号CEDが供給されている の条件を全て同時に満足しているとき、スタートパルス
STを発生する。かかる条件を、以下、パルス発生条件
という。
【0008】初期状態では、1走査カウンタ4は走査終
了信号SEDを、パルス幅設定回路8は初期値が設定さ
れていてこれを、キヤラクタ変換部27(図3)はキヤ
ラクタ変換終了信号CEDを夫々出力しており、読取中
信号ラツチ回路1から読取中信号READが供給開始さ
れると、スタートパルス発生回路7はパルス発生条件を
満足し、パルス幅設定回路8の初期値で決まるパルス幅
のスタートパルスSTを発生する。このスタートパルス
STは1走査カウンタ4とラインセンサ10とに供給さ
れる。
【0009】ラインセンサ10は、スタートパルスST
により、受光面の像をクロツクφ1が供給される毎に1
画素ずつ読み取り、バーコード6を走査して読み取る。 これにより、ラインセンサ10からは、バーコード6の
黒バーと白バーとでレベルが異なる電気信号が出力され
る。また、1走査カウンタ4はスタートパルスSTによ
つてクロツクφ1のカウントを開始して走査終了信号S
EDを出力しなくなり、ラインセンサ10の1走査分の
クロツクφ1をカウントすると、再び走査終了信号SE
Dを出力する。この走査終了信号SEDはスタートパル
ス発生回路7、走査回数カウンタ16、カウント値メモ
リ20、およびカウント値メモリ制御部21に供給され
る。
【0010】スタートパルスSTのパルス幅はラインセ
ンサ10での画素をなす各コンデンサの充電時間を決め
るものであり、この充電時間に応じてラインセンサ10
の出力信号のレベルの大きさが決まる。この出力信号は
レベル検出回路9に供給されてレベルの大きさが検出さ
れ、この検出結果に応じてパルス幅設定回路8で最適レ
ベルとなるようなパルス幅が設定される。スタートパル
ス発生回路7は、1走査カウンタ4から再び走査終了信
号SEDが供給されてパルス発生条件を満足すると、再
びパルス幅設定回路8の設定値に応じたパルス幅のスタ
ートパルスSTを発生し、ラインセンサ10を走査開始
させ、1走査カウンタ4をカウント開始させる。このよ
うにして、ラインセンサ10はバーコード6を繰り返し
走査する。
【0011】ラインセンサ10の出力信号は、二値化回
路14でレベルが2値化された後、エツジ検出回路18
でその立上り、立下りエツジが検出される。エツジ検出
回路18から出力されるエツジパルスEGはタイマカウ
ンタ19とカウント値メモリ制御部21とに供給される
【0012】タイマカウンタ19はエツジパルスEGを
リセツト信号として分周回路12からのクロツクφ2を
カウントする。したがつて、タイマカウンタ19からは
、バーコード6の各バーの幅を表わすカウント値Nを出
力する。このカウント値Nはカウント値メモリ制御部2
1によつて制御されるカウント値メモリ20に書き込ま
れる。カウント値メモリ20にバーコード6の全てのカ
ウント値Nが書き込まれ、1走査カウンタ4が走査終了
信号SEDを出力すると、カウント値メモリ20は読出
しモードとなり、カウント値メモリ制御部21の制御に
よつてカウント値メモリ20から書込まれたカウント値
Nが書き込まれた順次に読み出される。
【0013】カウント値メモリ20から出力されるカウ
ント値Nはビツトイメージ変換部22に供給され、予め
設定されている閾値と比較されてバーの種類を表わすビ
ツトイメージBIに変換される。
【0014】次に、図3について説明する。ビツトイメ
ージ変換部22からのビツトイメージBIはキヤラクタ
コードビツトイメージメモリ23、ストツプコードビツ
トイメージメモリ24およびビツトイメージメモリ制御
部25に供給される。ビツトイメージメモリ制御部25
はアドレスカウンタ251とアドレスデコーダ252と
からなつている。アドレスカウンタ251はビツトイメ
ージBI(すなわち、読み取られるバーコード6(図2
)のバーの本数をカウントするビツトカウンタ2511
と、このビツトカウンタ2511がバーコード6の前部
のストツプコードに対するビツトイメージBIをカウン
トした後の1キヤラクタ分のビツトイメージBIをカウ
ントする毎に1ずつカウントするキヤラクタカウンタ2
512とからなつている。アドレスデコーダ252はビ
ツトカウンタ2511とキヤラクタカウンタ2512の
カウント値をデコードし、アドレス信号を形成して出力
する。
【0015】ここで、アドレスデコーダ252から出力
されるアドレス信号はビツトカウンタ2511からのカ
ウント値のデコード値とキヤラクタカウンタ2512か
らのカウント値のデコード値とからなり、ビツトカウン
タ2511がストツプコードのビツトイメージBIをカ
ウントする期間キヤラクタカウンタ2512のカウント
値は0である。ビツトカウンタ2511がキヤラクタコ
ードの最初のバーに対する最初のビツトイメージBIを
カウントすると、キヤラクタカウンタ2512は1だけ
カウントしてカウント値が1となり、これ以後、ビツト
カウンタ2511が1キヤラクタ分のビツトイメージB
Iをカウントする毎にキヤラクタカウンタ2512のカ
ウント値が1ずつインクリメントする。
【0016】一方、ストツプコードビツトイメージメモ
リ24には、キヤラクタカウンタ2512のカウント値
が0のときのアドレスデコーダ252からのアドレス信
号で指定されるアドレスのみが設定され、キヤラクタコ
ードビツトイメージメモリ23には、キヤラクタカウン
タ2512のカウント値が0以外のときのアドレスデコ
ーダ252からのアドレス信号で指定されるアドレスの
みが指定される。
【0017】そこで、かかるビツトイメージメモリ制御
部25の動作とメモリ23,24のアドレス指定とによ
り、ストツプコードのビツトイメージBIがストツプコ
ードビツトイメージメモリ24に書き込まれ、次いでキ
ヤラクタコードのビツトイメージBIがキヤラクタコー
ドビツトイメージメモリ23に書き込まれる。なお、I
nterleaved  2of5の場合、黒バーに対
応するビツトイメージBIと白バーに対するビツトイメ
ージBIとが区分されてキヤラクタコードビツトイメー
ジメモリ23に書き込まれる。
【0018】カウント値メモリ20(図2)でのカウン
ト値Nの読出しが終つてキヤラクタコードビツトイメー
ジメモリ23、ストツプコードビツトイメージメモリ2
4でのビツトイメージBIの書込みが終ると、これらメ
モリ23,24は読出しモードとなり、また、ビツトイ
メージ制御メモリ25は、ビツトカウンタ2511、キ
ヤラクタカウンタ2512がクリアされた後、アドレス
信号を発生し始める。このアドレス信号により、まず、
ストツプコードビツトイメージメモリ24からストツプ
コードのビツトイメージからなるデータSCDが読み出
されてスタートストツプ判定部26に供給され、次いで
、キヤラクタコードビツトイメージメモリ23から1キ
ヤラクタ分のバー本数に等しい個数のビツトイメージか
らなるデータCCDが順番に読み出されてキヤラクタ変
換部27に供給されるのであるが、ビツトイメージメモ
リ制御部25は、キヤラクタ変換部27が1つのデータ
CCDをキヤラクタ変換する毎にビツトカウンタ251
1が内部クロツクを1キヤラクタのバー本数に等しい個
数だけカウントしてアドレス信号を発生し、これによつ
てキヤラクタコードビツトイメージメモリ23から次の
データCCDを読み出される。
【0019】スタートストツプ判定部26においては、
バーコード5(図2)に使用される正しいストツプコー
ドを正しく正方向、逆方向に読み取つたときに得られる
2種類のビツトイメージによるビツトパターン(以下、
登録ストツプコードパターンという)がROMに登録さ
れており、ストツプコードビツトイメージメモリ24か
らのビツトイメージによるデータSCDのビツトパター
ン(以下、検出ストツプコードパターンという)が登録
ストツプコードパターンと比較され、いずれの登録スト
ツプコードパターンと一致するか判定される。この検出
ストツプコードパターンと一致する登録ストツプコード
パターンがあるときには、これによつてバーコード6の
読取り方向も判断されたことになるから、この一致した
登録ストツプコードパターンに対応したデータ(ストツ
プコードデータ)SSCを出力データ変換部33に供給
するとともに、変換方向指示信号CDDをキヤラクタ変
換部27に送る。
【0020】検出ストツプコードパターンSCDに一致
する登録ストツプコードパターンがないときには、スタ
ートストツプ判定部26はエラー信号ERR1を出力し
、エラー処理回路29に供給する。
【0021】キヤラクタ変換部27においては、バーコ
ードに使用される全てのキヤラクタコードに対し、正方
向に正しく読み取つたときに得られるビツトイメージに
よるビツトパターン(以下、登録キヤラクタコードパタ
ーンという)がROMに登録されており、キヤラクタコ
ードビツトイメージメモリ23からのデータCCDのビ
ツトパターン(以下、検出キヤラクタコードパターンと
いう)が登録キヤラクタコードパターンと比較され、い
ずれの登録キヤラクタコードパターンと一致するか判定
される。この場合、バーコード6が逆方向に読み取られ
ているときには、スタートストツプ判定部26からの変
換方向指示信号CDDにより、検出キヤラクタコードパ
ターンCCDが前後反転されて登録キヤラクタコードパ
ターンと比較される。
【0022】検出キヤラクタコードパターンCCDが登
録キヤラクタコードパターンのいずれかと一致すると、
キヤラクタ変換部27は一致した登録キヤラクタコード
パターンに対するキヤラクタデータCDを出力し、キヤ
ラクタコード一致比較器28と出力データ変換部33と
に送る。検出キヤラクタコードパターンCCDがいずれ
の登録キヤラクタコードパターンと一致しないときには
、キヤラクタ変換部27はエラー信号ERR2を発生し
てエラー処理回路29に送る。また、バーコード6の1
走査分の検出キヤラクタコードパターンCCDが全てキ
ヤラクタデータCDに変換されると、キヤラクタ変換部
27はキヤラクタ変換終了信号CEDを発生して図2の
スタートパルス発生回路7に供給する。これにより、こ
のスタートパルス発生回路7はスタートパルスSTを発
生し、ラインセンサ10(図2)はバーコード6の次の
読取り走査を行なう。
【0023】キヤラクタコード一致比較器28はキヤラ
クタ変換部27からの1走査分のキヤラクタデータCD
を保持し、これと次回の走査によつてキヤラクタ変換部
27から供給されるキヤラクタデータCDとを比較し、
全てのキヤラクタデータが一致したとき、一致パルスを
出力してデータ一致回数カウンタ31に供給する。デー
タ一致回数カウンタ31はこの一致パルスをカウントし
、このカウント値がデータ一致回数比較器32で定数メ
モリ30に記憶されている一致回数設定値と比較される
。データ一致回数カウンタ31のカウント値が一致回数
設定値以上となると、データ一致回数比較器32は読取
完了信号REND1を発生して出力データ変換部33に
送る。前回走査と今回走査とのキヤラクタ変換部27か
らのキヤラクタデータCDが1つでも一致しないと、キ
ヤラクタコード一致比較器28はエラー信号ERR3を
出力してエラー処理回路29に送るとともに、データ一
致回路カウンタ31をクリアする。
【0024】出力データ変換部33は、キヤラクタ変換
部27からのキヤラクタデータCDとスタートストツプ
判定部26からのストツプコードデータSSCをバーコ
ード6の走査毎に取り込んで最新のものを保持し、デー
タ一致回数比較器32から読取完了信号REND1が供
給されると、保持しているキヤラクタデータCDとスト
ツプコードデータSSCとを所定の形式に変換してホス
ト機器(図示せず)に送る。これとともに、読取終了を
表示するための表示指示信号DISをランプやブザーな
どの表示装置(図示せず)に送り、また、リセツト信号
RSTを発生して自身を初期化する。このリセツト信号
RSTは読取中信号ラツチ回路1(図2)などに供給さ
れ、これらをリセツトする。この読取中信号ラツチ回路
1は、リセツト信号RSTでリセツトされると、読取中
信号READを出力しなくなり、バーコード6の読取り
は停止する。照光部2も消灯する。
【0025】このようにして、前後の走査によるキヤラ
クタデータが定数メモリ30での一定回数設定値による
回数(たとえば2回)連続して一致すると、バーコード
6が正しく読み取られたとして読取りが終るが、この回
数連続して一致しなければ、バーコード6の読取りが繰
り返されるのであるが、ある回数読取りが繰り返されて
もデータ一致回数比較器32から読取完了信号REND
1が出力されなければ、それ以上のバーコード6の読取
りは禁止される。
【0026】すなわち、図2において、走査回数カウン
タ16は1走査カウンタ4が走査終了信号SEDを出力
する毎に1ずつカウントアツプする。この走査回数カウ
ンタ16のカウント値はラインセンサ10の走査回数を
表わし、走査回数比較器17で走査回数定数メモリ15
に設定されている定数と比較される。走査回数カウンタ
16のカウント値がこの定数以上となると、走査回数比
較器17は読取終了信号REND2を出力し、図3の出
力データ変換部33に供給する。
【0027】そこで、この出力データ変換部33は、キ
ヤラクタデータやストツプコードデータをホスト機器に
送ることなく、リセツト信号RSTを出力して自身を初
期化する。これにより、バーコード6の読取りは失敗し
たものとしてバーコード6の読取りを中止する。また、
読取り不能を示す表示指示信号DISを表示装置に送る
【0028】エラー処理回路29は、エラー信号ERR
1,ERR2,ERR3のいずれが供給されても、キヤ
ラクタ変換リセツト信号CERTを出力し、図2のカウ
ント値メモリ制御部21、ビツトイメージ変換部22や
図3のキヤラクタコードビツトイメージメモリ23、ス
トツプコードビツトイメージメモリ24、ビツトイメー
ジメモリ制御部25、スタートストツプ判定部26、キ
ヤラクタ変換部27などを初期化する。
【0029】キヤラクタ変換部27は、キヤラクタ変換
リセツト信号CERTで初期化されると、キヤラクタ変
換終了信号CEDを出力し、これによつてスタートパル
ス発生回路7から次のスタートパルスSTを発生させる
【0030】以上のように、ラインセンサ10はバーコ
ード6を複数回読取り走査し、定数メモリ30の一致回
数設定値に等しい回数連続してキヤラクタコードが一致
すると、バーコード6の読取りが正しく行なわれたもの
とし、ホスト機器にこのキヤラクタコードを送つて読取
り動作を完了する。
【0031】
【発明が解決しようとする課題】ところで、バーコード
につぶれや欠け、ボイドなどがあつて、あるいはバーコ
ードのコントラストが小ないなどのため、バーコードの
品質が悪いときには、バーコードの読取りに誤りがあつ
てデコードできない場合がある。また、メデイア上での
バーコードスキヤナのタツチ位置が適切でなく、ライン
センサの走査範囲からバーコードの一部がはみ出してい
るときにも、バーコードの一部しか読み取れないために
デコードできない場合がある。さらに、メデイオ上のバ
ーコードのバー間にしみや傷などがあつた場合、これが
バーとして読み取られることがある。このような場合で
も、デコードできない場合がある。このようにデコード
できないのは、以上のような原因により、図3において
、キヤラクタコードビツトイメージメモリ23から出力
されるキヤラクタ単位の検出キヤラクタコードパターン
CCDの少なくとも1つが、キヤラクタ変換部27に設
定されている登録キヤラクタコードパターンのいずれと
も一致しないという事態が生ずるからである。
【0032】このようにキヤラクタコードビツトイメー
ジメモリ23から登録キヤラクタコードパターンのいず
れとも一致しない検出キヤラクタコードパターンCCD
が供給されると、キヤラクタ変換部27はエラー信号E
RR2を発生してエラー処理回路29に送り、これがキ
ヤラクタ変換リセツト信号CERTを発生することによ
り、キヤラクタ変換が中止してバーコードの次の読取り
が開始する。
【0033】しかし、キヤラクタ変換部27によるキヤ
ラクタ変換処理は検出キヤラクタコードパターンCCD
を順次登録キヤラクタコードパターンと比較して一致す
る登録キヤラクタコードパターンを探す処理であるから
、その変換処理に長い時間を要するものであり、バーコ
ードスキヤナのデータ処理の中で最も時間を要する処理
である。上記のようにいずれの登録キヤラクタコードパ
ターンと一致しない検出キヤラクタコードパターンCC
Dは、全ての登録キヤラクタコードパターンと比較して
初めて判明するものであり、特に、かかる検出キヤラク
タコードパターンが読み取られるバーコードの最後のキ
ヤラクタコードに対するものであるときには、これが判
明するのに非常に長い時間を要することになる。
【0034】上記バーコードスキヤナでは、ラインセン
サの読取走査毎にスタートパルスのパルス幅を変化させ
てラインセンサの受光感度を順次変化させ、バーコード
の汚れやボイド、欠け、コントラストなどに影響を受け
にくい条件を探しながらデコードが行なわれる。しかし
、これでも上記の原因でもつて何度バーコードを読み返
してもデコードできない場合があり、遂には図2の走査
回数定数メモリ15の定数で決まる回数バーコードの読
取り走査が行なわれると、図3の出力データ変換部33
はリセツト信号RSTを出力してバーコードの読取りを
中止し、これと同時に、表示指示信号DISを出力して
読取不能であることを表示する。
【0035】しかし、これまでには非常に長い時間を要
してしまい、この間ユーザはバーコードの誤読取りが行
なわれていることを知らない。また、正常にバーコード
を読み取つてデコードするのには、通常0.3秒程を要
して瞬間的なものであるが、上記のように読取り不能が
表示されるまでは1秒程度かかつてしまう。このため、
このような長時間を要して表示がなされるのはユーザに
とつて違和感を生じさせるし、また、長時間を要してな
された表示が読取り不能であると、ユーザのバーコード
読取り作業のリズムに乱れを生じさせ、大きな疲労感を
生じさせることになる。
【0036】本発明の目的は、かかる問題を解消し、バ
ーコードの誤読取りを迅速に検出できるようにした光学
読取装置を提供することにある。
【0037】
【課題を解決するための手段】使用バーコードの形式が
決まつていれば、1キヤラクタコード中の太バーと細バ
ーとの本数の比は一定である。このことから、本発明は
、上記目的を達成するために、ビツトイメージから1キ
ヤラクタ当りの太バーもしくは細バーの本数を検出する
手段と、該手段の検出値と太バーもしくは細バーの真の
本数を表わす基準値とを比較する手段とを設ける。
【0038】
【作用】キヤラクタ変換する前のビツトイメージから読
み取られるバーコードの太バーもしくは細バーの読取り
本数が正しいか否かを判定でき、キヤラクタ変換処理前
にバーコードの誤読取りを検出できる。
【0039】
【実施例】以下、本発明の実施例を図面によつて説明す
る。図1は本発明による光学読取装置の一実施例の要部
を示すブロツク図であつて、253は定数メモリ、25
4はパリテイ比較器、255はパリテイカウンタであり
、図3に対応する部分には同一符号をつけて重複する説
明を省略する。なお、この実施例は従来の図2に示した
ものと同一構成の前段部と図1に示す後段部とでなるが
、この前段部は既に説明したので、後段部のみを図1に
示して説明する。  図1において、この実施例は、バ
ーコードのキヤラクタでの太バーもしくは細バーをパリ
テイ情報として用いるものであつて、ビツトイメージメ
モリ制御部25は、図3に示した構成に加え、定数メモ
リ253、パリテイ比較器254およびパリテイカウン
タ255とが付加されており、定数メモリ253には、
対象となるバーコードの規格で決まる1キヤラクタ当り
の太バーもしくは細バーの本数(以下では、太バーの本
数とする)を表わす定数(20f5バーコードでは値2
)が格納されている。
【0040】バーコードが読み取られてビツトイメージ
BIが供給されると、図3で説明したように、キヤラク
タカウンタ2512がこのバーコードの桁数をカウント
する。  パリテイカウンタ255はキヤラクタカウン
タ2512のカウント値が1以上のとき動作し、バーコ
ードの太バーに対するビツトイメージBIをカウントす
るが、キヤラクタカウンタ2512のカウント値が変化
するタイミングよりもわずかに遅れて、かつこのタイミ
ング後に最初に供給されるビツトイメージBIよりも早
いタイミングでリセツトされる。これにより、パリテイ
カウンタ255はバーコードの1キヤラクタコード分の
本数のバー毎に太バーの本数をカウントすることになる
。 かかる動作をなすために、パリテイカウンタ255には
、たとえばキヤラクタカウンタ2512のカウント値が
変化したことと1以上であるか否かを検出するデコーダ
と、このデコーダの検出出力から上記のタイミングのリ
セツトパルスを形成するパルス発生器とが設けられてい
る。
【0041】パリテイカウンタ254はキヤラクタカウ
ンタ2512のカウント値が1以上となると動作可能と
なり、このカウント値が変化するタイミングでパリテイ
カウンタ255のカウント値と定数メモリ253の定数
とを比較し、これらが一致しないときエラー信号ERR
4を出力する。これにより、1キヤラクタコード分の本
数のバー毎の太バーの本数が正規の本数となるようにバ
ーコードが読み取られているか否か、すなわちバーコー
ドが誤りなく読み取られているか否か判定されることに
なり、バーコードの読取りに誤りがあれば、パリテイ比
較器254はエラー信号ERR4を発生する。このエラ
ー信号ERR4によつてエラー処理回路29がキヤラク
タ変換リセツト信号CERTを発生し、キヤラクタコー
ドビツトイメージメモリ23やストツプコードビツトイ
メージメモリ24など各部を初期化し、バーコードの読
取りを再開させる。
【0042】そこで、バーコードの品質が悪くて太バー
が細バーとして読み取られたり、バーコードのバー間に
しみや傷などがあつてこれがバーとして読み取られたり
した場合には、前者の場合、そのバーを含むキヤラクタ
コードでの太バーの本数が減少し、後者の場合には、擬
似バーの付加によつてその分キヤラクタコード毎のバー
がずれてしまつていずれかのキヤラクタコードでの太バ
ーの本数が正規の本数と異なつてしまうから、このこと
がパリテイ比較器254で検出されることになる。
【0043】このようなバーコードの誤読取りはキヤラ
クタコードビツトイメージメモリ23にビツトイメージ
BIが書き込まれているときに検出される。したがつて
、バーコードの誤読取りがあると、これが検出された時
点でキヤラクタコードビツトイメージメモリ23でのビ
ツトイメージBIの書込みが中止し、キヤラクタ変換処
理に至らずにバーコードの次の読取りに移行する。
【0044】なお、メデイア上でのバーコードスキヤナ
のタツチ位置が適切でなく、バーコードの一部がライン
センサの走査範囲からはみ出して読み取られない場合が
ある。このような場合、ラインセンサによつて読取られ
るバーコードの最後のキヤラクタコードの一部が読み取
られず、このキヤラクタコードのバー本数は正規のもの
でなくなる。しかし、この場合には、図2のカウント値
メモリ制御部21が誤動作を起し、カウント値メモリ2
0で正しい読出しが行なわれない。すなわち、カウント
値メモリ制御部21は、タイマカウンタ19からのカウ
ント値により、バーコード6の前部のスタートコードで
もつてカウント値メモリ20の書込みを開始させて後部
のストツプコードで初期状態に戻つてこの書込みを停止
させ、しかる後、1走査カウンタ4からの走査終了信号
SEDによつてカウント値メモリ20の読出しを開始さ
せるのであるが、上記のようにバーコード6の一部が読
み取られないと、カウント値メモリ制御部21は、バー
コード6の後部のストツプコードを検出できないために
初期状態に戻らず、そのまま走査終了信号SEDによつ
てカウント値メモリ20の読出しを開始させる。したが
つて、カウント値メモリ20からは正しくカウント値が
読み出されず、バーコード6のバー配列とは全く異なつ
たバー配列に対するビツトイメージBIがビツトイメー
ジ変換器22(図2)から出力される。このことは図1
のパリテイ比較器254で検出され、エラー信号ERR
4が発生する。
【0045】なお、パリテイカウンタ255が細バーに
対するビートイメージBIをカウントするようにしても
よい。
【0046】
【発明の効果】以上説明したように、本発明によれば、
バーコードの品質劣化やバーコードの不完全読取り、バ
ーコードのバー間のしみ、傷などの読取りなどによるバ
ーコードの誤読取りを、読取り情報をデコードする前に
検出することができ、バーコードの誤読取りを検出に要
する時間を大幅に短縮することができる。
【図面の簡単な説明】
【図1】本発明による光学読取装置の一実施例の要部を
示すブロツク図である。
【図2】従来の光学読取装置の一例の一部を示すブロツ
ク図である。
【図3】従来の光学読取装置の一例の図2の残りの部分
を示すブロツク図である。
【符号の説明】
23  キヤラクタコードビツトイメージメモリ24 
 ストツプコードビツトイメージメモリ25  ビツト
イメージメモリ制御部 251  アドレスカウンタ 2511  ビツトカウンタ 2512  キヤラクタカウンタ 252  アドレスデコーダ 253  定数メモリ 254  パリテイ比較器 255  パリテイカウンタ 26  スタートストツプ判定部 27  キヤラクタ変換部 29  エラー処理回路

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】  読み取られるバーコードのバー毎に該
    バーの種類を表わすビツトイメージを生成して順次メモ
    リに書込み、該メモリに該バーコード分の該ビツトイメ
    ージが書き込まれた後、該メモリから該ビツトイメージ
    を読み出してキヤラクタ変換する光学読取装置において
    、該バーコードのキヤラクタコードを形成するバーの真
    の本数に等しい個数の該ビツトイメージ毎に特定の種類
    のバーに対するビツトイメージの個数を検出する検出手
    段と、該検出手段の検出値と該バーコードのキヤラクタ
    コードを形成するバーの該真の本数に等しい基準値とを
    比較する比較手段とを設け、該検出値と該基準値とが一
    致しないとき直ちに該バーコードの次の読取りを行なわ
    せることを特徴とする光学読取装置。
JP3050089A 1991-02-22 1991-02-25 光学読取装置 Pending JPH04268984A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP3050089A JPH04268984A (ja) 1991-02-25 1991-02-25 光学読取装置
US07/839,463 US5336874A (en) 1991-02-22 1992-02-20 Bar code reader with error detection and decode control

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3050089A JPH04268984A (ja) 1991-02-25 1991-02-25 光学読取装置

Publications (1)

Publication Number Publication Date
JPH04268984A true JPH04268984A (ja) 1992-09-24

Family

ID=12849319

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3050089A Pending JPH04268984A (ja) 1991-02-22 1991-02-25 光学読取装置

Country Status (1)

Country Link
JP (1) JPH04268984A (ja)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63115282A (ja) * 1986-11-01 1988-05-19 Nippon Denso Co Ltd バ−コ−ド読取装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63115282A (ja) * 1986-11-01 1988-05-19 Nippon Denso Co Ltd バ−コ−ド読取装置

Similar Documents

Publication Publication Date Title
US5336874A (en) Bar code reader with error detection and decode control
US4488678A (en) Method and apparatus for reading a bar code
US5128527A (en) Apparatus for reading a bar code
US4900907A (en) Optical information reading apparatus
US6095419A (en) Bar code reading apparatus for reading plural code systems
JPH03204790A (ja) 部分走査からバーコード記号を復号する方法
EP0176933A2 (en) Bar code reading apparatus
US5537431A (en) Method and apparatus for bar code reading and decoding
JPH07175880A (ja) スキャナインターフェース装置およびそのインターフェースする方法
US5471041A (en) Bar-code reader device
US4528443A (en) Bar code reading system and method
US5302814A (en) Bar code reading apparatus
JPS6118232B2 (ja)
JPH1153465A (ja) バーコード読取装置
US5686716A (en) Bar code void and spot discrimination
JPH04268984A (ja) 光学読取装置
JP2742144B2 (ja) 光学読取装置
JPH04268985A (ja) 光学読取装置
JPH04268681A (ja) 光学読取装置
JPH0120795B2 (ja)
JPH04268983A (ja) 光学読取装置
US7070108B1 (en) Bar code scanner
JP3835003B2 (ja) データコード読取装置およびそのプログラム記録媒体
US5747787A (en) Data symbol reading device
US5952643A (en) Bar code decoder for a lightpen