JPH0344353B2 - - Google Patents

Info

Publication number
JPH0344353B2
JPH0344353B2 JP60020241A JP2024185A JPH0344353B2 JP H0344353 B2 JPH0344353 B2 JP H0344353B2 JP 60020241 A JP60020241 A JP 60020241A JP 2024185 A JP2024185 A JP 2024185A JP H0344353 B2 JPH0344353 B2 JP H0344353B2
Authority
JP
Japan
Prior art keywords
bar
width
threshold value
count value
read
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
Application number
JP60020241A
Other languages
Japanese (ja)
Other versions
JPS61180380A (en
Inventor
Yoshitake Matsura
Harumi Sakata
Genichi Mori
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.)
Fujitsu Ltd
Fujitsu Frontech Ltd
Fuji Facom Corp
Original Assignee
Fujitsu Ltd
Fujitsu Frontech Ltd
Fuji Facom 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 Fujitsu Ltd, Fujitsu Frontech Ltd, Fuji Facom Corp filed Critical Fujitsu Ltd
Priority to JP60020241A priority Critical patent/JPS61180380A/en
Publication of JPS61180380A publication Critical patent/JPS61180380A/en
Publication of JPH0344353B2 publication Critical patent/JPH0344353B2/ja
Granted legal-status Critical Current

Links

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はバーコード読取装置に係り、特に読取
つたバーコードのバー幅の大小を判定する際の基
準となる閾値を、適性な値に設定することを可能
として、バーコードの読取率を向上させるバーコ
ード復調方式に関する。
[Detailed Description of the Invention] [Industrial Application Field] The present invention relates to a barcode reading device, and in particular to setting a threshold value, which is a standard for determining the bar width of a read barcode, to an appropriate value. The present invention relates to a barcode demodulation method that improves the reading rate of barcodes.

最近、小売行の機械化の為に、品名コード番
号、値段等が棒状のバーコードで表され、食品、
雑貨等に印刷されている。そして、スーパーマー
ケツト等の短時間で大量の買物客を処理したい業
種においては、バーコード読取装置を設置して、
このバーコードを読取らせ、バーコードに記録さ
れた情報を販売時点情報管理に利用している。
Recently, due to the mechanization of retail banks, product name code numbers, prices, etc. are expressed in barcodes, and food,
Printed on miscellaneous goods, etc. In industries such as supermarkets that want to handle a large number of shoppers in a short period of time, barcode reading devices are installed.
This barcode is read and the information recorded in the barcode is used for point of sale information management.

通常バーコードの読取りには、バーコードが印
刷された面上を光で走査し、バーコードにより変
調された反射光からコード化されたデータを復調
する方法が用いられている。即ち、バーには通常
黒バー(黒以外の色もある)と白バー(白以外の
色もある)の2種類があり、この黒バーと白バー
にも、その幅には大小2種類があつて、この黒及
び白のバー幅の組合わせでコードが構成される。
Normally, barcodes are read by scanning a surface on which a barcode is printed with light and demodulating coded data from reflected light modulated by the barcode. In other words, there are usually two types of bars: black bars (colors other than black are also available) and white bars (colors other than white are also available), and these black bars and white bars also have two types of width, large and small. A code is then composed of the combination of the black and white bar widths.

従つて、このバー幅を検出することはバーコー
ドを復調する上で重要事項であり、バーコードを
走査する時の走査速度の変動にも影響されないこ
とが必要である。
Therefore, detecting this bar width is an important matter in demodulating a bar code, and it is necessary to be unaffected by fluctuations in scanning speed when scanning a bar code.

〔従来の技術〕[Conventional technology]

第3図は従来のバーコード読取装置の一例を示
す回路のブロツク図である。
FIG. 3 is a block diagram of a circuit showing an example of a conventional bar code reading device.

バーコード1を例えばラインペン2で走査する
と、ラインペン2から投射される光の反射光が、
ラインペン2に入り、バーコードにより変調され
た反射光は、光電変換回路3に送出されて電気信
号に変換され、波形整形回路4に送出される。
For example, when a barcode 1 is scanned with a line pen 2, the reflected light projected from the line pen 2 is
The reflected light that enters the line pen 2 and is modulated by the barcode is sent to the photoelectric conversion circuit 3 where it is converted into an electrical signal and sent to the waveform shaping circuit 4.

波形整形回路4で整形された電気信号の波形
は、ほぼ黒及び白のバー幅に応じた幅を持つパル
ス波形となり、変換点検出回路6によりバー幅が
検出され、黒バーの広い幅(以後Wで表す)と狭
い幅(以後Nで表す)及び、白バーのWとNとが
バーコード1から読取られた順にバー幅カウンタ
7に送出されると共に、黒白記憶レジスタ5にも
送出される。
The waveform of the electrical signal shaped by the waveform shaping circuit 4 becomes a pulse waveform with a width approximately corresponding to the black and white bar widths, and the bar width is detected by the conversion point detection circuit 6, and the wide width of the black bar (hereinafter referred to as (represented by W), narrow width (hereinafter referred to as N), and W and N of the white bar are sent to the bar width counter 7 in the order in which they are read from barcode 1, and are also sent to the black and white storage register 5. .

バー幅カウンタ7に送出された黒バーのW、N
と白バーのW、Nのデータはクロツク発振回路8
から入る高周波数のサンプリング信号によりサン
プリングされ、このサンプリングにより計数され
たカウント値は夫々の幅を示すこととなる。そし
て、黒バー幅レジスタ9には黒バーのカウント値
が、白バー幅レジスタ10には白バーのカウント
値が記憶される。
W and N of the black bar sent to the bar width counter 7
The white bar W and N data are clock oscillation circuit 8.
The count values counted by this sampling indicate the respective widths. The black bar width register 9 stores the black bar count value, and the white bar width register 10 stores the white bar count value.

バー幅判定回路11は黒バー幅レジスタ9から
読出したカウント値と、白バー幅レジスタ10か
ら読出したカウント値とを閾値により比較して、
WかNかを判定する。バー幅判定回路11で判定
された結果は、ビツト判定回路12に送られ、黒
白記憶レジスタ5からの情報とにより、1文字分
(コード39では黒バーと白バーの合計数が9本
で構成される)の黒バーと白バーのWとNとの組
合わせデータから該当するビツトパターンが判定
される。
The bar width determination circuit 11 compares the count value read from the black bar width register 9 and the count value read from the white bar width register 10 using a threshold value.
Determine whether it is W or N. The result determined by the bar width determination circuit 11 is sent to the bit determination circuit 12, and is determined based on the information from the black and white storage register 5 for one character (in code 39, the total number of black bars and white bars is 9). The corresponding bit pattern is determined from the combination data of W and N of the black bar and white bar.

そして、ビツト判定回路12で判定されたビツ
トパターンは、ここでビツトパターン表と照合さ
れ、照合が一致するビツトパターンは正しく読取
られたものと判定されて、表示部14に表示され
ると共に、処理部13に送られて、バーコード1
を読取つたデータとして処理される。
Then, the bit pattern judged by the bit judgment circuit 12 is checked against a bit pattern table, and the bit pattern with a matching result is judged to have been read correctly and is displayed on the display section 14, as well as being processed. sent to section 13, barcode 1
is processed as read data.

第4図はバー幅判定回路11で用いられる閾値
を説明する図である。
FIG. 4 is a diagram illustrating threshold values used in the bar width determination circuit 11.

黒バー幅レジスタ9及び白バー幅レジスタ10
から入るカウント値は、前記の如くバー幅カウン
タ7がカウントした値である。そして、このカウ
ント値は一定の周波数でサンプリングされる為、
ラインペン2の走査速度に応じて変化する。
Black bar width register 9 and white bar width register 10
The count value entered from is the value counted by the bar width counter 7 as described above. And since this count value is sampled at a constant frequency,
It changes depending on the scanning speed of the line pen 2.

ところで、ライトペン2は人手によつて移動す
る為、走査速度が変動する。従つて、例えばバー
コード1上を走査する時の走査速度が次第に速く
なつたとすると、バー幅のカウント値は次第に減
少する。
By the way, since the light pen 2 is moved manually, the scanning speed varies. Therefore, for example, if the scanning speed when scanning barcode 1 gradually increases, the bar width count value gradually decreases.

第4図aは縦軸に前記カウント値をとり、点線
で示す一定レベルの閾値で、このカウント値を比
較し、バーの幅N、Wを判定する場合を示す。
FIG. 4a shows a case where the count value is plotted on the vertical axis and the count value is compared with a constant level threshold value shown by a dotted line to determine the widths N and W of the bar.

バーコード1を走査する速度は前記の如く人手
による為、一つのバーを読取る毎に変化する。従
つて、最初に読取つたスタートコードにより点線
で示す閾値を決定し、以後のデータを示す複数の
バーを読取る際に使用するが、この閾値速度がス
タート時点より速くなると、Wのバーのカウント
値が少なくなつて閾値より低くなり、Wのバー幅
がNと判定される。
The speed at which the barcode 1 is scanned changes each time one bar is read because it is done manually as described above. Therefore, the threshold value shown by the dotted line is determined by the start code read first, and is used when reading multiple bars indicating subsequent data.If this threshold speed becomes faster than the start point, the count value of the W bar will change. decreases and becomes lower than the threshold value, and the bar width of W is determined to be N.

第4図bは点線で示す如く、隣合うバーに或る
係数をかけ、閾値に幅を持たせて比較する場合
で、この閾値の幅内にあると判定されたものは、
その前に判定されたバー幅との比較において、変
化が無いということで同一とみなされる。しか
し、前記同様に走査速度がスタート時点より速く
なると、WがNに判定されることとなる。
As shown by the dotted line in Fig. 4b, adjacent bars are multiplied by a certain coefficient and compared by setting a range of threshold values, and those determined to be within the range of this threshold value are:
In comparison with the previously determined bar width, there is no change, so they are considered to be the same. However, as described above, if the scanning speed becomes faster than the starting point, W will be determined to be N.

上記は走査速度がスタート時点より遅くなつた
場合を説明したが、遅くなるとNがWと誤判定さ
れることとなる。
The above description has been made of the case where the scanning speed becomes slower than the starting point, but if it becomes slower, N will be erroneously determined to be W.

〔発明が解決しようとする問題点〕[Problem that the invention seeks to solve]

上記の如く、従来はライトペンを走らせる走査
速度の変動により、バーコードの読取り誤りが発
生し易く、読取率が悪いという問題がある。
As mentioned above, conventional barcode reading errors tend to occur due to fluctuations in the scanning speed at which the light pen is run, resulting in a poor reading rate.

〔問題点を解決するための手段〕[Means for solving problems]

上記問題点は、読取つたバーコードの波形をサ
ンプリングして得たカウント値を閾値を用いて区
分し、バー幅の判定を行うバーコード読取装置に
おいて、 バーコードの規格から黒バーと白バーの組合わ
せ状態が予め定められているスタートコード又は
ストツプコードから最初に読取られたバー幅の狭
いバーのカウント値Nとバー幅の広いバーのカウ
ント値Wとを抽出して(N+W)/2を演算して
閾値SHとし、該閾値SHを用いて、次に続いて読
取られるバーのバー幅を判定し、該続いて読取ら
れたバーのバー幅のカウント値N′又はW′と、前
記カウント値N又はWとを用い、(N′+W)/2
又は(N+W′)/2を演算して、閾値SH′とな
し、該閾値SH′を用いて(SH+SH′)/2を演
算して閾値SH″となし、該閾値SH″を用いて、前
記続いて読取られたバーの次に読取られたバーの
バー幅を判断し、以後読取られるバーに対して
は、前記SH′をSHとみなし、前記SH″をSH′とみ
なして、(SH+SH′)/2を演算して新たな閾値
SH″としてバー幅を判定する動作を黒バー及び白
バーに付いて繰り返し実行し、 該取り誤りが発生した場合は、更に1文字分の
黒バーの総てのバー幅のカウント値の合計を第1
の特定の数で割る演算を行つて新たな閾値として
黒バーのバー幅を判定し、1文字分の白バーの総
てのバー幅のカウント値の合計を第2の特定の数
で割る演算を行つて新たな閾値として白バーのバ
ー幅を判定する動作を行うようにした、本発明に
よるバーコード復調方式によつて解決される。
The above problem is caused by barcode reading devices that use thresholds to classify the count values obtained by sampling the waveform of the read barcode and determine the bar width. Extract the count value N of the narrow bar and the count value W of the wide bar that are first read from the start code or stop code whose combination status is predetermined and calculate (N+W)/2. is set as a threshold value SH, the bar width of the bar to be subsequently read is determined using the threshold value SH, and the bar width count value N' or W' of the subsequently read bar is determined, and the count value is determined as follows: Using N or W, (N′+W)/2
Or, calculate (N+W')/2 and set it as the threshold value SH', use the threshold value SH' to calculate (SH+SH')/2 and set it as the threshold value SH'', and use the threshold value SH'' to set the threshold value SH'. Determine the bar width of the bar read next to the bar read subsequently, and for the bars read thereafter, consider the SH′ as SH, the SH″ as SH′, and calculate (SH+SH′). )/2 to create a new threshold
Repeat the operation of determining the bar width as "SH" for the black bar and white bar, and if an error occurs, calculate the total count value of all the bar widths of the black bar for one character. 1st
The bar width of the black bar is determined as a new threshold by dividing by a specific number, and the sum of the count values of all the bar widths of the white bar for one character is divided by a second specific number. This problem is solved by the barcode demodulation method according to the present invention, which performs an operation to determine the bar width of the white bar as a new threshold value.

〔作用〕[Effect]

即ち、ライトペンの走査速度の変動に対応して
変動するバー幅のカウント値を適正な閾値で区分
することが出来るように、一つのバー毎に閾値を
演算して判断し、順次ライトペンの走査速度が上
昇するか、又は順次減少する場合の変動に対応さ
せるものである。しかし、ライトペンの走査速度
がバーコードを読取り中に速くなる傾向から遅く
なる方向に変動するか、又は遅くなる傾向から速
くなる方向に変動する場合に、閾値が走査速度の
変化に追従し過ぎて読取り誤りが発生する時は、
1文字分毎に黒バーのカウント値の合計を第1の
特定数で割つて黒バーのバー幅判定の閾値とし、
白バーのカウント値の合計を第2の特定数で割つ
て白バーのバー幅判定の閾値としてリトライし、
読取率の向上を計つている。
In other words, in order to be able to divide the bar width count value, which changes in response to fluctuations in the scanning speed of the light pen, by using appropriate threshold values, a threshold value is calculated for each bar, and the judgment is made by calculating the threshold value for each bar. This is to accommodate variations when the scanning speed increases or decreases sequentially. However, if the scanning speed of the light pen changes from fast to slow while reading a barcode, or from slow to fast, the threshold value may follow the change in scanning speed too much. If a reading error occurs,
Divide the total count value of the black bar for each character by a first specific number and use it as a threshold for determining the bar width of the black bar,
Retry by dividing the total count value of the white bar by a second specific number and using it as the threshold for determining the bar width of the white bar,
We are trying to improve the reading rate.

〔実施例〕〔Example〕

第1図は本発明の一実施例を示す回路のブロツ
ク図である。
FIG. 1 is a block diagram of a circuit showing one embodiment of the present invention.

本実施例は第3図に示すバー幅判定回路11を
第1図に示すバー幅判定回路15に示す如く変更
したもので、その他の回路は第3図と同一であ
る。そして、黒バーと白バーとのカウント値を分
離して別々に処理する。
In this embodiment, the bar width determination circuit 11 shown in FIG. 3 is modified as shown in the bar width determination circuit 15 shown in FIG. 1, and the other circuits are the same as in FIG. 3. Then, the count values of the black bar and the white bar are separated and processed separately.

第5図はスタートコードを説明する図である。 FIG. 5 is a diagram explaining the start code.

このスタートコードはコード39で決められた
ものであつて1文字を形成しており、とと
で示す黒バーはNであり、とで示す黒バーは
Wである。そして、で示す白バーはWであり、
〜で示す白バーはNである。そして、このス
タートコードは第3図に示すバーコード1の先頭
に記録されている。
This start code is determined by code 39 and forms one character, the black bar indicated by and is N, and the black bar indicated by and is W. And the white bar indicated by is W,
The white bar indicated by ~ is N. This start code is recorded at the beginning of barcode 1 shown in FIG.

黒バー幅レジスタ9からマルチプレクサ16を
経て、大小判断回路17に入る各黒バーのカウン
ト値は、ここでに示す黒バーはバー幅の変動が
大きいため無視され、に示す黒バーのバー幅の
カウント値がNデータレジスタ21に、次に読取
られるに示す黒バーのバー幅のカウント値がW
データレジスタ18に格納される。
The count value of each black bar that enters the size judgment circuit 17 from the black bar width register 9 via the multiplexer 16 is ignored because the black bar shown here has a large variation in bar width, and the bar width of the black bar shown in The count value is stored in the N data register 21, and the count value of the bar width of the black bar that is read next is W.
The data is stored in the data register 18.

(N+W)/2演算回路19はNデータレジス
タ21のカウント値とWデータレジスタ18のカ
ウント値を加えて2で割る演算を行い、その結果
をSHとして閾値決定回路20に送る。閾値決定
回路20は、このSHをマルチプレクサ16を経
て閾値レジスタ22に送る。大小判断回路17
は、この閾値レジスタ22に格納された閾値SH
により、次の黒バーの幅を判断する。
The (N+W)/2 arithmetic circuit 19 adds the count value of the N data register 21 and the count value of the W data register 18, divides the result by 2, and sends the result to the threshold determination circuit 20 as SH. The threshold determining circuit 20 sends this SH to the threshold register 22 via the multiplexer 16. Size judgment circuit 17
is the threshold value SH stored in this threshold value register 22
determine the width of the next black bar.

例えば、次の黒バーの幅がNと判断されてNデ
ータレジスタ21に格納された場合、(N+
W)/2演算回路19はWデータレジスタ18に
残されたカウント値と、今度新たにNデータレジ
スタ21に格納されたカウント値とを加えて2で
割る演算を行い、その結果をSH′として閾値決定
回路20に送る。
For example, if the width of the next black bar is determined to be N and stored in the N data register 21, then (N+
The W)/2 arithmetic circuit 19 adds the count value left in the W data register 18 and the count value newly stored in the N data register 21, divides the result by 2, and sets the result as SH'. It is sent to the threshold value determination circuit 20.

若し、上記次の黒バーの幅が上記の如くNと判
断されず、Wと判断されてWデータレジスタ18
に格納された場合、(N+W)/2演算回路19
はNデータレジスタ21に残されたカウント値
と、今度新たにWデータレジスタ18に格納され
たカウント値とを加えて2で割る演算を行い、そ
のその結果をSH′として閾値決定回路20に送
る。
If the width of the next black bar is not determined to be N as described above, but is determined to be W, the width of the next black bar is determined to be W and the width is stored in the W data register 18
(N+W)/2 arithmetic circuit 19
adds the count value left in the N data register 21 and the count value newly stored in the W data register 18, divides the result by 2, and sends the result to the threshold determination circuit 20 as SH'. .

閾値決定回路20は、このSH′とSHとを加え
て2で割る演算を行い、その結果をSH″としてマ
ルチプレクサ16を経て閾値レジスタ22に格納
する。大小判断回路17は、この閾値SH″を用い
て、次の黒バーの幅を判断する。
The threshold determining circuit 20 performs an operation of adding SH' and SH and dividing by 2, and stores the result as SH'' in the threshold register 22 via the multiplexer 16. The magnitude determining circuit 17 calculates the threshold SH''. to determine the width of the next black bar.

以後新たな黒バーの判定を行う度に、上記
SH″をSH′とみなし、上記SH′をSHとみなし、上
記同様の演算を行つた結果をSH″とする動作を繰
り返し、常に新たに得られるSH″を閾値として大
小判断回路17は黒バー幅レジスタ9のカウント
値から次の黒バーの幅を判断する。
From now on, each time a new black bar is determined, the above
SH'' is regarded as SH', the above SH' is regarded as SH, and the result of performing the same calculation as above is repeated as SH'', and the magnitude judgment circuit 17 always uses the newly obtained SH'' as a threshold. The width of the next black bar is determined from the count value of the width register 9.

大小判断回路17で判断されたデータは、ビツ
ト判定回路12に送出され、前記の如く、ビツト
パターンに変換される。そして、前記同様ビツト
パターン表と照合され、照合が一致すればビツト
パターンは正しく読取られたと判断される。
The data determined by the magnitude determination circuit 17 is sent to the bit determination circuit 12, where it is converted into a bit pattern as described above. Then, as described above, the bit pattern is compared with the bit pattern table, and if a match is found, it is determined that the bit pattern has been read correctly.

第2図は本実施例のバー幅と閾値との関係を説
明する図で、第2図aは上記閾値SH″とバー幅の
カウント値との関係を説明する図である。
FIG. 2 is a diagram illustrating the relationship between the bar width and the threshold value in this embodiment, and FIG. 2a is a diagram illustrating the relationship between the threshold value SH'' and the count value of the bar width.

点線で示す閾値は、黒バーのカウント値がライ
トペン2の走査速度の上昇に比例して低下する場
合、閾値も低下しており、ライトペン5の走査速
度の変化に追従して閾値が変化している。
The threshold value indicated by the dotted line is that when the count value of the black bar decreases in proportion to the increase in the scanning speed of the light pen 2, the threshold value also decreases, and the threshold value changes according to the change in the scanning speed of the light pen 5. are doing.

第2図aの場合は、ライトペン2の走査速度が
順次上昇するか、又は順次低下するような場合
に、走査速度の変化に追従して最適な閾値を得る
ことが出来るが、ライトペン2の走査速度がバー
コードの読取り途中に速くなる傾向から遅くなる
方向に変化したり、遅くなる傾向から速くなる方
向に変化した場合は、閾値が変化に追従し過ぎて
読取りが出来なくなることがある。
In the case of FIG. 2 a, if the scanning speed of the light pen 2 increases or decreases sequentially, it is possible to follow the change in scanning speed and obtain the optimal threshold value. If the scanning speed changes from fast to slow while reading a barcode, or from slow to fast, the threshold may follow the change too much and reading may not be possible. .

第2図bはライトペン2の走査速度がバーコー
ド上を走査中に遅くなる傾向から速くなる方向に
変化した場合を説明する図である。
FIG. 2b is a diagram illustrating a case where the scanning speed of the light pen 2 changes from a tendency to become slower to faster while scanning a bar code.

で示す黒バーまでのライトペン2の走査速度
より、に示す黒バーを読取る時のライトペン2
の走査速度が急に速くなると、で示すWの黒バ
ーのカウント値と、で示すWの黒バーのカウン
ト値が大きく変化して、に示す黒バーのカウン
ト値が低下するが、閾値は遅い走査速度に追従し
ているため、で示す黒バーの幅がWと読めなか
つたことを示す。
Based on the scanning speed of light pen 2 up to the black bar shown in , the light pen 2 when reading the black bar shown in
When the scanning speed suddenly increases, the count value of the black bar of W shown by and the count value of the black bar of W shown by change greatly, and the count value of the black bar shown by decreases, but the threshold value is slow. This indicates that the width of the black bar indicated by cannot be read as W because it follows the scanning speed.

この場合前記の如く、ビツト判定回路12で照
合された結果が一致せず、読取りエラーと判定さ
れると、マルチプレクサ16に図示省略した制御
回路から切替信号が送出される。
In this case, as described above, if the results checked by the bit determination circuit 12 do not match and a read error is determined, a switching signal is sent to the multiplexer 16 from a control circuit (not shown).

マルチプレクサ16が切替えられると、黒バー
幅レジスタ9のカウント値は、タイマ値演算回路
23に送出される。タイマ値演算回路23は黒バ
ー幅レジスタ9が記憶する黒バーのカウント値か
ら、1文字分の黒バーのカウント値を総て合計
し、1文字分の黒バーの総てのカウント値をXと
すると、バーコードの規格から予め求められてい
るX′/A=(N+W)/2で得られたAを用いて
X/Aを演算する。
When the multiplexer 16 is switched, the count value of the black bar width register 9 is sent to the timer value calculation circuit 23. The timer value calculation circuit 23 sums up all the black bar count values for one character from the black bar count values stored in the black bar width register 9, and calculates all the black bar count values for one character by Then, X/A is calculated using A obtained from X'/A=(N+W)/2, which is determined in advance from the bar code standard.

即ち、前記の如く、スタートコードは1文字を
形成しており、ととで示す黒バーはNであ
り、とで示す黒バーはWである。そして、
で示す白バーはWであり、〜で示す白バーは
Nである。そして、W=2N又はW=3Nと定めら
れている。
That is, as described above, the start code forms one character, the black bar indicated by and is N, and the black bar indicated by and is W. and,
The white bar indicated by is W, and the white bar indicated by .about. is N. Further, it is determined that W=2N or W=3N.

従つて、W=2Nの場合は、X′=+++
+=N+N+2N+2N+N=7Nであり、W
=3Nの場合は、X′=++++=N+
N+3N+3N+N=9Nである。
Therefore, when W = 2N, X' = +++
+=N+N+2N+2N+N=7N, and W
If = 3N, then X' = +++++ = N+
N+3N+3N+N=9N.

従つて、W=2Nの時は、X′/A=(N+W)/
2からAを求めると、7N/A=3N/2となり、
A=14/3=4.66となる。
Therefore, when W=2N, X'/A=(N+W)/
When finding A from 2, 7N/A=3N/2,
A=14/3=4.66.

又、W=3Nの場合は、X′/A=(N+W)/2
からAを求めると、9N/A=2Nとなり、A=9/
2=4.5となる。
Also, if W = 3N, X'/A = (N+W)/2
Find A from 9N/A=2N, and A=9/
2=4.5.

従つて、A=4.5〜4.66となる。 Therefore, A=4.5 to 4.66.

タイマ値演算回路23は、このようにして予め
求められているAを用い、X/Aを演算して、マ
ルチプレクサ16を経て閾値レジスタ22に送出
する。従つて、大小判断回路17はX/A用い
て、再度黒バー幅レジスタ9のカウント値を判断
する。即ち、この新たな閾値により、第2図bの
に示す黒バーはWと判定される。
The timer value calculation circuit 23 uses A obtained in advance in this manner to calculate X/A and sends it to the threshold register 22 via the multiplexer 16. Therefore, the magnitude determination circuit 17 uses X/A to determine the count value of the black bar width register 9 again. That is, based on this new threshold value, the black bar shown in FIG. 2b is determined to be W.

尚、Aの値をスタートコードを用いて計算した
が、他のコードの場合においても、殆どのコード
がNの黒バーが3本で、Wの黒バーが2本の組合
わせにより構成されているため、誤差は無視する
ことが出来る。
Although the value of A was calculated using the start code, in the case of other codes as well, most codes are composed of a combination of three N black bars and two W black bars. Therefore, the error can be ignored.

白バー幅レジスタ10のカウント値の処理は、
上記黒バー幅レジスタ9のカウント値の処理と同
一であるため、詳細説明は省略する。但し、タイ
マ値演算回路24の演算内容は、白バー幅レジス
タ10が記憶する白バーのカウント値から、1文
字分の白バーのカウント値を総て合計し、1文字
分の白バーの総てのカウント値をYとすると、バ
ーコードの規格から予め求められたY′/B=(N
+W)/2で求められるBを用いてY/Bを演算
する。
Processing of the count value of the white bar width register 10 is as follows.
Since this process is the same as the process of the count value of the black bar width register 9, detailed explanation will be omitted. However, the calculation contents of the timer value calculation circuit 24 are as follows: From the white bar count value stored in the white bar width register 10, all the white bar count values for one character are totaled, and the total white bar count value for one character is calculated. Assuming that the count value for each is Y, Y'/B = (N
+W)/2 is used to calculate Y/B.

第5図において、W=2Nの場合は、Y′=+
++=2N+N+N+N=5Nであり、W=
3Nの場合は、Y′=+++=3N+N+N
+N=6Nである。
In Fig. 5, when W = 2N, Y' = +
++=2N+N+N+N=5N, and W=
In the case of 3N, Y'=+++=3N+N+N
+N=6N.

従つて、W=2Nの時は、Y′/B=(N+W)/
2からBを求めると、5N/B=3N/2となり、
A=10/3=3.33となる。
Therefore, when W=2N, Y'/B=(N+W)/
When finding B from 2, 5N/B=3N/2,
A=10/3=3.33.

又、W=3Nの場合は、Y′/B=(N+W)/2
からBを求めると、6N/B=2Nとなり、A=6/
2=3となる。
Also, if W=3N, Y'/B=(N+W)/2
Find B from 6N/B=2N, and A=6/
2=3.

従つて、B=3〜3.33となる。 Therefore, B=3 to 3.33.

タイマ値演算回路24は、前記の如く、このB
を用い、Y/Bを演算する。その他のマルチプレ
クサ25はマルチプレクサ16に、大小判断回路
28は大小判断回路17に、Wデータレジスタ2
9はWデータレジスタ18に、Nデータレジスタ
27はNデータレジスタ21に、(N+W)/2
演算回路30は(N+W)/2演算回路19に、
閾値決定回路31は閾値決定回路20に夫々対応
する。
As described above, the timer value calculation circuit 24
Y/B is calculated using . The other multiplexers 25 are connected to the multiplexer 16, the magnitude judgment circuit 28 is connected to the magnitude judgment circuit 17, and the W data register 2
9 to W data register 18, N data register 27 to N data register 21, (N+W)/2
The arithmetic circuit 30 is (N+W)/2 arithmetic circuit 19,
The threshold value determination circuits 31 correspond to the threshold value determination circuits 20, respectively.

上記はバーコード1を順方向に走査した時、最
初に読出されるスタートコードに基づき説明した
が、バーコード1が逆方向に走査された時、最初
の読出されるのはストツプコードとなるが、この
場合も上記同様である。
The above explanation was based on the start code that is read first when barcode 1 is scanned in the forward direction, but when barcode 1 is scanned in the reverse direction, the first code that is read is the stop code. The same applies to this case as above.

〔発明の効果〕〔Effect of the invention〕

以上説明した如く、本発明はライトペンの走査
速度の変動に強く、他の方式に比し良好な読取率
を実現することが出来る。
As explained above, the present invention is resistant to fluctuations in the scanning speed of the light pen, and can achieve a better reading rate than other methods.

【図面の簡単な説明】[Brief explanation of drawings]

第1図は本発明の一実施例を示す回路のブロツ
ク図、第2図は本実施例のバー幅と閾値との関係
を説明する図、第3図は従来のバーコード読取装
置の一例を示す回路のブロツク図、第4図はバー
幅判定回路11で用いられる閾値を説明する図、
第5図はスタートコードを説明する図である。 図において、1はバーコード、2はライトペ
ン、3は光電変換回路、4は波形整形回路、5は
黒白記憶レジスタ、6は変換点検出回路、7はバ
ー幅カウンタ、8はクロツク発振回路、9は黒バ
ー幅レジスタ、10は白バー幅レジスタ、11,
15はバー幅判定回路、12はビツト判定回路、
13は処理部、14は表示部、16,25はマル
チプレクサ、17,28は大小判定回路、18,
29はWデータレジスタ、19,30は(N+
W)/2演算回路、20,31は閾値決定回路、
21,27はNデータレジスタ、22,26は閾
値レジスタ、23,24はタイマ値演算回路であ
る。
FIG. 1 is a block diagram of a circuit showing an embodiment of the present invention, FIG. 2 is a diagram explaining the relationship between the bar width and the threshold value of this embodiment, and FIG. 3 is an example of a conventional barcode reading device. A block diagram of the circuit shown in FIG.
FIG. 5 is a diagram explaining the start code. In the figure, 1 is a barcode, 2 is a light pen, 3 is a photoelectric conversion circuit, 4 is a waveform shaping circuit, 5 is a black and white storage register, 6 is a conversion point detection circuit, 7 is a bar width counter, 8 is a clock oscillation circuit, 9 is a black bar width register, 10 is a white bar width register, 11,
15 is a bar width judgment circuit, 12 is a bit judgment circuit,
13 is a processing section, 14 is a display section, 16 and 25 are multiplexers, 17 and 28 are size determination circuits, 18,
29 is a W data register, 19 and 30 are (N+
W)/2 arithmetic circuit, 20 and 31 are threshold value determination circuits,
21 and 27 are N data registers, 22 and 26 are threshold registers, and 23 and 24 are timer value calculation circuits.

Claims (1)

【特許請求の範囲】 1 読取つたバーコードの波形をサンプリングし
て得たカウント値を閾値を用いて区分し、バー幅
の判定を行うバーコード読取装置において、 バーコードの規格から黒バーと白バーの組合わ
せ状態が予め定められているスタートコード又は
ストツプコードから最初に読取られたバー幅の狭
いバーのカウント値Nと、バー幅の広いバーのカ
ウント値Wとを抽出して(N+W)/2を演算し
て閾値SHとし、該閾値SHを用いて、次に続いて
読取られるバーのバー幅を判定し、該続いて読取
られたバーのバー幅のカウント値N′又はW′と、
前記カウント値N又はWとを用い、(N′+W)/
2又は(N+W′)/2を演算して、閾値SH′と
なし、該閾値SH′を用いて(SH+SH′)/2を
演算して閾値SH″となし、該閾値SH″を用いて、
前記続いて読取られたバーの次に読取られたバー
のバー幅を判断し、以後読取られるバーに対して
は、前記SH′をSHとみなし、前記SH″をSH′とみ
なして、(SH+SH′)/2を演算して新たな閾値
SH″としてバー幅を判定する動作を黒バー及び白
バーに付いて繰り返し実行し、 該取り誤りが発生した場合は、更に1文字分の
黒バーの総てのバー幅のカウント値の合計を第1
の特定の数で割る演算を行つて新たな閾値として
黒バーのバー幅を判定し、1文字分の白バーの総
てのバー幅のカウント値の合計を第2の特定の数
で割る演算を行つて新たな閾値として白バーのバ
ー幅を判定する動作を行うことを特徴とするバー
コード復調方式。 2 上記第1の特定の数はバーコードの規格から
定まる1文字分の黒バーの総てのカウント値の合
計をX′とすると、X′/A=(N+W)/2で求ま
るAであり、上記第2の特定の数はバーコードの
規格から定まる1文字分の白バーの総てのカウン
ト値の計をY′とすると、Y′/B′=(N+W)/2
で求まるBであることを特徴とする特許請求の範
囲第1項記載のバーコード復調方式。
[Claims] 1. In a barcode reading device that divides the count value obtained by sampling the waveform of a read barcode using a threshold value and determines the bar width, there is a barcode reading device that determines the bar width according to the standard of the barcode. Extract the count value N of the narrow bar and the count value W of the wide bar that are first read from the start code or stop code in which the combination of bars is predetermined (N+W)/ 2 is calculated as a threshold value SH, and using the threshold value SH, determine the bar width of the next successively read bar, and determine the bar width count value N' or W' of the subsequently read bar,
Using the count value N or W, (N′+W)/
2 or (N+W')/2 and set it as a threshold value SH', using the threshold value SH', calculate (SH+SH')/2 and set it as a threshold value SH'', and using the threshold value SH'',
Determine the bar width of the bar read next to the subsequently read bar, and for the bars read thereafter, consider the SH′ as SH, the SH″ as SH′, and calculate (SH+SH). ′)/2 to create a new threshold
Repeat the operation of determining the bar width as "SH" for the black bar and white bar, and if an error occurs, calculate the total count value of all the bar widths of the black bar for one character. 1st
The bar width of the black bar is determined as a new threshold by dividing by a specific number, and the sum of the count values of all the bar widths of the white bar for one character is divided by a second specific number. A barcode demodulation method characterized by performing an operation of determining the bar width of a white bar as a new threshold value. 2 The first specific number above is A, which is determined by X'/A=(N+W)/2, where X' is the sum of all the count values of the black bars for one character determined from the bar code standard. , the above-mentioned second specific number is determined from the bar code standard, where Y' is the total count value of all the white bars for one character, Y'/B' = (N+W)/2
2. The barcode demodulation method according to claim 1, wherein B is determined by .
JP60020241A 1985-02-05 1985-02-05 Bar code demodulation system Granted JPS61180380A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP60020241A JPS61180380A (en) 1985-02-05 1985-02-05 Bar code demodulation system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60020241A JPS61180380A (en) 1985-02-05 1985-02-05 Bar code demodulation system

Publications (2)

Publication Number Publication Date
JPS61180380A JPS61180380A (en) 1986-08-13
JPH0344353B2 true JPH0344353B2 (en) 1991-07-05

Family

ID=12021696

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60020241A Granted JPS61180380A (en) 1985-02-05 1985-02-05 Bar code demodulation system

Country Status (1)

Country Link
JP (1) JPS61180380A (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63119063U (en) * 1987-01-26 1988-08-01
JPS6478392A (en) * 1987-09-19 1989-03-23 Fujitsu Kiden System for demodulating bar code
JPH01123262U (en) * 1988-02-13 1989-08-22
JPH0566501U (en) * 1992-02-14 1993-09-03 株式会社東亜 Construction length measuring machine
JP2729168B2 (en) * 1995-12-21 1998-03-18 日本電気アイシーマイコンシステム株式会社 Barcode, barcode reader, and method of reading the same

Also Published As

Publication number Publication date
JPS61180380A (en) 1986-08-13

Similar Documents

Publication Publication Date Title
US3854036A (en) Tag reader to digital processor interface circuit
US3891831A (en) Code recognition apparatus
US4481665A (en) Character segmentation method
EP0390162A2 (en) An apparatus for reading a bar code
US4379224A (en) Apparatus for interpreting Code 39 bar code data
WO1980000628A1 (en) Optical data sensing system including power control means
JPH0157836B2 (en)
US4012716A (en) Coded record and method of and system for interpreting the record
JPS6227434B2 (en)
US4438327A (en) Bar code reading system and method
US3916154A (en) Method and circuitry for decoding a high density bar code
US3737632A (en) Rate adaptive nonsynchronous demodulator apparatus for biphase binary signals
US4533825A (en) Bar code recognition apparatus
US4528443A (en) Bar code reading system and method
US5302814A (en) Bar code reading apparatus
US4175693A (en) Method for enhancing the reliability of output data from a label reader
JPH0344353B2 (en)
US3637993A (en) Transition code recognition system
US3887792A (en) Method and device for reading and decoding a delta-distance code
JPS6213712B2 (en)
US3893077A (en) Method and a system for checking the accuracy of information derived from an encoded carrier member
JP2729168B2 (en) Barcode, barcode reader, and method of reading the same
JPS62154070A (en) Mark reader
JP2754440B2 (en) Barcode judgment method
JPH07175632A (en) Bar code reader

Legal Events

Date Code Title Description
EXPY Cancellation because of completion of term