JPS6242316B2 - - Google Patents
Info
- Publication number
- JPS6242316B2 JPS6242316B2 JP4337778A JP4337778A JPS6242316B2 JP S6242316 B2 JPS6242316 B2 JP S6242316B2 JP 4337778 A JP4337778 A JP 4337778A JP 4337778 A JP4337778 A JP 4337778A JP S6242316 B2 JPS6242316 B2 JP S6242316B2
- Authority
- JP
- Japan
- Prior art keywords
- ratio
- decoding
- register
- signal
- circuit
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/10544—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum
- G06K7/10821—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum further details of bar or optical code scanning devices
- G06K7/10881—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum further details of bar or optical code scanning devices constructional details of hand-held scanners
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/01—Details
- G06K7/016—Synchronisation of sensing process
- G06K7/0166—Synchronisation of sensing process by means of clock-signals derived from the code marks, e.g. self-clocking code
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Electromagnetism (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Toxicology (AREA)
- Character Discrimination (AREA)
- Printers Characterized By Their Purpose (AREA)
Description
本発明は、ユニヴアーサル・プロダクト・コー
ド標準記号及びその変形タイプの高密度線形棒状
コードを読取り及び解読するための方法に関す
る。
食料雑貨業界では、商取引で販売された商品を
確認するために、ユニヴアーサル・プロダクト・
バー・コード(UPC)として知られている線形
棒状コードを採用している。このユニヴアーサ
ル・プロダクト・コード記号は、包装販売される
商品の包装、コンテナー、かん等にこの記号をマ
ークするという方法で食料雑貨業界で広く使用さ
れている。この標準記号は幅の異なる一連の平行
な明棒及び暗棒から成り、その記号に相応する光
学式文字読取(OCR―B)用数字が、そのバ
ー・コード記号に並んで印刷されている。この標
準UPC記号はまた、在庫品の確認を行つて在庫
調整等の作業を行うために、在庫品のラベルにも
採用されている。食料雑貨業界で使用される場合
のみならず、その他の業界、即ち薬・健康関連商
品、一般雑貨及び百貨点商品の分野で使用される
場合の該標準UPC記号及びその特性に関して
は、従来種々な文献に発表されて来ている。更
に、UPC記号や輸送記号(DCI)をマークするに
は小さすぎる包装に対しても該記号を容易にマー
クできるようにするゼロサプレス方式のような、
特別な方式が開発されてきている。輸送記号
(DCI)は、輸送用コンテナに印刷できるように
設計されている。UPC記号を使用した場合の主
な利点は、自動電子照合システムと連動した照合
場所において商品を自動的に確認できることであ
る。現在の照合システムでは、UPC棒状コード
記号の読取りは高速レーザー光走査装置で行われ
ている。
UPC記号及びその系列のDCI記号の走査には、
可搬式データ収集装置もまた必需品である。これ
は、手持ち式ウオンド(wand)走査装置により
極めて容易に満足される。ウオンド走査装置は、
ラベルと接触状態で走査されるから、照合場所の
走査装置で必要とされるフイールドの深さを有し
ている必要はなく、また手で推進されるから、レ
ーザー光の走査も必要としない。また、レーザー
走査装置はその入力の大部分を無関係な図形とし
て拒絶しなければならないが、ウオンド走査装置
は無関係な入力というものを殆んど見ない。但
し、可搬式走査装置は電池電源式であるから、消
費電力が低いことが重要である。更に、レーザー
光の走査速度は既知であるが、手の運動による速
度は広範囲に亘つて変化し、また大きな加速度を
示すものである。
記号を表面に印刷するときに生じるインクの広
がりに起因する印刷許容差を排除するために、
UPC記号を読取る従来の方法は、デルタ距離を
使用して記号を解読することから成つている。イ
ンクの広がりは、棒線コード化データを解読する
際に考慮しなければならない大きな印刷誤差であ
る。デルタ距離測定値とは、棒線コード化記号に
おける連続する棒線と空白部の1つの組合せの前
縁と後縁間の距離である。このデルタ距離測定を
使用して、記号解読のために、選択されたデルタ
距離の比を得る。インクの広がりが記録された記
号内で均一である場合、これらの解読用比率は、
インクの広がりを理由としては変化しない。この
比率の組合せは16通りあり、また順方向及び逆方
向順序を考慮に入れると、20通り必要である。従
つて、解読の目的のために明瞭なデルタ距離比だ
けしか使用し得ない場合に生じるあいまいさを解
決するためには、更に別の測定をしなければなら
ない。このような別の測定は、デルタ距離測定値
が有する印刷許容差に関しての利点をもたらさな
い。初期の従来技術による解読法は、解読回路網
が多数の比と非常に近似の比とを識別することを
要求し、それ故、解読目的のために非常に高い分
解能を必要としていた。しかし、このような分解
能を得るのは容易ではなく、特に手持ち式ウオン
ド走査装置、あるいは可搬式解読装置の場合、こ
のような分解能は容易には得られない。最近、別
の解読法が開発されたが、それによると、識別す
べき比の数が4つにまで減少され、而も相互識別
が容易なように相互間距離が比較的大きくなつて
いる。この種の解読装置では、比の選択は、分子
及び分母が1本の棒及び1つの空白部を有するよ
うに行われるから、インクの広がりは結果として
の比において因子とはならない。UPC記号で
は、各コード化デイジツトが順方向順序及び逆方
向順序を有しているから、これらの従来技術によ
る方法に頼つた場合、あいまい性を生じる組合せ
は未だ存在する。これらのデイジツトは、上記デ
ルタ距離比に基ずくだけでは明白に解読すること
ができず、従つて、何か他の手段または比を使わ
ないと、印刷許容差問題を解決することはできな
いし、またコード化デイジツトの全部をあいまい
さなしに解読することもできない。デルタ距離測
定値に基ずく上記解読技術を採用した従来の方法
は、一般に、高速度レーザー光走査装置と解読比
を計算するための関連回路を使用する。UPC記
号及び類似の記号を読取るための手操作式ウオン
ド走査方式では、速度が広範囲に亘るのはウオン
ドを記録済み記号上を移動させる結果であるか
ら、デルタ距離比計算用のこれらの従来技術によ
る回路は実際的ではない。棒線コード化データ読
取用の手持ち式ウオンド走査装置を使用する従来
技術には、対数タイム・ベース回路を使用してい
るものもあるが、しかし、これらの回路は、
UPC記号解読用デルタ距離比計算用としては実
際的ではない。
さて、本発明は、手操作式ウオンド走査装置で
有利に使用できると共にその他の解読装置でも使
用できる、UPC記号タイプの高密度線形棒線コ
ードを読取り並びに解読するための改良された、
信頼性の高い、低コストの、低電力消費の方法を
提供する。本発明は、ウオンド加速、印刷のまず
い記号及び広い印刷許容差を有する記号に対して
耐容性が高く、而も簡単な技法であいまいさを解
決できる信頼性のある読取・解読法を提供する。
本発明では、高速レーザー光走査装置とは対照的
に、手持ち式ウオンドで必要とされる最低限度の
図形拒絶が認められるだけでなくこれを利用して
いる。本出願の1つの発明は、棒線コード化記号
内の連続している棒及び空白部の幅を即時的に測
定し、測定終了後に高度な後処理技法を使用でき
るようにランダムアクセス記憶装置にその測定値
を記憶させる、という点で従来の方法及び装置に
対して利点を有している。更に、本発明では、大
きな数の乗除を行わずに広い動的範囲が可能とな
るような対数化技法を使用して幾つかの計算を容
易化している。本発明では、UPCタイプのコー
ド化記号の中央部または標準部からのコード化情
報を利用すると同時に、1次解読比に従属するあ
いまいさを解決するために適切な2次解読比を選
択することによつて、インクの広がりを容易に修
正でき、従つて、あいまいさを確実に解決するこ
とができる。
さて、添付図面を参照して本発明を詳細に説明
することにする。特に、食料雑貨業界で使用され
ているユニヴアーサル・プロダクト・コード
(UPC)タイプの高密度線形棒線コードの読取り
及び解読に適用された本発明の概念について詳述
する。
本発明の理解を容易にするために、まず始めに
第1A図及び第1B図示のUPC標準記号の基本
的な特性について説明する。図のUPC標準記号
の基本特性には、各側に明るいマージンを有する
一連の明及び暗の平行な棒線が含まれている。第
1A図に示されているように、どの10文字コード
に対しても30本の暗い棒線と29本の明るい棒線が
含まれるようになつている。記号の全体形状は矩
形である。第1B図を検討すると最も良く理解で
きることだが、コードの各文字または数字は、2
本の暗棒と2つの明るい空白部で表わされてい
る。各コード化文字は7つのモジユールで構成さ
れている。1つのモジユールは、1本の暗棒か1
本の明棒のいずれかで構成されていてもよく、
(あるいは、1本、2本、3本ないし4本の暗棒
または明棒の逐次組合せで構成されていてもよ
い。)このため、第1B図では文字構造の左側部
は数字6を表わし、ここでは7つのモジユールが
2本の棒線と2つの空白部で表わされている。こ
のことから、右方の棒線は連続した4つの暗モジ
ユールから成つていることが理解できる。文字構
造の右側部も同様に、2本の棒線と2つの空白部
との形でコード化されていて10進数値の0を表わ
している。特に第1A図を検討するとまた、
UPC記号でコード化されている2つの文字は
各々互いに独立した関係にあることが判る。この
UPC記号は通常の方法で読取りあるいは印刷で
きるように設計されている。UPC記号は、簡単
な手持操作式装置を使用して該記号を走査及び読
取ることができる、という意味で、“ウオンダブ
ル(wandable)”である。
この記号を全方向に走査するために固定位置走
査装置が開発された。具体的には、該記号は、如
何なる方向であつても走査装置を通過させられた
場合、走査装置、例えばレーザー光走査装置など
で自動的に読取ることができる。該記号を手持ち
式装置または全方向特性を有する装置で読み取る
ためには、記録された記号と走査装置との間に何
らかの相対運動が生じるようになつていなければ
ならない。
UPC記号はまた、第1A図に示されているよ
うに、一群のコード化用モジユールから成る標準
パターンを含んでおり、該コード化用モジユール
はその連続したコード化用モジユール間に既知の
幅比を有するようになつている。UPC標準記号
で使用される場合と同様に、第1A図に図示の標
準パターンには1対1の幅比を有する該パターン
が3つ含まれており、これらのパターンは、それ
ぞれ左側保護棒線パターン、右側保護棒線パター
ン、及び高い中央棒線パターンで示されている。
右側及び左側保護パターンは、暗―明―暗パター
ン即ち101を表わすように限定されており、高い
中央棒線パターンは、情報01010のパターン即ち
明棒―暗棒―明棒パターンを表わすようになつて
いる。中央棒線パターンによつて、UPC記号で
コード化されている順方向デイジツトと逆方向デ
イジツトが分離されている。中央棒線パターンの
左側には、「順方向」コード化文字を表わす5つ
の文字があり、右側には「逆方向」にコード化さ
れた5つの文字がある。順方向即ち左側文字、及
び逆方向即ち右側文字は、右側文字が左側文字の
2進補数であるという事実を表わしている。例え
ば、10進数値の0の場合、左側のコード化記号は
0001101となり、右側のコード化記号は1110010と
なる。左側文字は奇数パリテイを有し、右側文字
は偶数パリテイを有するものとする。左側文字は
3つまたは5つの暗モジユールから成り、常に明
るい空白部から始まるようになつている。右側文
字は2つまたは4つの暗モジユールから成り、常
に暗モジユールから始まる。
第1A図に示されているように、該標準記号に
はまた、右側保護棒線パターンと逆方向文字フイ
ールドの最後尾モジユールとの間にコード化され
たモジユール検査文字が含まれている。左側保護
パターン及び右側保護棒線パターンの右側部の他
に、別の情報が記録されていて、この情報を使用
すると当該記号でコード化され且つ予め選定され
た幅を有している文字の数システムを識別でき
る。どの棒線コード化記号を読取る場合でも、該
記号が記録済みとして読み取られるだけでなく、
所要の情報の棒線コード化パターンの近傍の周辺
記録済み情報に関してそれが該記号と関連がある
か否かについて検知されるのが普通である。例え
ば、レーザー走査技法では、無関係な図形の大部
分を拒絶しなければならないが、手持ち式ウオン
ド走査装置では無関係図形は殆んど感知されな
い。
既に述べたと同時に第1B図に示されているよ
うに、UPC記号は2本の棒線及び2つの空白部
から成つていて1つの文字を表わす。棒線と空白
部の順序は、空白部―棒線―空白部―棒線であつ
てもよいし、あるいは走査方向及び記録済み文字
のフイールドに応じて逆向きであつてもよい。本
発明の検討を簡略にするため、順序をA、B、
C、Dと仮定してあるが、この場合空白部と棒線
は順逆両方向に対して第1C図に基ずいて識別さ
れる。言い換えれば、各文字は、記録されている
方向が順逆のいずれであれ、順序A、B、C及び
Dで表われる。この順序では、ここで使用される
2つの1次解読比は次のように定義付けられる。
即ち、
(A+B/C+D)及び(A+D/B+C)となる。
第1C図を検討すると、これらの1次解読比の
各各は分子及び分母の双方に棒線1本及び空白部
1つを含み、従つてたとえインクの広がりが生じ
たとしても比そのものに対して影響を与えること
はない。これらの1次解読比は、分数2/5、3/4、
4/3、及び5/2となる。これらの1次比のうち1対
を使用して、1つの文字を解読する。しかしなが
ら、次のことに留意しなければならない。つま
り、上記解読比を使用するデルタ距離方法では、
いずれの場合でも、あいまいさが生じ、従つて文
字の中には1次解読比に基ずくだけでは明白に解
読することができないものもある。という事であ
る。本発明では、選択並びに簡略化した2次解読
比を使用してこのあいまいさを解決すると同時
に、如何なる印刷許容差をも修正して1次及び2
次比に基ずく文字記号の解読を非常に信頼性のあ
るものにしている。本発明で使用される2次比
は、2つの1次比を展開して得られる値によつて
決まる。第1C図に示されているように、2つの
1次比が3/4、4/3あるいは4/3、3/4の比を生成す
る場合には、2次比は1次比の値に基ずいて割当
てられなければならない。2次解読比を決める選
択された1次比が3/4である場合は、モジユール
A及びBの幅の比(A/B)が検査され、1次比が4/
3である場合は、モジユールC及びDの幅の2次
比(C/D)が検査される。これらの2次比を検査し
て、これらが2/1または1/2であるかどうかを決定
する。いずれにしても、あいまいさを生じること
のない数字、例えば1、7、2、8の場合には、
これらの数字は2つの1次解読比及び選択された
2次解読比に基ずいて解読される。その他の数字
は全て1次解読比だけに基ずいて明瞭に解読でき
る。
本発明の改良された解読方法は、マイクロプロ
セツサにより実施されている。走査された記号の
各棒線及び各空白部の幅を測定して線形タイムベ
ースで駆動されるカウンタに記憶させる。これら
の測定された距離即ち幅は、次いで、1つの測定
が終了するたびに記憶装置に転送される。測定が
全て終了するまで、連続測定値は該記憶装置の連
続記憶位置に記憶される。既述のように、記録済
み記号を走査する際UPC記号を付したラベル上
には検知可能な無関係図形が存在し、この無関係
データもまた所要の情報と共に記憶装置に記憶さ
れる。このようなわけで、情報の中には、記号自
体の走査以前に走査された情報と、記号が記憶装
置に記憶された後に検知される情報とがある。ラ
ベルの走査が行われている間、解読は行われな
い。この手順では、所要のコード化情報を有する
「ラベル」は記憶装置内で記憶位置に指定され
る、即ち「フレーム化」された後でなければ解読
できないようにすることが必要である。既述のよ
うに、UPC標準記号は標準中央棒線パターンを
有し、文字はこの中央棒線パターンの左側及び右
側にコード化されている。記憶装置内のデータを
検査し、それによつて標準中央棒線パターンを表
わす記憶済みデータの検査並びに位置指定を行え
ば、コード化データを記憶装置内で位置指定でき
る。一旦この中央棒線パターンの位置が指定され
たら、これを本発明に基ずいて使用すれば、該パ
ターンの左側及び右側のコード化文字に記憶され
ている記憶位置を識別できる。言い換えれば、一
旦中央棒線パターンの記憶位置が指定されると、
モジユールA,B,C及びDの記憶位置は、記号
の各文字に対して既知のものとなる。一旦これら
のモジユールが記憶装置内で位置指定されたら、
モジユールの和を計算して2つの1次解読比の値
を決定できる。1次解読比が算出されると、2次
解読比の算出ができ、その結果記号を解読でき
る。2つの1次比が3/4と4/3との組合せのうちど
れかであれば、あいまいさが存在することにな
り、従つてこのあいまいさは前記2次解読比を用
いて解決する。表を参照のこと。
The present invention relates to a method for reading and decoding high-density linear bar codes of the Universal Product Code standard symbol and its variants. In the grocery industry, Universal Products
It uses a linear bar code known as a bar code (UPC). The Universal Product Code symbol is widely used in the grocery industry by marking the packaging, containers, cans, etc. of products that are packaged and sold. This standard symbol consists of a series of parallel light and dark bars of varying widths, with corresponding optical character reading (OCR-B) numbers printed alongside the bar code symbol. This standard UPC symbol is also used on the labels of inventory items to verify inventory and perform inventory adjustments. Conventionally, various standard UPC symbols and their characteristics have been used not only in the grocery industry, but also in other industries, such as medicine and health-related products, general miscellaneous goods, and department store items. It has been published in the literature. In addition, there are additional features such as zero-suppression that make it easier to mark packages that are too small to be marked with the UPC symbol or DCI symbol.
Special methods have been developed. A transportation symbol (DCI) is designed to be printed on shipping containers. The main advantage of using the UPC symbol is that the product can be automatically verified at the verification point in conjunction with automated electronic verification systems. In current verification systems, UPC bar code symbols are read using high-speed laser light scanning devices. To scan the UPC symbol and its series of DCI symbols,
Portable data collection equipment is also a must. This is most easily satisfied with handheld wand scanning devices. Wound scanning device is
Since it is scanned in contact with the label, it does not need to have the field depth required by the scanning device at the verification site, and because it is manually propelled, it does not require laser light scanning. Also, a laser scanning device must reject most of its input as extraneous graphics, whereas a wound scanning device sees very little extraneous input. However, since portable scanning devices are battery powered, it is important that their power consumption be low. Further, although the scanning speed of the laser beam is known, the speed due to hand movement varies over a wide range and exhibits large accelerations. To eliminate printing tolerances due to ink spreading that occurs when printing symbols on surfaces,
The traditional method of reading UPC symbols consists of using delta distance to decipher the symbol. Ink spreading is a major printing error that must be considered when decoding bar coded data. A delta distance measurement is the distance between the leading and trailing edges of a combination of consecutive bars and blanks in a bar coded symbol. This delta distance measurement is used to obtain a selected delta distance ratio for symbol decoding. If the ink spread is uniform within the recorded symbol, these decoding ratios are
It does not change due to the spread of ink. There are 16 combinations of this ratio, and 20 are required if forward and backward orders are taken into account. Therefore, further measurements must be made to resolve the ambiguity that arises when only unambiguous delta distance ratios can be used for decoding purposes. Such alternative measurements do not provide the advantages with respect to printing tolerances that delta distance measurements have. Early prior art decoding methods required the decoding circuitry to discriminate between large numbers of ratios and very close ratios, thus requiring very high resolution for decoding purposes. However, such resolution is not easy to obtain, especially in hand-held wond scanners or portable decoding devices. Recently, another decryption method has been developed in which the number of ratios to be identified is reduced to four, but the distance between them is relatively large so that they can be easily distinguished from each other. In this type of decoding device, the selection of the ratio is such that the numerator and denominator have one bar and one blank, so ink spread is not a factor in the resulting ratio. Since in the UPC symbol each coded digit has a forward order and a backward order, there are still combinations that create ambiguities when relying on these prior art methods. These digits cannot be unambiguously deciphered solely on the basis of the above delta distance ratios, and therefore printing tolerance problems cannot be resolved without using some other means or ratios. Nor can all of the coded digits be deciphered without ambiguity. Conventional methods employing the above decoding techniques based on delta distance measurements generally use a high speed laser light scanning device and associated circuitry to calculate the decoding ratio. In hand-operated wand scanning methods for reading UPC symbols and similar symbols, the wide range of velocities is the result of moving the wand over the recorded symbol, so these conventional techniques for delta distance ratio calculations The circuit is impractical. Some prior art techniques using hand-held wand scanning devices for reading bar coded data use logarithmic time base circuits; however, these circuits
It is not practical for calculating delta distance ratios for UPC symbol decoding. The present invention now provides an improved system for reading and decoding high-density linear bar codes of the UPC symbol type, which can be advantageously used in hand-operated wand scanning devices and can also be used in other decoding devices.
To provide a reliable, low cost and low power consumption method. The present invention provides a reliable reading and decoding method that is highly tolerant of wondrous accelerations, poorly printed symbols, and symbols with wide printing tolerances, yet can resolve ambiguities with simple techniques.
The present invention not only recognizes but utilizes the minimal graphical rejection required by hand-held wands, as opposed to high-speed laser beam scanning devices. One invention of this application measures the width of consecutive bars and blank spaces within a bar coded symbol on the fly and stores it in random access storage so that advanced post-processing techniques can be used after the measurements are completed. It has an advantage over conventional methods and devices in that the measured values are stored. Additionally, the present invention facilitates some calculations using logarithmization techniques that allow for a wide dynamic range without having to multiply or divide large numbers. The present invention utilizes encoding information from the central or standard part of the UPC type coding symbol while selecting an appropriate secondary decoding ratio to resolve ambiguities that are dependent on the primary decoding ratio. This allows the ink spread to be easily corrected and thus ambiguities to be reliably resolved. The invention will now be described in detail with reference to the accompanying drawings. In particular, the concepts of the present invention will be detailed as applied to reading and decoding high density linear bar codes of the Universal Product Code (UPC) type used in the grocery industry. In order to facilitate understanding of the present invention, the basic characteristics of the UPC standard symbol shown in FIGS. 1A and 1B will first be explained. The basic characteristics of the UPC standard symbol shown include a series of light and dark parallel bars with light margins on each side. As shown in Figure 1A, any 10-character code will contain 30 dark bars and 29 light bars. The overall shape of the symbol is a rectangle. As best understood by examining Figure 1B, each letter or number in the code is
It is represented by the book's dark bars and two bright blank spaces. Each coded character is made up of seven modules. One module is one black stick or one
May consist of any of the book's light sticks;
(Alternatively, it may consist of successive combinations of one, two, three or four dark or light bars.) Thus, in Figure 1B, the left side of the character structure represents the number 6; Here, seven modules are represented by two bars and two blank spaces. From this, it can be seen that the bar on the right consists of four consecutive dark modules. The right side of the character structure is similarly encoded in the form of two bars and two blank spaces, representing the decimal value 0. Especially considering Figure 1A, we also see that
It can be seen that the two characters encoded with the UPC symbol have an independent relationship with each other. this
The UPC symbol is designed to be read or printed in the usual way. The UPC symbol is "wandable" in the sense that the symbol can be scanned and read using a simple hand-held device. A fixed position scanning device was developed to scan this symbol in all directions. In particular, the symbol can be automatically read by a scanning device, such as a laser light scanning device, when passed past the scanning device in any direction. In order for the symbol to be read by a hand-held device or a device having omnidirectional characteristics, some relative movement must occur between the recorded symbol and the scanning device. The UPC symbol also includes a standard pattern consisting of a group of coding modules with a known width ratio between successive coding modules, as shown in Figure 1A. It has come to have a As used in the UPC standard symbol, the standard pattern illustrated in Figure 1A includes three such patterns with a 1:1 width ratio, each of which has a left guard bar line. pattern, a right guard bar pattern, and a high center bar pattern.
The right and left guard patterns are limited to represent a dark-bright-dark pattern, i.e. 101, and the high center bar pattern becomes representative of an information 01010 pattern, i.e. a light bar-dark bar-bright bar pattern. ing. A central bar pattern separates the forward and reverse digits, which are encoded with the UPC symbol. To the left of the center bar pattern are five characters representing "forward" coded characters, and to the right are five characters coded "reverse". The forward or left-hand character and the reverse or right-hand character represent the fact that the right-hand character is the binary complement of the left-hand character. For example, for the decimal value 0, the encoding symbol on the left is
0001101, and the coded symbol on the right side is 1110010. Let the characters on the left have odd parity and the characters on the right have even parity. The left-hand text consists of three or five dark modules, always beginning with a bright blank space. The right-hand character consists of two or four dark modules and always starts with a dark module. As shown in FIG. 1A, the standard symbol also includes a module check character encoded between the right guard bar pattern and the last module of the reverse character field. In addition to the right side of the left-hand guard pattern and the right-hand guard bar pattern, other information is recorded, which can be used to determine the number of characters encoded with the symbol and having a preselected width. Can identify the system. When reading any bar-encoded symbol, the symbol is not only read as recorded;
It is customary to detect surrounding recorded information in the vicinity of the bar coded pattern of the desired information as to whether it is associated with the symbol. For example, with laser scanning techniques, a large portion of extraneous figures must be rejected, whereas with hand-held wand scanning devices, very few extraneous figures are detected. As already mentioned and shown in FIG. 1B, the UPC symbol consists of two bars and two blank spaces to represent one character. The order of bars and blanks may be blank-bar-blank-bar or may be reversed depending on the scanning direction and the field of recorded characters. In order to simplify the study of the present invention, the order is A, B,
C, D, in which case blanks and bars are identified based on FIG. 1C for both forward and reverse directions. In other words, each character appears in the order A, B, C, and D, regardless of whether it is recorded in the forward or backward direction. In this order, the two first-order decoding ratios used here are defined as:
That is, (A+B/C+D) and (A+D/B+C). Examining Figure 1C, each of these first-order reading ratios contains one bar and one blank space in both the numerator and denominator, so even if ink spread occurs, there is no difference in the ratio itself. It has no effect. These primary decoding ratios are fractions 2/5, 3/4,
4/3 and 5/2. One pair of these linear ratios is used to decode a single character. However, the following must be kept in mind. In other words, in the delta distance method using the above decoding ratio,
In either case, ambiguities arise and some characters cannot be unambiguously decoded solely on the basis of primary decoding ratios. That's what it means. In the present invention, we resolve this ambiguity by using selection and simplified quadratic decoding ratios, while also correcting for any printing tolerances to improve the
This makes the deciphering of alphabetic symbols based on ratios very reliable. The second-order ratio used in the present invention is determined by the value obtained by expanding two first-order ratios. As shown in Figure 1C, when two primary ratios produce a ratio of 3/4, 4/3 or 4/3, 3/4, the secondary ratio is the value of the primary ratio. shall be allocated on the basis of Determining the secondary decoding ratio If the selected primary ratio is 3/4, the ratio of the widths of modules A and B (A/B) is checked; if the primary ratio is 4/3, The quadratic ratio (C/D) of the widths of modules C and D is checked. Examine these quadratic ratios to determine whether they are 2/1 or 1/2. In any case, for numbers that do not cause ambiguity, such as 1, 7, 2, 8,
These numbers are decoded based on two primary decoding ratios and a selected secondary decoding ratio. All other numbers can be unambiguously decoded based on first-order decoding ratios only. The improved decoding method of the present invention is implemented by a microprocessor. The width of each bar and each blank space of the scanned symbol is measured and stored in a counter driven by a linear time base. These measured distances or widths are then transferred to a storage device after each measurement. Successive measurements are stored in successive storage locations of the storage device until all measurements are completed. As mentioned above, when scanning the recorded symbols there are detectable extraneous figures on the label with the UPC symbol, and this extraneous data is also stored in the storage device along with the required information. Thus, some of the information is scanned before the symbol itself is scanned, and some information is detected after the symbol is stored in the storage device. No decoding occurs while the label is being scanned. This procedure requires that a "label" with the required coded information be assigned a storage location in the storage device, or "framed", before it can be decoded. As mentioned above, the UPC standard symbol has a standard center bar pattern, with characters encoded to the left and right of this center bar pattern. The encoded data can be located within the storage device by examining the data in the storage device and thereby locating the stored data representing the standard center bar pattern. Once the location of this center bar pattern is specified, it can be used in accordance with the present invention to identify the storage locations stored in the coded characters to the left and right of the pattern. In other words, once the storage location of the center bar pattern is specified,
The storage locations of modules A, B, C and D are known for each letter of the symbol. Once these modules are located in storage,
The sum of the modules can be calculated to determine the values of the two primary decoding ratios. Once the primary decoding ratio is calculated, the secondary decoding ratio can be calculated, and as a result, the symbol can be decoded. An ambiguity exists if the two primary ratios are any combination of 3/4 and 4/3, and this ambiguity is therefore resolved using the secondary decoding ratio. See table.
【表】
D 2
[Table] D 2
【表】
2次比A/B及びC/Dはデルタ距離特性を有
していないから、従つて値が広範囲に亘つてい
る。これらは記号指定に従つてオーバーラツプは
していないが、その他のエラーまたは許容差外記
号によつて読取りエラーが生じる場合がある。
UPC標準記号には、1対1の比を有する保護
棒線及び中央棒線が含まれている。中央棒対中央
空白部の比の対数がゼロ以外であれば、比は1対
1にはならず、偏差度は対数の大きさで表わされ
る。これは方向性に関する情報及び印刷許容差の
大きさに関する情報を提供することになり、該情
報を使用すると2次比の測定値を修正することが
できる。例えば、中央棒対中央空白部の比が2対
1として測定された場合には、記号は過剰印刷さ
れていると推断できる。その場合、名目上2対1
のA/B比は4対1と近似であると測定されるで
あろう。測定されたA/B比を測定された中央棒
対中央空白部比で割つた場合、2対1という名目
上の値が算出されることになるであろう。
計算を簡略化するために対数を使う。従つて、
除法はログ(log)の減法で行われる。A/B
(またはC/D)比が空白部対棒線比である場合
は、中央棒線対中央空白部比の対数をA/B比に
加えて掛け算を行う。左から右に読取る場合、修
正因子は、記号の初めの半分の測定幅には対数式
に加えられ、逆に右側文字からは減算される。読
取りが逆向きの場合には、初めの半分は右側半分
となる。
インク広がりの条件下では、1対1の比が、比
例式に2対1に変ることはない。しかし、名目上
の比が1対2及び2対1のみであれば、修正が可
能である。その他の比が、例えば中間棒線と中間
棒線空白部との比に、現われる場合には、修正の
精度は比較的低くなるだろう。
さて、上記構造及び既述の記号解読のための一
般概念を念頭に置いた上で、第1図のブロツク図
に示されている解読装置の一般機構を説明する。
ラベル10上にUPC記号が記録または印刷され
ている。記号上を光学式ウオンド11が通過し、
UPC記号の形をしているデータを表わす棒線及
び空白部を検知並びに信号転送する。光学式ウオ
ンド11は白い棒線から白い空白部間、並びに逆
の場合の変位を表わす記号を発生する。該光学式
ウオンド11は当業者にとつて極めて周知のもの
であり、またこのようなウオンド読取システム
は、本発明の同一譲受人の所有する米国特許第
3925639号の記載によつて例証されている。さ
て、これらのウオンド信号即ち生データは線形時
間・デイジタル変換器12に送られる。変換器1
2によつてウオンド11が各棒線及び各空白部を
横断するのに要した時間が測定され、これらの幅
測定値は読書き記憶装置13に記憶される。その
際、該幅測定値は記憶装置13内の記憶装置に順
序通り記憶される。読書き記憶装置13はランダ
ム・アクセス記憶装置(RAM)であるのが便利
である。ウオンド11による変位検知が終了する
と、システムの制御は、線形時間・デイジタル変
換器12から中央棒線ロケータ14に移る。ロケ
ータ14は記憶装置13を探索して、UPC記号
の中央棒線用パターン即ち中央棒線パターン
01010を満足させる比を探し出す。このため、ロ
ケータ14は比計算機15を使用する。比計算機
15はまた文字解読器16によつても使用され
る。
比計算器15は、中央棒線ロケータ14の制御
下にある場合、記憶装置13からモジユールA,
B,C及びD用の幅測定値の線形値を受信し、こ
れらの値の選択された一対を加え、予め選択され
た比を計算して有効な中央棒線パターンが存在す
るか否かを決定する。中央棒線ロケータ14は、
予め選択された一対の比が双方共1であることを
確認した場合には記憶装置内における中央棒線パ
ターンの位置を決定する。該中央棒線パターンが
パターン01010であり、またこれらを左から右に
読み取つた場合、A、B、C、D及びEモジユー
ルであると見做し得るものとすると、有効中央棒
線が記憶装置内に配置されているかどうかを決定
するには、中央棒線比(A+B/C+D)及び(B+C
/D+E)を
展開して検査すればよい。これらの比が双方共1
であれば、中央棒線パターンは記憶装置13内に
正しく配置されていることになる。上記の比の双
方を検査するに際して、正しい結果が得られた場
合、この装置において、中央棒線パターンが空白
部から始まつていて且つ正しい位置指定がなされ
ている、ことが確認される。計算の結果上記の比
のいずれかが1にならない場合には、一致する2
つの連続比が検知されるまで同じ工程を繰り返す
必要がある。中央棒線パターンの位置を指定する
計算では次の点に注意しなければならない。つま
り、デルタ距離が使用されているため、インク広
がりが均一である場合には中央棒線パターンのし
い位置を決定することができないということであ
る。予め選択された回数だけ試算して所望の比が
検知されない場合、その読取りは止めるしかな
い。
一旦有効中央棒線の条件が満たされたら、記録
または印刷許容差修正因子の計算を行う。印刷許
容差修正計算は、中央棒線パターンを含むモジユ
ールの被検知幅に基ずいて行われる。修正の大き
さは、標準棒線対保護空白部の比の測定によつて
得られる。従つて、印刷許容差修正の値を決める
には、比(A+C/B+D)を計算すればよい。この比
で
は、(A+C)は棒線の幅を表わし、(B+D)は
空白部の幅を表わしており、従つて、中央棒線パ
ターンが正しく位置指定されている場合は、この
比は1になるべきであり、このことは該パターン
の記録または印刷に先立つ記号の基本論理であ
る。この印刷許容差修正値が算出されたら、記憶
装置13の記憶アドレスを解読される第1文字の
開始位置にセツトする。解読行程のこの時点で
は、制御は文字解読器16に移つている。
文字解読器16は、比計算機15を利用して、
中央棒線パターンの左側及び右側のモジユールの
パターンを解読するという機能を果している。有
効中央棒線パターンが認識された場合、文字解読
器16の制御下にある比計算機15によつて算出
される一連の比によつて、文字の読取りが行われ
る。次に、文字解読器16は、中央棒線ロケータ
14で指定された記憶装置から始まる記憶装置1
3に記憶されている該一連の12文字及び中央棒線
パターンをステツプする。1次比の各々が計算さ
れたら、2次比を計算して、発生可能な如何なる
あいまいさをも解決する。2次解読比を計算する
に先立つて、印刷許容差修正因子と記憶装置13
に記憶されているモジユールの幅を表わすデータ
とを組合せ、次にこの修正された値を使用して2
次解読比の計算を行う。12文字のどれか1つでも
正しく解読できなかつた場合は、制御を中央棒線
ロケータ14に戻す。文字解読器16で全ての文
字が正しく解読されたら、制御を解読器16から
妥当性検査回路17に移す。
妥当性検査回路17自体は新規でないから、こ
れについては詳述しない。これは単に読取りサイ
クル繰返しループの完全性を目的として含まれて
いるにすぎない。このため、各文字には読取方向
表示子が含まれている。解読された情報が妥当で
あるためには、読取方向表示子の全てに一貫性が
なければならない。ウオンド11による読取方向
が逆向きである場合は、文字順序も逆向きとなつ
て検査数字の検孔が行われる。これらの検査のい
ずれかが失敗である場合、システムの制御を中央
棒線ロケータ14に戻して、記憶装置13内の中
央棒線パターンの正しい位置を決めなければなら
ない。この過程は、妥当読取りが達成されるか、
あるいは記憶装置13内に記憶された妥当記号の
可能な位置が検査し尽くされるまで繰り返され
る。
さて、解読システムの上記一般機構を念頭に置
いた上で、第2図に示す線形時間・デイジタル変
換器12について詳述する。この変換器12は、
ウオンド11からのウオンド生データ情報を受信
する回路素子及び該データを記憶装置13に記憶
できるように処理する回路素子から成つている。
この目的を果すため、AND回路20にはその入
力部においてウオンド生データ情報を受信するよ
うに接続された1つの入力端子が具備されてい
る。該回路20の他方の入力部は調歩式
(start/stop)トグル21に接続されている。
AND回路20の出力回路は微分回路22に接続
され、後者は整流器23に接続されている。トグ
ルTMは、整流器23の出力部に直接接続してい
るセツト入力Sを有している。トグルTMのリセ
ツト出力はM1で示されている。トグルTMのセツ
ト出力部はAND回路24に接続されている。
AND回路24の出力部は、順次出力信号M2,M3
及びM4を発生するシークエンサー25に接続さ
れている。実時間測定値はカウント・レイト発振
器26を配設したことによつて得られる。該発振
器26は、AND回路27に対して予め選択され
た速度でクロツク・パルスを発生する。AND回
路27のもう1つの入力はトグルTMのリセツト
出力M1である。発振器26からのクロツク・パ
ルスはまたAND回路24の第2入力としても印
加されて、シークエンサー25の作動を制御す
る。AND回路27は、8ビツト・カウンタ28
の増分入力に接続している出力部を備えている。
8ビツト・カウンタ28はそのプリセツト入力部
に印加される信号を仲だちとしてプリセツトする
ことができるが、その信号は、第2図では、シー
クエンサー25からの信号M3として示されてい
る。8ビツト・カウンタ28はまた桁上げ出力部
として示されているオーバフロー出力部を備えて
いて、この出力信号は、OR回路29に対してそ
の1入力の形で印加される。8ビツト・カウンタ
28のカウント出力はAND回路30に対してそ
の1入力の形で結合される。AND回路30のも
う1つの入力はシークエンサー25からの信号
M2である。AND回路30の出力は記憶装置13
のデータ入力端子を使用可能状態とすると同時
に、データを該記憶装置の連続記憶位置へと転送
する。記憶装置13はアドレス・カウンタ及びレ
ジスタ31の制御下にある。アドレス・カウンタ
及びレジスタ31は、シークエンサー25から発
生されて該レジスタに結合される信号M3で示さ
れている増分入力を有しており、この入力によつ
て記憶装置13の連続アドレスの増加を行うこと
ができる。アドレス・カウンタ及びレジスタ31
はまた、「桁上げ」として示されているオーバフ
ロー出力端子を備えていて、この出力信号は、
OR回路29に対して第2入力の形で加えられ
る。読取サイクルを始動させる開始信号はアドレ
ス・カウンタ31のリセツト端子に印加される。
OR回路29は、その入力部のいずれかがカウン
タ28またはレジスタ31からのオーバフロー信
号を受信した場合、信号M5で示されているオー
バフロー信号を発生する。シークエンサー25か
らの信号M4はトグルTMのリセツト端子Rに印加
されて、UPC記号のモジユール読取完了時点で
該トグルのリセツトを行う。上記「開始」信号は
またトグル21のリセツト端子に加えられて、
ANDゲート20を使用可能状態にする。
さて、上記構造を考慮に入れて置くと線形時
間・デイジタル変換器12の操作原理の理解が容
易になる。この素子12には1つのスイツチが具
備されているが、これは読取作業を開始させ、且
つトグル21または「T」トグル21のリセツト
端子、並びにアドレス・カウンタ及びレジスタ3
1のリセツト端子に対して「開始」信号を印加す
るためのスイツチである。一方、該装置12は、
例えば米国特許第3925639号に開示されているよ
うに、ラベル10の白い表面ないし端面に対して
ウオンド11を配置した場合のようなラベル10
を読取るための試みがなされるべきであることを
示すある条件に対して自動的に応動できるように
設計できる。ラベル10上をウオンド11が移動
した場合、該ウオンド11は暗い棒線と白い空白
部間の変位を検知する。これらの変位は、発生と
同時に、ANDゲート20を介して転送され、微
分回路22で微分され、整流器23で整流され
て、その結果生成された信号がトグルTMの「セ
ツト」端子に印加される。トグルTMは、被検知
モジユール間の変位毎に「セツト」されるように
なつている。発振器26によつて発生されるクロ
ツク・パルスは、信号M1をANDゲート27に印
加して生じるトグルTMのリセツト時間に8ビツ
ト・カウンタ28に累積される。トグルTMがセ
ツトされることによつてシークエンサー25が使
用可能状態となり、従つて8ビツト・カウンタ2
8へのクロツク・パルスの印加が禁止される。こ
のクロツク・パルスのカウンタ28への印加禁止
は、トグルTMが「セツト」される際の信号M1の
状態変化を仲だちとして生じる。この時点では、
カウンタ28に累積された情報は記憶装置13に
転送され、次の情報を記憶するための記憶装置の
アドレスは変位間で増加され、次にトグルTMが
リセツトされる。シークエンサー25が配設され
ているのは、これらの機能を順次信号M2,M3、
及びM4をこの順序で発生することによつて達成
するためである。トグルTMのセツテイング後に
生じる順次操作は下記の通りである。
順次信号 機 能
M2 カウンタ28のカウントを記憶
装置13内に記憶する。
M3 レジスタ31の記憶アドレスを
増加し、カウンタ28のカウン
トをプリセツトする。
M4 トグルTMをリセツトし、次に
検知されるモジユール、あるい
は次の棒線または空白部用のカ
ウントを累積する。
信号M1は「停止」信号と考えられ、一方信号
M5はシステムの制御を中央棒線ロケータ14に
移譲するものである。
記憶装置13は、望ましくは、64の測定値の結
果を累積する容量を有しウオンド11がラベル1
0上のUPC記号と関連し得るいかなる無関係図
形をも横断できるものがよい。カウンタ28のカ
ウント間隔は約40マイクロセカンドであつて、カ
ウント容量は8ビツトないし8カウントである。
ウオンド11によつてある変位点が検知された後
上記機能を果すにはある有限量の時間が必要であ
ることは、当然理解できる所である。この目的の
ため、カウンタ28をある値、即ちこの処理時間
中に累積されるであろうカウントを表わす値にプ
リセツトする。1つの構成では、最小カウントを
7にプリセツトした所、変位後累積測定値を記憶
装置13に記憶するのに十分な時間が得られた。
カウンタ28を各測定の始めに信号M3でカウン
ト7にプリセツトすると、解読システムの精度を
保持することができる。
カウンタ28または記憶アドレス・カウンタ3
1がオーバフローとなつて出力信号を発生する場
合、該オーバフローはORゲート29の出力信号
M5で表わされる。信号M5が発生した場合、ラベ
ル10の端部に既に達していると推断できるか
ら、該信号M5がシステムの制御対象を変換器1
2から中央棒線ロケータ14に移す。
さて、第3図、第3A図及び第3B図について
説明する。ここでは記憶装置13におけるUPC
記号の中央棒線パターンの位置を確認並びに識別
するブロツク回路図について詳述する。基本的に
は、中央棒線ロケータ14には、中央棒線比検知
器14D、再試行カウンタ14C、中央棒線ロケ
ータ・シークエンサー14S、及び記憶アドレス
制御装置14Mが含まれている。中央棒線ロケー
タ装置14は、該ロケータ14で処理される所要
の比を計算する比計算機15と連動するようにな
つている。中央棒線パターンが記憶されている時
間間隔中に、比計算機15はロケータ装置14の
制御下にある。該比計算機15の操作原理につい
ては後により完全に説明する。
第3図に破線ブロツクで示されている中央棒線
ロケータ・シークエンサー14Sには、P1,P2,
P3等及びS1,S2,S3等で表わされている信号を発
生するための順序が含まれている。該シークエン
サー14Sは、これがある特定の状態にプリセツ
トされた場合、シークエンサー14Sのその他の
位置が全てリセツトされるような機能を有してい
る。これらのプリセツト位置は、第3図では、シ
ークエンサー14Sの底部にP1,S1,P9等で示さ
れている。該シークエンサー14Sは、そのステ
ツプ入力部で順次信号を受信するたびに、その入
力回路によつて前進させられる。該シークエンサ
ー14Sは、クロツク・パルス発振器26によつ
て発生されたクロツク・パルスに応答して制御並
びに逐次式に前進させられる。発振器26からの
クロツク・パルスはAND回路35に対してその
1つの入力の形で印加される。AND回路35の
もう1つの入力は、トグル35Tの「セツト」出
力から出て来ている。トグル35Tがその「セツ
ト」状態にある時、AND回路35の入力にある
クロツク・パルスを加えると、出力信号が発生し
てシークエンサーのステツプ入力に入り、その結
果シークエンサーが次の連続位置に進む。つま
り、トグル35Tがセツト状態にある場合、シー
クエンサーは、ANDゲート35がクロツク・パ
ルスを受信するたびに、これに応答して順次前進
する。トグル35Tのセツト入力はORゲート回
路36によつて制御される。このOR回路36
は、「再試行」信号の他に線形時間・デイジタル
変換器12からのオーバフロー信号M5を受け
る。ここで、本システムの制御が、信号M5に応
答して、線形時間・デイジタル変換器12から中
央棒線ロケータ14に移つていることを想起され
たい。OR回路36の出力部は、トグル35Tの
セツト入力並びにシークエンサーのP1プリセツト
位置に接続されている。
中央棒線ロケータ14の記憶アドレス制御装置
14Mは、線形時間・デイジタル変換器12で使
用されている記憶装置13のアドレス・カウンタ
及びレジスタ31を使用、即ち時分割式に使用す
る。該レジスタ31は、第3図では本発明の説明
を簡潔にするために、別設の回路素子として示さ
れている。記憶アドレス・レジスタ31は、該レ
ジスタ31に所要のアドレスをセツトするための
「プリセツト」入力部、並びに該レジスタに記憶
されたアドレスを順次増加するための「増加
(incrementing)」入力部を備えている。本発明の
目的を達成するために、レジスタ31内に、装置
37に入れられた「開始」アドレスのようなアド
レスをプリセツトすることもできる。この「開
始」アドレスはそのアドレス位置で記憶装置の読
出しを開始できるように該レジスタ31に記憶さ
れる。このため、装置37に記憶されている所要
のアドレスの数値を(装置12からの)信号M5
と共にAND回路38に加えて、記憶装置内で中
央棒線パターン位置の順次探索を開始させる。
AND回路38の出力はOR回路39の1つの入力
に接続されている。OR回路39のもう1つの入
力はAND回路40の出力と接続しており、該回
路40はシークエンサーからの信号P13及び記憶
アドレス・レジスタ31からの出力信号を受け
る。OR回路39の出力信号は、プリセツトされ
た次続の開始アドレス制御装置41である制御回
路網に印加される。制御装置41の出力は、シー
クエンサー14Sからの信号P1と共にAND回路
42に加えられる。AND回路42の出力信号
は、OR回路43に対して1つの入力信号として
印加される。OR回路43の出力信号はアドレ
ス・レジスタ31のプリセツト入力部に加えら
れ、これによつて装置37に入れられたアドレス
を該レジスタ31内に記憶できる。
記憶アドレス・レジスタ31の右側には制御回
路網が示されていて、事前選択された数値をアド
レス・レジスタ31がセツトされているアドレス
から減ずる働きをする。この回路網には、アドレ
ス・レジスタ31に記憶されているアドレスから
減らされる数を記憶する記憶装置44が含まれて
いる。第3図に示されているように、該減数Nは
装置44に記憶された数26で表わされている。記
憶装置44の出力は、シークエンサー14Sから
の信号P13と共にAND回路45に送られる。AND
回路45の出力信号はOR回路46の1つの入力
に印加される。OR回路46のもう1つの入力
は、レジスタ31に記憶されているアドレスから
減らされる別の数値(例えば、第3図に示されて
いる数字2)を記憶するための記憶素子47を有
する制御回路網を仲だちとして送られて来る。素
子47の出力信号はAND回路48の1つの入力
に印加される。OR回路49が配設されていて、
その出力信号はAND回路48のもう一方の入力
に加えられる。OR回路49の入力信号はシーク
エンサー14Sから送られて来るが、図では2つ
の信号P6及びP11で示されている。AND回路48
の出力信号はOR回路46に対してもう1つの入
力信号として印加される。OR回路46の出力は
減数レジスタ50のプリセツト入力に送られる。
その場合、減数レジスタ50は装置44または装
置47に記憶されている数を記憶して別の処理を
行う。減数レジスタ50の出力信号は減算器51
に送られる。減算器51のもう1つの入力はアド
レス・レジスタ31の出力部から送られて来る。
アドレス・レジスタ31から送られるアドレスの
数値は減数レジスタ50に記憶され、ここで減ら
されて差レジスタ52に印加並びに記憶される。
差レジスタ52で発生した信号はAND回路53
に送られる。AND回路53のもう1つの入力信
号はOR回路54から送られて来る。OR回路54
に印加される2つの信号は中央棒線ロケータ・シ
ークエンサー14Sから送られて来るものであつ
て、図では2つの信号P8及びP15で示されてい
る。AND回路53の出力信号はOR回路43にも
う1つの入力信号として印加されるが、その結果
記憶アドレス・レジスタ31に対するアドレスの
プリセツトがなされる。即ち、29−26=3とな
る。
記憶アドレス・レジスタ31の増分入力はOR
回路55の出力信号によつて制御される。該OR
回路55は中央棒線ロケータ・シークエンサー1
4Sからの信号S1,S2、及びS3を受け、アドレ
ス・レジスタ31に記憶されているアドレスを
順々に増分(incrementing)する。
第3図の左側には中央棒線比検知器14Dが示
されている。比検知器14Dは比計算機15から
の所要比の対数を表わす信号を受ける。この対数
信号はログ比レジスタ56に印加並びに記憶され
る。該ログ比の数値を使用して読取り専用記憶装
置に記憶されている変換表をアドレスする。該記
憶装置は図では装置57、並びにROM Eで示さ
れている。該装置57は表のデータを記憶して、
計算済みの対数比を10進数システムまたはその他
の好便な数システムの数値に変換する。ここでは
本発明を理解し易くするために、該変換は10進数
システムで行われるものと仮定することにする。
このようなわけで、ROM E、即ち装置57に印
加され且つ比の対数を表わす対数比信号は、計算
済み比を表わす数値信号に変換される。読取り専
用記憶装置ROM E57から読出された比を表わ
す数値信号は、一対のAND回路58,59に送
られる。装置57の出力信号は、AND回路59
に対しては否定回路60を介してその1つの入力
として印加され、一方AND回路58に対しては
修正されない状態で直接印加される。これら2つ
のAND回路58,59の各々のもう1つの入力
信号は、中央棒線ロケータ・シークエンサー14
Sから送られる同じ信号P2である。2つのAND
回路58,59の出力信号双方共サイクル・カウ
ンタ61に送られてこれを制御するようになつて
いる。但し、AND回路58の出力信号はサイク
ル・カウンタ61の増分入力部に直接送られる
が、AND回路59の出力信号の方は一旦OR回路
62の入力として印加されるようになつている。
OR回路62の出力はサイクル・カウンタ61の
リセツト入力に直接加えられる。OR回路62に
印加されるもう1つの入力信号はAND回路63
から送られて来る。AND回路63は、シークエ
ンサー14Sから発生される信号P1及びP8に応答
するOR回路64を介して制御される。更に、
AND回路63に対しては、再試行カウンタ装置
14Cから発生される奇偶ビツト信号がもう1つ
の入力として印加される。
サイクル・カウンタ61の出力はサイクル・カ
ウンタ解読回路網65に送られ、ここでカウンタ
61のカウントの10進値が信号化される。回路網
65の出力信号は、シークエンサー14Sからの
信号P4と共にAND回路66に対して1つの入力
として印加される。AND回路66の出力信号
は、図に示されているように、シークエンサー1
4SのP9プリセツト位置に直接印加される。
再試行カウンタ14Cには再試行2進カウンタ
67が含まれている。該2進カウンタ67は、シ
ステムが中央棒線パターンを記憶装置内で位置指
定し且つその結果を記憶するために行つた試行数
をカウントする。再試行カウンタ67は、変換器
12からの信号M5によつてその入力部Rでリセ
ツトされる。カウンタ67の増分入力部はシーク
エンサー14Sからの信号P3に応答する。カウン
タ67の奇偶信号はANDゲート63に送られ、
既述のように、サイクル・カウンタ61を制御す
る。再試行カウンタ67に記憶されたカウントは
再試行解読回路68に直接送られて、該カウンタ
67の数え上げに応じて該カウンタ67で発生し
た出力信号を解読する。回路68はまたシークエ
ンサー14Sからの信号P5に応答するようになつ
ている。回路68は、記憶装置13内での中央棒
線パターンの位置指定の試みが10回行われた後、
即ち第10回目の試行終了後は読取りが打切られる
ように構成並びに定義されている。従つて回路6
8からの出力信号はそのように図示されている。
妥当な記号であつても記憶装置の容量を越える場
合もあるから、この値については選択を行う必要
がある。
記憶装置13内における標準中央棒線パターン
の位置の探索を考える場合、始めに次のように仮
定する。即ち、ラベル10の読取りに際して、ラ
ベル10上のUPC記号に与えられた保護棒線以
前には変位は発生せず、従つて該中央棒線パター
ンは記憶装置13内ではアドレス27―31に記憶さ
れるものと仮定する。第1記憶位置φには常に1
本の棒線である1つのモジユールの測定値が含ま
れ、従つて該記憶装置13内の偶数アドレスは全
て棒線測定値を記憶している。この記憶構成は第
3A図に示されており、この図では、中央棒線パ
ターンのコード化モジユールは、妥当な中央棒線
パターンを決定する解読比と共にA,B,C、及
びDで示されている。このようなわけで、記憶装
置13における中央棒線パターンの位置の探索は
常にアドレス27から始まる。万一走査中に記憶装
置13内に無関係なデータが記憶されている場合
は、記憶位置が移動し、従つて該パターンの位置
指定をする初期試行は失敗に帰することは当然理
解できる所である。この開始アドレスは装置37
に記憶されていて、アドレス位置27―31に記憶さ
れているデータを検査して、既知の中央棒線幅比
が中央棒線パターンの位置を記憶装置13内に明
確に指定できる記憶済みデータで満足されるか否
かを決定する。2つの比(A+B/C+D)及び(B+
C/D+E)
が双方共1である場合は、妥当な棒線パターンの
位置指定が行われる。
表
順 序 機 能
P1 記憶アドレス・レジスタ31に
開始アドレスをロードする。
S1 Aレジスタをロードし、記憶ア
ドレス・レジスタ31を増分す
る(increment)。
S2 Bレジスタをロードし、記憶ア
ドレス・レジスタ31を増分す
る。
S3 Cレジスタをロードし、記憶ア
ドレス・レジスタ31を増分す
る。
S4 Dレジスタにロードする。
S5 Aレジスタの内容を選択してB
レジスタの内容に加える。
S6 log(A+B)をEレジスタにロ
ードする。
S7 Cレジスタの内容を選択してD
レジスタの内容に加える。
S8 log(C+D)をFレジスタにロ
ードする。
S9 Eレジスタの内容からFレジス
タの内容を引く。
P2 logの結果が1の場合はサイク
ル・カウンタ61を増分し、1
でない場合はカウンタ61をリ
セツトする。
P3 再試行カウンタ67を増分す
る。
P4 サイクル・カウンタ61が2を
信号したら、順序P9まで飛越
す。
P5 再試行カウンタ67が10を信号
したら、読取りを打切る。
P6 減数レジスタ50に数2をロー
ドする。
P7 記憶アドレス・レジスタ31の
内容から減数レジスタ50の内
容を引く。
P8 差レジスタ52の内容を記憶ア
ドレス・レジスタ31にロード
する。再試行カウンタ67が
「偶数」ビツトを信号する場合
はサイクル・カウンタ61をリ
セツトする。ステツプS1に飛越
す。
P9 Bレジスタの内容を選択してC
レジスタの内容に加える。
P10 log(B+C)をEレジスタに記
憶する。
P11 Dレジスタの内容を選択してE
レジスタの内容に加える。減数
レジスタ50に数2をロードす
る。
P12 log(D+E)をレジスタFにロ
ードする。記憶アドレス・レジ
スタ31の内容から減数レジス
タ50の内容を引く。
P13 Eレジスタの内容からFレジス
タの内容を引く。減数レジスタ
50に数26をロードする。
P14 修正値レジスタ100(第5図
参照)にロードする。記憶アド
レス・レジスタ31の内容から
減数レジスタ50の内容を引
く。
P15 差レジスタ52の内容を記憶ア
ドレス・レジスタ31に記憶す
る。解読器16に飛越す。
表では、記憶装置内において中央棒線パター
ンの位置指定をするためのステツプ・バイ・ステ
ツプ順序が示されており、次にこれについて説明
する。
記憶装置13において記憶済み中央棒線データ
の正しいアドレスを探索する際に発生する事象の
基本的順序では、まず、記憶アドレス27から始ま
るステツプP1で、モジユールA,B,C及びDに
対する値が記憶装置13から読出される。第1の
比(A+B/C+D)は比計算機15で計算され、更に
中
央棒線比検知器14Dで処理される。この比が1
であると決定された場合は、サイクル・カウンタ
61が時間P2において増分される。時間P3では、
再試行カウンタ67が増分されて解読試行の完了
を記録する。次の順序では、記憶装置13に記憶
されていてアドレス28から始まつてアドレス31ま
での情報、即ちモジユールA,B,C及びDを表
わすデータの新しい組が記憶装置13から読出さ
れる。これは、まず、開始アドレスを順次ステツ
プP6乃至P8を介して修正し、次に該データを検索
し、更にその比をステツプP9乃至P13を介して計
算することによつて達成される。[Table] Since the quadratic ratios A/B and C/D do not have delta distance characteristics, their values range over a wide range. Although these do not overlap according to the symbol designation, other errors or out-of-tolerance symbols may cause reading errors. The UPC standard symbol includes a guard bar and a center bar with a one-to-one ratio. If the logarithm of the ratio of the center bar to the center blank is not zero, the ratio will not be 1:1 and the degree of deviation will be expressed by the magnitude of the logarithm. This will provide information regarding directionality and the magnitude of printing tolerances, which information can be used to correct the quadratic ratio measurements. For example, if the ratio of center bar to center blank space is measured as 2 to 1, it can be inferred that the symbol is overprinted. In that case, nominally 2 to 1
The A/B ratio of would be measured to be approximately 4 to 1. If the measured A/B ratio was divided by the measured center bar to center blank ratio, a nominal value of 2 to 1 would be calculated. Use logarithms to simplify calculations. Therefore,
Division is performed using log subtraction. A/B
(or C/D) ratio is a blank to bar ratio, then the logarithm of the center bar to center blank ratio is added to the A/B ratio and multiplied. When reading from left to right, the correction factor is added logarithmically to the measured width of the first half of the symbol and conversely subtracted from the right-hand character. If the reading is reversed, the first half will be the right half. Under conditions of ink spreading, a 1:1 ratio does not change proportionally to 2:1. However, modifications are possible if the nominal ratios are only 1:2 and 2:1. If other ratios appear, such as the ratio of intermediate bars to intermediate bar gaps, the accuracy of the correction will be relatively low. Now, keeping in mind the above structure and the general concept for symbol decoding described above, the general mechanism of the decoding device shown in the block diagram of FIG. 1 will be explained.
A UPC symbol is recorded or printed on the label 10. The optical wand 11 passes over the symbol,
Bars and blank spaces representing data in the form of UPC symbols are detected and signaled. The optical wand 11 generates symbols representing the displacement from the white bar to the white blank and vice versa. Such optical wands 11 are well known to those skilled in the art, and such wand reading systems are described in U.S. Pat.
This is exemplified by the description in No. 3925639. Now, these wond signals, ie, raw data, are sent to a linear time-to-digital converter 12. converter 1
2 the time required for the wand 11 to traverse each bar and each blank space is measured, and these width measurements are stored in read/write storage 13. The width measurements are then stored in sequence in a memory in the memory 13. Conveniently, read/write storage 13 is random access storage (RAM). Once the displacement detection by the wand 11 is completed, control of the system is transferred from the linear time-to-digital converter 12 to the central rod locator 14. The locator 14 searches the storage device 13 to locate the pattern for the center bar of the UPC symbol, that is, the center bar pattern.
Find a ratio that satisfies 01010. For this purpose, the locator 14 uses a ratio calculator 15. Ratio calculator 15 is also used by character decoder 16. The ratio calculator 15, when under the control of the center bar locator 14, receives from the storage device 13 modules A,
Receive linear values of width measurements for B, C, and D, add selected pairs of these values, and calculate a preselected ratio to determine whether a valid center bar pattern exists. decide. The center bar locator 14 is
If it is confirmed that both of the pair of preselected ratios are 1, the position of the central bar pattern in the storage device is determined. Assuming that the center bar pattern is pattern 01010, and that these can be considered to be A, B, C, D and E modules when read from left to right, the effective center bar is the memory device. To determine whether the central bar ratio is (A+B/C+D) and (B+C
/D+E) and inspect it. Both ratios are 1
If so, the center bar pattern is correctly placed in the storage device 13. In testing both of the above ratios, if correct results are obtained, it is confirmed that the center bar pattern starts from a blank space and is correctly positioned in this device. As a result of calculation, if any of the above ratios does not become 1, the matching 2
The same process needs to be repeated until one continuous ratio is detected. The following points must be noted when calculating the position of the center bar pattern. This means that because the delta distance is used, it is not possible to determine the correct location of the center bar pattern if the ink spread is uniform. If the desired ratio is not detected after a preselected number of trials, the reading must be stopped. Once the valid center bar condition is met, record or calculate the printing tolerance correction factor. Printing tolerance correction calculations are performed based on the sensed width of the module including the center bar pattern. The magnitude of the modification is obtained by measuring the ratio of standard bar to guard void. Therefore, to determine the value of the printing tolerance correction, the ratio (A+C/B+D) can be calculated. In this ratio, (A+C) represents the width of the bar and (B+D) represents the width of the blank area, so if the center bar pattern is correctly positioned, this ratio equals 1. This is the basic logic of the symbol prior to the recording or printing of the pattern. Once this printing tolerance correction value has been calculated, the storage address of the storage device 13 is set to the starting position of the first character to be decoded. At this point in the decoding process, control has passed to the character decoder 16. The character decoder 16 uses the ratio calculator 15 to
Its function is to decipher the pattern of modules on the left and right sides of the central bar pattern. If a valid center bar pattern is recognized, the character is read by a series of ratios calculated by ratio calculator 15 under control of character decoder 16. The character decoder 16 then reads the storage device 1 starting from the storage device specified by the center bar locator 14.
3. Step through the series of 12 characters and center bar patterns stored in step 3. Once each of the primary ratios has been calculated, the secondary ratios are calculated to resolve any ambiguities that may arise. Prior to calculating the secondary decoding ratio, the printing tolerance correction factor and storage device 13
and the data representing the width of the module stored in , and then use this modified value to
Calculate the next decoding ratio. If any one of the 12 characters cannot be correctly decoded, control is returned to the center bar locator 14. Once all characters have been correctly decoded by the character decoder 16, control is transferred from the decoder 16 to the validity checking circuit 17. Since the validation circuit 17 itself is not new, it will not be described in detail. It is included solely for read cycle repeat loop integrity purposes. For this reason, each character includes a reading direction indicator. All reading direction indicators must be consistent for the decoded information to be valid. When the direction of reading by the won 11 is reverse, the order of the characters is also reversed and the test digits are inspected. If any of these tests fail, control of the system must be returned to the center bar locator 14 to determine the correct location of the center bar pattern within the storage device 13. This process determines whether a valid reading is achieved or not.
Alternatively, the process is repeated until all possible positions of valid symbols stored in the memory 13 have been exhausted. With the above general mechanism of the decoding system in mind, the linear time-to-digital converter 12 shown in FIG. 2 will now be described in detail. This converter 12 is
It consists of circuit elements that receive the raw wound data information from the wound 11 and circuit elements that process the data so that it can be stored in the storage device 13.
To this end, AND circuit 20 is provided with one input terminal connected to receive wond raw data information at its input. The other input of the circuit 20 is connected to a start/stop toggle 21 .
The output circuit of the AND circuit 20 is connected to a differentiating circuit 22, and the latter is connected to a rectifier 23. Toggle TM has a set input S connected directly to the output of rectifier 23. The reset output of Toggle TM is shown as M1 . The set output section of the toggle TM is connected to an AND circuit 24.
The output section of the AND circuit 24 sequentially outputs the output signals M 2 , M 3
and M4 . Real-time measurements are obtained by providing a count rate oscillator 26. The oscillator 26 generates clock pulses to an AND circuit 27 at a preselected rate. Another input to the AND circuit 27 is the reset output M1 of the toggle TM. A clock pulse from oscillator 26 is also applied as a second input to AND circuit 24 to control the operation of sequencer 25. The AND circuit 27 is an 8-bit counter 28
has an output connected to an incremental input of.
Eight-bit counter 28 can be preset by a signal applied to its preset input, which signal is shown in FIG. 2 as signal M3 from sequencer 25. The 8-bit counter 28 also has an overflow output, shown as a carry output, and this output signal is applied as its one input to an OR circuit 29. The count output of 8-bit counter 28 is coupled as one input to AND circuit 30. Another input of the AND circuit 30 is the signal from the sequencer 25.
It is M2 . The output of the AND circuit 30 is the memory device 13
The data input terminal of the storage device is enabled and the data is simultaneously transferred to consecutive storage locations of the storage device. Storage device 13 is under the control of address counter and register 31. Address counter and register 31 has an increment input, represented by signal M 3 generated from sequencer 25 and coupled to the register, by which the increment of successive addresses of storage device 13 is performed. It can be carried out. Address counter and register 31
also has an overflow output terminal, shown as "carry", and this output signal is
It is applied as a second input to the OR circuit 29. A start signal is applied to the reset terminal of address counter 31 to initiate the read cycle.
OR circuit 29 generates an overflow signal, indicated by signal M5 , if any of its inputs receives an overflow signal from counter 28 or register 31. The signal M4 from the sequencer 25 is applied to the reset terminal R of the toggle TM to reset the toggle upon completion of the module reading of the UPC symbol. The "start" signal is also applied to the reset terminal of toggle 21,
AND gate 20 is enabled. Now, taking the above structure into consideration will facilitate understanding of the operating principle of the linear time-to-digital converter 12. This element 12 is equipped with a switch which initiates the read operation and which resets the toggle 21 or "T" toggle 21 and the address counter and register 3.
This is a switch for applying a "start" signal to the reset terminal of No. 1. On the other hand, the device 12
For example, as disclosed in U.S. Pat. No. 3,925,639, the label 10 has a wand 11 disposed on the white surface or end surface of the label 10.
can be designed to automatically react to certain conditions that indicate that an attempt should be made to read the data. When the wand 11 moves over the label 10, the wand 11 detects the displacement between the dark bar and the white blank area. These displacements, as they occur, are transferred through an AND gate 20, differentiated in a differentiator 22, rectified in a rectifier 23, and the resulting signal is applied to the "set" terminal of the toggle TM. . The toggle TM is adapted to be "set" for each displacement between the sensed modules. The clock pulses generated by oscillator 26 are accumulated in 8-bit counter 28 at the time of the reset of toggle TM caused by applying signal M1 to AND gate 27. By setting the toggle TM, the sequencer 25 is enabled, and therefore the 8-bit counter 2
Application of clock pulses to 8 is prohibited. This inhibition of the application of clock pulses to the counter 28 is mediated by a change in the state of the signal M1 when the toggle TM is "set". At this point,
The information accumulated in the counter 28 is transferred to the storage device 13, the address of the storage device for storing the next information is incremented between displacements, and the toggle TM is then reset. The sequencer 25 is arranged to sequentially transmit these functions to the signals M 2 , M 3 ,
and M 4 in this order. The sequential operations that occur after setting the ToggleTM are as follows. Sequential signal function M 2 Stores the count of counter 28 in storage device 13 . The memory address of the M3 register 31 is incremented and the count of the counter 28 is preset. M 4 Reset toggle TM and accumulate count for next sensed module or next bar or blank. Signal M 1 is considered a "stop" signal, while the signal
M5 transfers control of the system to the center bar locator 14. The storage device 13 preferably has a capacity for accumulating the results of 64 measurements and the ward 11 has a label 1.
It is better to be able to cross any unrelated figures that may be related to the UPC symbol on 0. The count interval of the counter 28 is approximately 40 microseconds, and the count capacity is 8 bits or 8 counts.
It is of course understandable that a finite amount of time is required for the wand 11 to perform its function after a certain displacement point has been detected. For this purpose, counter 28 is preset to a value representing the count that will be accumulated during this processing time. In one configuration, presetting the minimum count to 7 provided sufficient time to store post-displacement cumulative measurements in storage 13.
Presetting the counter 28 to a count of 7 with signal M3 at the beginning of each measurement maintains the accuracy of the decoding system. Counter 28 or storage address counter 3
1 overflows and generates an output signal, the overflow is the output signal of the OR gate 29.
Represented by M5 . If the signal M 5 occurs, it can be inferred that the end of the label 10 has already been reached, so that the signal M 5 causes the system to control the converter 1.
2 to the center bar locator 14. Now, FIG. 3, FIG. 3A, and FIG. 3B will be explained. Here, UPC in storage device 13
A block circuit diagram for locating and identifying the center bar pattern of a symbol will now be described in detail. Basically, the center bar locator 14 includes a center bar ratio detector 14D, a retry counter 14C, a center bar locator sequencer 14S, and a storage address controller 14M. The center bar locator device 14 is adapted to work in conjunction with a ratio calculator 15 which calculates the required ratios processed by the locator 14. During the time interval during which the center bar pattern is stored, the ratio calculator 15 is under the control of the locator device 14. The principle of operation of the ratio calculator 15 will be explained more fully later. The central bar locator/sequencer 14S, indicated by the dashed line block in FIG. 3, includes P 1 , P 2 ,
Contains the sequence for generating the signals denoted P 3 etc. and S 1 , S 2 , S 3 etc. The sequencer 14S has a function such that when it is preset to a particular state, all other positions of the sequencer 14S are reset. These preset positions are designated P 1 , S 1 , P 9 etc. in FIG. 3 at the bottom of the sequencer 14S. The sequencer 14S is advanced by its input circuitry each time it receives a sequential signal at its step input. The sequencer 14S is controlled and advanced in a sequential manner in response to clock pulses generated by a clock pulse generator 26. A clock pulse from oscillator 26 is applied to AND circuit 35 at one of its inputs. The other input to AND circuit 35 comes from the "SET" output of toggle 35T. When toggle 35T is in its "set" state, applying a clock pulse to the input of AND circuit 35 produces an output signal that is applied to the sequencer's step input, thereby advancing the sequencer to the next consecutive position. That is, when toggle 35T is in the set state, the sequencer advances sequentially in response to each clock pulse that AND gate 35 receives. The set input of toggle 35T is controlled by OR gate circuit 36. This OR circuit 36
receives an overflow signal M 5 from the linear time-to-digital converter 12 in addition to the "retry" signal. Recall that control of the system is transferred from linear time-to-digital converter 12 to center bar locator 14 in response to signal M5 . The output of the OR circuit 36 is connected to the set input of the toggle 35T as well as to the P1 preset position of the sequencer. The storage address controller 14M of the center bar locator 14 uses the address counters and registers 31 of the storage device 13 used in the linear time-to-digital converter 12, ie, in a time-sharing manner. The register 31 is shown as a separate circuit element in FIG. 3 to simplify the description of the invention. The storage address register 31 has a ``preset'' input for setting the desired address in the register 31, and an ``incrementing'' input for sequentially incrementing the address stored in the register. There is. It is also possible to preset an address in register 31, such as a "starting" address placed in device 37, to achieve the objectives of the invention. This "start" address is stored in the register 31 so that reading of the storage device can begin at that address location. For this purpose, the value of the desired address stored in device 37 is transmitted to signal M 5 (from device 12).
At the same time, in addition to the AND circuit 38, a sequential search for the center bar pattern position is started in the storage device.
The output of the AND circuit 38 is connected to one input of the OR circuit 39. Another input of the OR circuit 39 is connected to the output of an AND circuit 40 which receives the signal P 13 from the sequencer and the output signal from the storage address register 31. The output signal of OR circuit 39 is applied to control circuitry, which is a preset next start address controller 41. The output of the control device 41 is applied to the AND circuit 42 together with the signal P1 from the sequencer 14S. The output signal of the AND circuit 42 is applied to the OR circuit 43 as one input signal. The output signal of the OR circuit 43 is applied to the preset input of the address register 31 so that the address entered into the device 37 can be stored in the register 31. Control circuitry is shown to the right of storage address register 31 and serves to subtract a preselected value from the address to which address register 31 is set. The network includes a memory 44 for storing the number to be subtracted from the address stored in address register 31. As shown in FIG. 3, the subtractive number N is represented by the number 26 stored in device 44. The output of the storage device 44 is sent to the AND circuit 45 together with the signal P13 from the sequencer 14S. AND
The output signal of circuit 45 is applied to one input of OR circuit 46. Another input of the OR circuit 46 is a control circuit having a storage element 47 for storing another number (for example, the number 2 shown in FIG. 3) to be subtracted from the address stored in the register 31. They are sent with the net as their companion. The output signal of element 47 is applied to one input of AND circuit 48. An OR circuit 49 is provided,
The output signal is applied to the other input of AND circuit 48. The input signals to the OR circuit 49 are sent from the sequencer 14S, and are shown as two signals P 6 and P 11 in the figure. AND circuit 48
The output signal is applied to the OR circuit 46 as another input signal. The output of OR circuit 46 is sent to the preset input of subtraction register 50.
In that case, the subtraction register 50 stores the number stored in device 44 or device 47 for further processing. The output signal of the subtraction register 50 is sent to the subtracter 51
sent to. The other input of subtractor 51 comes from the output of address register 31.
The address value sent from address register 31 is stored in subtraction register 50, where it is subtracted and applied to and stored in difference register 52.
The signal generated by the difference register 52 is sent to the AND circuit 53
sent to. Another input signal to the AND circuit 53 is sent from the OR circuit 54. OR circuit 54
The two signals applied to the center bar locator sequencer 14S come from the center bar locator sequencer 14S and are shown as two signals P8 and P15 . The output signal of AND circuit 53 is applied as another input signal to OR circuit 43, thereby presetting the address for storage address register 31. That is, 29-26=3. Incremental input of storage address register 31 is OR
It is controlled by the output signal of circuit 55. The OR
Circuit 55 is center bar locator sequencer 1
It receives signals S 1 , S 2 and S 3 from the address register 31 and sequentially increments the address stored in the address register 31. The center bar ratio detector 14D is shown on the left side of FIG. Ratio detector 14D receives a signal from ratio calculator 15 representing the logarithm of the desired ratio. This logarithmic signal is applied to and stored in the log ratio register 56. The log ratio value is used to address a conversion table stored in read-only storage. The storage device is shown in the figure as device 57, as well as ROM E. The device 57 stores table data and
Convert calculated log ratios to numbers in the decimal or other convenient number system. In order to facilitate understanding of the invention, it will be assumed here that the conversion is performed in a decimal number system.
Thus, the log ratio signal applied to ROM E, device 57, and representing the logarithm of the ratio, is converted into a numerical signal representing the calculated ratio. The numerical signal representing the ratio read from the read-only storage device ROM E57 is sent to a pair of AND circuits 58,59. The output signal of the device 57 is sent to an AND circuit 59
is applied to the AND circuit 58 as its one input via the NOT circuit 60, while it is applied directly to the AND circuit 58 in an unmodified state. Another input signal to each of these two AND circuits 58, 59 is the center bar locator sequencer 14.
The same signal P 2 sent from S. two ANDs
The output signals of circuits 58 and 59 are both sent to a cycle counter 61 for controlling it. However, although the output signal of the AND circuit 58 is sent directly to the increment input section of the cycle counter 61, the output signal of the AND circuit 59 is once applied as an input to the OR circuit 62.
The output of OR circuit 62 is applied directly to the reset input of cycle counter 61. Another input signal applied to the OR circuit 62 is the AND circuit 63
It is sent from. AND circuit 63 is controlled via an OR circuit 64 responsive to signals P 1 and P 8 generated from sequencer 14S. Furthermore,
An odd/even bit signal generated from the retry counter device 14C is applied as another input to the AND circuit 63. The output of cycle counter 61 is sent to cycle counter decoding circuitry 65 where the decimal value of counter 61's count is signaled. The output signal of network 65 is applied as one input to AND circuit 66 along with signal P 4 from sequencer 14S. The output signal of the AND circuit 66 is output to the sequencer 1 as shown in the figure.
Applied directly to the P9 preset position of 4S. The retry counter 14C includes a retry binary counter 67. The binary counter 67 counts the number of attempts the system has made to locate the center bar pattern in memory and store the results. Retry counter 67 is reset at its input R by signal M 5 from converter 12. The increment input of counter 67 is responsive to signal P3 from sequencer 14S. The odd-even signal of the counter 67 is sent to the AND gate 63,
Cycle counter 61 is controlled as described above. The count stored in the retry counter 67 is sent directly to a retry decoding circuit 68 to decode the output signal generated by the counter 67 in response to the counting of the counter 67. Circuit 68 is also adapted to respond to signal P5 from sequencer 14S. After 10 attempts have been made to locate the center bar pattern within storage 13, circuit 68
That is, the configuration and definition are such that reading is terminated after the 10th trial. Therefore circuit 6
The output signal from 8 is shown as such.
A choice must be made regarding this value, since even a valid symbol may exceed the capacity of the storage device. When considering the search for the position of the standard center bar pattern in the storage device 13, first assume the following. That is, when reading the label 10, no displacement occurs before the guard bar given to the UPC symbol on the label 10, and therefore the central bar pattern is stored in the storage device 13 at addresses 27-31. Assume that The first storage location φ is always 1
The measurements of one module, which is a book bar, are included, so all even addresses in the storage 13 store bar measurements. This storage configuration is illustrated in Figure 3A, in which the center bar pattern encoding modules are designated A, B, C, and D with decoding ratios determining valid center bar patterns. ing. As such, the search for the location of the center bar pattern in storage 13 always begins at address 27. It is of course understandable that in the unlikely event that irrelevant data is stored in the storage device 13 during scanning, the storage location will shift and the initial attempt to specify the location of the pattern will therefore result in failure. be. This starting address is device 37
and examines the data stored at address locations 27-31 to determine if the known center bar width ratio is stored data that can clearly specify the location of the center bar pattern in storage device 13. Decide whether you are satisfied or not. The two ratios (A+B/C+D) and (B+
C/D+E) are both 1, a valid bar pattern is specified. Table Sequence Function P 1 Loads the storage address register 31 with the starting address. Load the S 1 A register and increment the storage address register 31. Load the S 2 B register and increment the storage address register 31. Load the S 3 C register and increment the storage address register 31. S 4 Load into D register. S 5 Select the contents of the A register and press B
Add to register contents. Load S 6 log(A+B) into E register. S 7 Select the contents of the C register and press D.
Add to register contents. Load S 8 log(C+D) into F register. S 9 Subtract the contents of the F register from the contents of the E register. If the result of P 2 log is 1, increment the cycle counter 61 and
If not, the counter 61 is reset. Increment P3 retry counter 67. When P 4 cycle counter 61 signals 2, jump to sequence P 9 . When the P5 retry counter 67 signals 10, the reading is aborted. P 6 Load the number 2 into the subtraction register 50. P 7 Subtract the contents of the subtraction register 50 from the contents of the storage address register 31. Load the contents of P8 difference register 52 into storage address register 31. If retry counter 67 signals an "even" bit, cycle counter 61 is reset. Skip to step S1 . P 9 Select the contents of the B register and press C.
Add to register contents. Store P 10 log(B+C) in E register. P 11 Select the contents of the D register and press E.
Add to register contents. Load the number 2 into the subtraction register 50. Load P 12 log(D+E) into register F. The contents of the subtraction register 50 are subtracted from the contents of the storage address register 31. P 13 Subtract the contents of the F register from the contents of the E register. Load the subtraction register 50 with the number 26. P14 Load into modified value register 100 (see Figure 5). The contents of the subtraction register 50 are subtracted from the contents of the storage address register 31. Store the contents of P15 difference register 52 in storage address register 31. Jump to decoder 16. The table shows a step-by-step sequence for locating the center bar pattern within the storage device, which will now be described. The basic sequence of events that occurs when searching for the correct address of stored center bar data in storage 13 is that, starting at storage address 27, the values for modules A, B, C and D are first determined at step P1 . It is read from the storage device 13. The first ratio (A+B/C+D) is calculated by the ratio calculator 15 and further processed by the central bar ratio detector 14D. This ratio is 1
If so, cycle counter 61 is incremented at time P2 . At time P 3 ,
A retry counter 67 is incremented to record the completion of the decryption attempt. In the next sequence, a new set of data stored in memory 13 starting from address 28 and ending at address 31, representing modules A, B, C and D, is read from memory 13. This is achieved by first modifying the starting address sequentially via steps P 6 to P 8 , then retrieving the data and then calculating the ratio via steps P 9 to P 13 . Ru.
【表】
表では、レジスタ31の記憶アドレスと表
が関連付けられていると同時に、中央棒線パター
ンが第1試行で記憶装置内に位置指定される際の
表に詳述されている操作順序中のサイクル・カ
ウンタ61及び再試行カウンタ67のカウントが
示されている。
この新データに対しては、比(B+C/D+E)の計
算
が行われ、この比が1であると決定した場合は、
サイクル・カウンタ61が増分される。その上、
再試行カウンタ67が再び増分される。この場
合、サイクル・カウンタ61はカウント2を信号
しなければならず、また解読回路網65は10進数
値2を信号する。この状態は時間P4で確認され、
その結果ANDゲート66から発生された信号に
よつてシークエンサーの位置がP9にプリセツトさ
れる。時間P9では、後に述べるように、記録用な
いし印刷用修正因子の計算が行われる。
中央棒線ロケータ14の作動に関する上記説明
では、中央棒線パターンを最初に示したアドレス
位置27―31に指定するのに2回の試行しか必要で
はない、と仮定している。該中央棒線位置指定に
おける上記2度の試行のいずれかにおいて比1が
算出されなかつた場合には、値が1である2つの
連続比が検知されるまで探索を繰り返さなければ
ならない。この試行中は、各試行ごとに再試行カ
ウンタ67は増分され、試行数が10に達すると、
第3図に示されているように、妥当なラベルが記
憶装置13の容量を越えたものと見做され、従つ
て読取りは打切られる。更に、サイクル・カウン
タ61が2まで数え上げられず、而も、再試行カ
ウンタ67がANDゲート63に対して「偶数」
出力信号を発生した場合には、サイクル・カウン
タ61は時間P8においてOR回路62からの信号
によつてリセツトされる、ことに留意すべきであ
る。これによつて次のことが確認される。つま
り、値1の2つの連続比は常に空白部から始まつ
ており、これが妥当な中央棒線パターンを検知す
るための条件を満足させる1つの必要条件であ
る。
この時点では、表に示されている中央棒線情
報の記憶位置を指定する中央棒線ロケータ14の
詳細なステツプ・バイ・ステツプ操作において
は、ステツプS1―S9並びにP9―P13で示されてい
る。諸ステツプは比計算機15内で処理されてい
ることを理解しておく必要がある。これらのステ
ツプでは、モジユールA,B,C,D及びEを内
蔵している記憶装置13のアドレス位置に関する
情報が得られると同時に、比検知器14Dの対数
レジスタ56に印加される対数比信号の計算が行
われる。これらの順次操作については比計算機1
5の作動と共に説明する。
表には、中央棒線パターンが最初の試行にお
いて位置指定される際の中央棒線位置指定手続中
のサイクル・カウンタ61及び再試行カウンタ6
7のカウントが記録されている。この表は、表
に示されているシークエンサーの詳細な操作に対
応している。表に示されているステツプ・バ
イ・ステツプ順序を辿つて行くと、表に示され
ている操作と表に示されている値の間に対応関
係があることが判る。表の順序P6では、減数レ
ジスタ50は装置47からの10進数値2をロード
されることが判る。この値は、最後の情報が得ら
れる記憶位置のアドレスから減算される。記憶装
置13からA,B,C、及びDの値を得るステツ
プを辿つて行くと、順序時間S4では問合せられた
最終記憶位置は数30であつたことを想起された
い。従つて、順序時間P8で数2が記憶位置30から
引かれた場合、識別される記憶アドレスは28で、
これは表に示されているものと対応している。
次に、アドレス28は、中央棒線パターンを識別す
る第1試行の第2サイクルの開始アドレスを識別
し、情報はアドレス28―31から得られる。この情
報は、表の順序P8,S1―S3に対応する表のス
テツプP9乃至P12の順序を介して得られる。この
間隔後、順序P13では、装置44に記憶されてい
る数26は減数レジスタ50に送り込まれる。順序
P14では、数26は記憶装置が指示している記憶ア
ドレス、即ち29から減算され、その結果、順序
P14では、レジスタ31に記憶される新記憶アド
レスは記憶位置3を示すことになる。なお、表
を参照されたい。もちろん、この数3は、解読さ
れる第1文字のモジユールAが存在している記憶
位置である。この記憶位置が順序P15で識別され
た後は、表から判るように、本システムの制御
は文字解読器16に移される。文字解読器16は
記憶位置3から記憶されたデータを解読し始め、
順次前進して行く。
中央棒線比読取専用記憶装置57の内容は第3
B図に示されている通りであることに注目された
い。このROM Eに記憶されている比の対数は、
マイナス1、0、あるいはプラス1の値を取るこ
とができるから、如何なる量子化エラーをも考慮
に入れることができる。このROM Eを使用し
て、これに印加された対数比信号を比の10進数に
変換する。第3A図に定義並びに記録されている
ように、結果として構成される比の出力信号は、
比1、あるいは1以外の比を表わす。
記憶装置における中央棒線パターン探索につい
ての理解を完全なものにするために、表、及
びが挿入されていて、これによつて、中央棒線
パターンが第1試行に際して記憶装置13内に指
定されていなかつた場合のレジスタ31の記憶ア
ドレスとサイクル・カウンタ61及び再試行カウ
ンタ67のカウントを関連付けている。[Table] In the table, the table is associated with the storage address of register 31, and at the same time during the order of operations detailed in the table when the central bar pattern is located in storage on the first try. The counts of cycle counter 61 and retry counter 67 are shown. For this new data, the ratio (B+C/D+E) is calculated and if this ratio is determined to be 1, then
Cycle counter 61 is incremented. On top of that,
Retry counter 67 is again incremented. In this case, cycle counter 61 should signal a count of two and decoding circuitry 65 should signal a decimal value of two. This condition is confirmed at time P 4 ,
The resulting signal from AND gate 66 presets the sequencer position to P9 . At time P9 , the recording or printing correction factors are calculated, as will be described later. The above discussion of the operation of center bar locator 14 assumes that only two attempts are required to locate the center bar pattern to the first indicated address location 27-31. If a ratio of 1 is not calculated in either of the two trials of specifying the center bar position, the search must be repeated until two consecutive ratios with a value of 1 are detected. During this trial, the retry counter 67 is incremented for each trial, and when the number of trials reaches 10,
As shown in FIG. 3, a valid label is deemed to exceed the capacity of storage device 13 and the read is therefore aborted. Furthermore, cycle counter 61 does not count up to 2, and retry counter 67 does not count to ``even'' for AND gate 63.
It should be noted that when generating an output signal, cycle counter 61 is reset by the signal from OR circuit 62 at time P8 . This confirms the following: That is, two consecutive ratios of value 1 always start from a blank space, and this is one necessary condition to satisfy the condition for detecting a valid center bar pattern. At this point, the detailed step-by-step operation of the center bar locator 14, which specifies the storage location of the center bar information shown in the table, includes steps S 1 - S 9 and P 9 - P 13 . It is shown. It should be understood that the steps are processed within the ratio calculator 15. These steps provide information regarding the address locations of the storage device 13 containing modules A, B, C, D and E, as well as information about the log ratio signal applied to the log register 56 of the ratio detector 14D. Calculations are made. Ratio Calculator 1 for these sequential operations
This will be explained together with the operation of step 5. The table shows the cycle counter 61 and retry counter 6 during the center bar location procedure when the center bar pattern is located on the first try.
A count of 7 is recorded. This table corresponds to the detailed operation of the sequencer shown in the table. As we follow the step-by-step sequence shown in the table, we see that there is a correspondence between the operations shown in the table and the values shown in the table. It can be seen that in order P 6 of the table, the subtraction register 50 is loaded with the decimal value 2 from the device 47. This value is subtracted from the address of the storage location where the last information is obtained. Following the steps to obtain the values of A, B, C, and D from storage 13, it will be recalled that at sequence time S4 , the final storage location queried was number 30. Therefore, if the number 2 is subtracted from memory location 30 at ordinal time P 8 , the memory address identified is 28;
This corresponds to what is shown in the table.
Address 28 then identifies the starting address of the second cycle of the first attempt to identify the center bar pattern, information obtained from addresses 28-31. This information is obtained via the sequence of table steps P 9 to P 12 corresponding to the table sequence P 8 , S 1 -S 3 . After this interval, in sequence P 13 , the number 26 stored in device 44 is fed into subtraction register 50 . order
In P 14 , the number 26 is subtracted from the storage address to which the storage device is pointing, i.e. 29, so that the order
At P 14 , the new storage address stored in register 31 will point to storage location 3. Please refer to the table. Of course, this number 3 is the storage location where the first character module A to be decoded is located. After this storage location is identified in sequence P 15 , control of the system is transferred to the character decoder 16, as can be seen from the table. The character decoder 16 begins decoding the stored data from memory location 3;
Move forward step by step. The contents of the center bar ratio read-only storage device 57 are
Note that this is as shown in Figure B. The logarithm of the ratio stored in this ROM E is
Since it can take values of minus 1, 0, or plus 1, any quantization error can be taken into account. This ROM E is used to convert the log ratio signal applied to it into a decimal number of ratios. As defined and recorded in FIG. 3A, the resulting ratio output signal is:
Represents a ratio of 1 or a ratio other than 1. To complete the understanding of the search for the center bar pattern in the memory, the tables and are inserted, whereby the center bar pattern is specified in the memory 13 on the first try. The storage address of the register 31 and the counts of the cycle counter 61 and retry counter 67 are associated with each other.
【表】
表には、解読失敗後の第1再試行のレジスタ
31の値が記載されている。この新しい試行は記
憶装置内のアドレス位置29から始まり、表に示
されているのと同じ順序に従つて行われている。
「再試行」手順の開始時におけるカウンタ61及
び67のカウントは、双方共2である。時間P1で
は、ANDゲート63に信号が印加される結果、
サイクル・カウンタはゼロにリセツトされる。こ
のP1信号によつて、ORゲート64の出力信号は
ANDゲート63に印加され、また再試行カウン
タ67からは偶数ビツト(2)信号が発生する。この
場合、操作の順序は、表の順次操作に基ずいて
アドレス位置29乃至32から検索されたデータから
始まる。サイクル・カウンタ61は、時間P2では
第1探索サイクル中に1に数え上げられ、また同
じ時間P2の第2サイクル中にもう一度数え上げら
れる。第1サイクル中の時間P3では、再試行カウ
ンタ67は3に数え上げられ、第2サイクル中の
時間P3では再び数え上げられて4となる。既述の
ように、時間P12では、アドレス・レジスタ31
の位置から2が引かれ、時間P13後は、26が引か
れた。従つて、アドレス・レジスタ31は、時間
P14で次の解読試行を開始させるアドレス5を示
している。[Table] The table describes the value of the register 31 of the first retry after decoding failure. This new trial begins at address location 29 in memory and follows the same order as shown in the table.
At the beginning of the "retry" procedure, counters 61 and 67 both count two. At time P 1 , a signal is applied to AND gate 63 resulting in
The cycle counter is reset to zero. By this P1 signal, the output signal of the OR gate 64 is
An even bit (2) signal is applied to AND gate 63 and from retry counter 67. In this case, the order of operations begins with data retrieved from address locations 29-32 based on sequential operations of the table. Cycle counter 61 counts up to one during the first search cycle at time P 2 and again during the second cycle at the same time P 2 . At time P 3 during the first cycle, retry counter 67 increments to three and again increments to four at time P 3 during the second cycle. As mentioned above, at time P 12 , address register 31
2 is subtracted from the position, and after time P 13 , 26 is subtracted. Therefore, the address register 31
P 14 indicates address 5 to start the next decryption attempt.
【表】
|
P8 29 0 2
表には、第1試行中、第1サイクルでは1で
はない中央棒線パターンが生じ、第2サイクルで
1であるパターンが生じた場合のレジスタ31の
アドレス値が示されている。従つて、この表は、
前述の例外はあるものの、表に対応している。
サイクル・カウンタ61は新試行の第2サイクル
中時間P2で1に数え上げられるだけである。表
を参照すれば、再試行カウンタ67がANDゲー
ト63に対して偶数ビツト信号を発生する場合
は、時間P8でサイクル・カウンタ61がリセツト
されることが判る。これはこのような条件下では
真であるから、カウンタ61は時間P8ではゼロに
リセツトされる。記憶装置内にはまだ妥当な中央
棒線パターンが指定されていないから、順序はS1
から始まる。表を参照されたい。今や、妥当な
中央棒線パターンの探索は記憶アドレス29から始
まり、再試行カウンタは2である。[Table] |
P8 29 0 2
The table shows the address value of the register 31 when, during the first trial, a center bar pattern that is not 1 occurs in the first cycle and a pattern that is 1 in the second cycle. Therefore, this table is
With the exceptions mentioned above, it corresponds to the table.
Cycle counter 61 only increments to one at time P2 during the second cycle of the new trial. Referring to the table, it can be seen that if retry counter 67 generates an even bit signal to AND gate 63, cycle counter 61 is reset at time P8 . Since this is true under these conditions, counter 61 is reset to zero at time P8 . Since no valid center bar pattern has yet been specified in storage, the order is S 1
start from. Please refer to the table. The search for a valid center bar pattern now begins at storage address 29 and the retry counter is two.
【表】
|
P8 29 0 2
表には、サイクルの関係が逆になつているこ
とを除けば、表のアドレス・レジスタの値と同
じ値が示されている。つまり、表には、妥当な
中央棒線パターンの位置指定をするための試行が
第1サイクルでは1となり、第2サイクルでは1
とはならないような場合のアドレス位置指定が示
されている。このように仮定された条件中は、サ
イクル・カウンタ61は時間P2では第1サイクル
中においてのみ数え上げられる。表に示されて
いるように、時間P2の第2サイクル中では、サイ
クル・カウンタはゼロにリセツトされる。この試
行が完了した後では、探索は記憶位置29から繰り
返され、再試行カウンタは2を記録する。
さて再び表について説明すると、時間P4で、
既に妥当中央棒線パターンが記憶位置に指定され
ている場合には、順序は時間P9にスキツプするこ
とが判る。時間P9では、記録用または印刷用許容
差修正因字の計算が始まる。時間P4ではANDゲ
ート66からの出力信号がシークエンサー14S
に印加されるから、シークエンサー14SはP9に
プリセツトされる。この信号の発生原因は、解読
回路網65が時間P4で読出される「2」信号を
ANDゲート66に印加するためである。
次に、時間P9では、妥当な探索を生じる位置指
定に基ずくステツプS1で示されたアドレス位置に
記憶された幅測定値に基ずいて、修正計算が始ま
る。これが第1試行で発生する場合は、例えば、
アドレス位置は27である。この計算は、モジユー
ルB,C及びDに対してステツプP10乃至P12の間
中続けられる。この計算は比計算機15で行われ
るようになつており、次にこれに関して説明す
る。結果として算出される文字修正値は、後述の
解読手順中に使用される文字解読器16の修正値
レジスタ100に記憶される。
さて、第4図に関して、比計算機15の一般機
構について説明する。比計算機15は中央棒線ロ
ケータ14及び文字解読器16の双方と連動して
使用される。比計算機15は記憶装置13から読
出されるデータに基ずいて作動し、所要の比計算
を実施して中央棒線ロケータ14か文字解読器1
6のいずれかで使用される所要比の対数である出
力信号を発生する。記憶装置13から読出され且
つ比計算機15で処理されるデータは、ある文字
のモジユールA,B,C及びDに対する被測定値
を表わす幅測定値である。このA,B,C及びD
データは、記憶装置13から読出されて比計算機
15内の個別の記憶レジスタA,B,C及びDに
記憶される。レジスタに記憶されるデータ・モジ
ユールは、レジスタから読出されるデータの形で
識別される。従つて、Aモジユール測定値はAレ
ジスタに記憶され、Bモジユール測定値はBレジ
スタに記憶される。同様に、Cモジユール測定値
はCレジスタに、Dモジユール測定値はDレジス
タに記憶される。レジスタA,B,C及びDの
各々は、それぞれAND回路70,71,72及
び73で示されている個別のAND回路で制御さ
れる入力部を有しており、それらは第4図では左
か右に順に配列されている。記憶装置13からの
データは、並列回路関係でAND回路70乃至7
3の各々に結合される。つまり、これらのAND
回路の各々の1つの入力として印加される。
AND回路70は、シークエンサー14Sからの
信号S1によつて起動されてAモジユール測定値を
記憶する。同様に、信号S2,S3及びS4は、それぞ
れ各ANDゲート71,72及び73を起動す
る。
レジスタA―Dの出力回路は、1つまたは2つ
のANDゲートによつて制御される。Aレジスタ
の出力回路は、1つの2入力式ANDゲート74
で制御され、Bレジスタの出力回路は2つの入力
式ANDゲート75及び76で制御される。同様
に、Cレジスタの出力は1つのANDゲート77
で制御され、Dレジスタは一対のANDゲート7
8及び79で制御される。Aレジスタに接続する
ANDゲート74の第2入力は、ORゲート80か
ら発生される出力信号である。ORゲート80は
入力信号S5,S11,S17A及びP9に応答する。これ
らの信号は、Aレジスタに記憶されていて且つ更
に比計算機15で処理されるデータを読出すため
の出力信号をOR回路80から発生させる。同様
に、ORゲート81は、Bレジスタと連動する
ANDゲート75の入力信号の一方を制御する。
ORゲート81は順次信号S13,S19B及びP11に応
答する。Bレジスタの出力信号は、並列回路関係
でANDゲート75及び76の双方にその1つの
入力の形で印加される。ANDゲート76の別の
入力は、シークエンサー14Sからの信号S5であ
る。ORゲート82はANDゲート77に対してそ
の入力信号の一方を提供して、Cレジスタから情
報の読出しを行わせる。ORゲート82は、シー
クエンサー信号S7,S13,S17C及びP9に応答す
る。シークエンサー信号S7はDレジスタのデータ
転送をANDゲート78を介して制御する。Dレ
ジスタ・データは、ANDゲート78及び79の
双方に並列に印加される。OR回路83は、AND
ゲート79の第2入力の入力信号を制御する。
ORゲート83はシークエンサー信号S11,S19D
及びP11に応答する。記録済み記号を解読するの
に多数回の試行が必要であるから、レジスタA,
B,C及びD(並びに記憶装置13)に記憶され
ているデータは破壊読出しは行われないようにな
つている。これらのレジスタに記憶されている生
測定データは、比計算機15内での処理を目的と
してのみ読出される。レジスタA,B,C及びD
に記憶されているデータは、2入力式2進加算器
84に加えられる。加算器84の入力の一方は
ORゲート85で制御され、他方はORゲート86
で制御される。ORゲート85は、AND回路7
4,75及び78からの出力信号に応答する。
ORゲート86は、AND回路76,77及び79
の出力信号に応答する。加算器84の出力信号
は、これに印加された2つのモジユールの幅測定
値の線形和、つまりORゲート85及び86によ
つてこれに印加された信号の和を表わしている。
加算器84の出力信号を使用して、第4図で
ROM Aで示されている読取専用記憶装置に記憶
されているテーブルをアドレスする。ROM Aに
記憶されているデータは変換テーブルであつて、
線形和信号を2進コード化10進数、即ち和信号を
当該和信号の対数値である2進コード化10進数に
変換する。該対数の底を選択する方法は、本願と
同じ譲受人に譲渡されたアメリカ合衆国特許出願
第638056号(昭和51年特許願第147050号)に開示
されている。上記出願の内容は参照として本明細
書中に組込まれており、また、本発明を理解する
上で必要とあれば、上記アメリカ合衆国特許出願
第638056号の開示内容に頼ることも可能である。
さて、上記和信号は、ROM Aの読出しを行うた
めのアドレス信号として使用される。ROM Aか
ら読出された信号は、ROM Aからの2進コード
化出力信号を受信するように接続されている対数
レジスタ87に記憶される。レジスタ87は8ビ
ツト容量を有しており、第4図では、各各が4ビ
ツトを有する左半体及び右半体から成るように示
されている。該レジスタの右半体は2進ビツト20
乃至23を記憶し、一方左半体は2進ビツト24乃至
27を記憶する。[Table] |
P8 29 0 2
The table shows the same values as the address register values in the table, except that the cycle relationships are reversed. That is, the table shows that the number of attempts to locate a valid center bar pattern is 1 in the first cycle and 1 in the second cycle.
The address position specification is shown in cases where this is not the case. During these assumed conditions, cycle counter 61 counts only during the first cycle at time P2 . As shown in the table, during the second cycle at time P2 , the cycle counter is reset to zero. After this attempt is complete, the search is repeated from memory location 29 and the retry counter records two. Now, explaining the table again, at time P 4 ,
It will be seen that if a valid center bar pattern has already been assigned to the storage location, the sequence will skip to time P9 . At time P 9 , the calculation of the recording or printing tolerance correction factor begins. At time P 4 , the output signal from the AND gate 66 is
, the sequencer 14S is preset to P9 . The reason for the generation of this signal is that the decoding circuitry 65 receives the "2" signal read out at time P4 .
This is to apply it to the AND gate 66. Then, at time P9 , a correction calculation begins based on the width measurement stored at the address location indicated in step S1 based on the location designation that yields a valid search. If this happens on the first try, e.g.
Address position is 27. This calculation continues for modules B, C and D during steps P10 to P12 . This calculation is performed by a ratio calculator 15, which will be explained next. The resulting character modification value is stored in a modification value register 100 of the character decoder 16 for use during the decoding procedure described below. Now, with reference to FIG. 4, the general mechanism of the ratio calculator 15 will be described. Ratio calculator 15 is used in conjunction with both center bar locator 14 and character decoder 16. The ratio calculator 15 operates based on data read from the storage device 13 and performs the required ratio calculations to either the center bar locator 14 or the character decoder 1.
6 to produce an output signal that is the logarithm of the desired ratio used in either. The data read from storage 13 and processed by ratio calculator 15 are width measurements representing the measured values for modules A, B, C and D of a character. This A, B, C and D
Data is read from storage 13 and stored in separate storage registers A, B, C and D within ratio calculator 15. Data modules stored in registers are identified in the form of data read from the registers. Therefore, the A module measurements are stored in the A register and the B module measurements are stored in the B register. Similarly, C module measurements are stored in the C register and D module measurements are stored in the D register. Each of registers A, B, C and D has an input controlled by a separate AND circuit, shown as AND circuits 70, 71, 72 and 73, respectively, which are shown on the left in FIG. or arranged in order on the right. Data from the storage device 13 is sent to AND circuits 70 to 7 in a parallel circuit relationship.
3. That is, these AND
applied as one input to each of the circuits.
AND circuit 70 is activated by signal S1 from sequencer 14S to store the A module measurement value. Similarly, signals S 2 , S 3 and S 4 activate each AND gate 71, 72 and 73, respectively. The output circuits of registers AD are controlled by one or two AND gates. The output circuit of the A register is one two-input AND gate 74.
The output circuit of the B register is controlled by two input type AND gates 75 and 76. Similarly, the output of the C register is one AND gate 77
The D register is controlled by a pair of AND gates 7
8 and 79. Connect to A register
The second input of AND gate 74 is the output signal generated from OR gate 80. OR gate 80 is responsive to input signals S5 , S11 , S17A and P9 . These signals generate an output signal from OR circuit 80 for reading the data stored in the A register and further processed by ratio calculator 15. Similarly, the OR gate 81 works with the B register.
One of the input signals of AND gate 75 is controlled.
OR gate 81 is responsive to signals S 13 , S 19 B and P 11 in sequence. The output signal of the B register is applied as one input to both AND gates 75 and 76 in a parallel circuit relationship. Another input to AND gate 76 is signal S5 from sequencer 14S. OR gate 82 provides one of its input signals to AND gate 77 to cause it to read information from the C register. OR gate 82 is responsive to sequencer signals S 7 , S 13 , S 17C and P 9 . Sequencer signal S 7 controls the data transfer of the D register via AND gate 78 . D register data is applied to both AND gates 78 and 79 in parallel. The OR circuit 83 is AND
The input signal at the second input of gate 79 is controlled.
OR gate 83 receives sequencer signals S 11 and S 19D
and in response to P 11 . Since it takes many tries to decipher the recorded symbol, register A,
The data stored in B, C, and D (as well as the storage device 13) is designed not to be read destructively. The raw measurement data stored in these registers is read only for the purpose of processing within the ratio calculator 15. Registers A, B, C and D
The data stored in is applied to a two-input binary adder 84. One of the inputs of the adder 84 is
The other is controlled by OR gate 85, and the other is controlled by OR gate 86.
controlled by OR gate 85 is AND circuit 7
4, 75 and 78.
OR gate 86 includes AND circuits 76, 77 and 79
responds to the output signal of The output signal of summer 84 represents the linear sum of the width measurements of the two modules applied thereto, ie the sum of the signals applied thereto by OR gates 85 and 86. Using the output signal of adder 84, in FIG.
Addresses a table stored in read-only storage designated ROM A. The data stored in ROM A is a conversion table,
The linear sum signal is converted into a binary coded decimal number, that is, the sum signal is converted into a binary coded decimal number which is the logarithm value of the sum signal. A method for selecting the base of the logarithm is disclosed in commonly assigned United States patent application Ser. No. 638,056 (application no. 147,050). The content of the above-mentioned application is incorporated herein by reference, and the disclosure of the above-mentioned US patent application Ser. No. 638,056 may be relied upon as necessary for understanding the present invention.
Now, the above sum signal is used as an address signal for reading ROM A. The signal read from ROM A is stored in a logarithm register 87 which is connected to receive the binary encoded output signal from ROM A. Register 87 has an 8-bit capacity and is shown in FIG. 4 as consisting of a left half and a right half each having 4 bits. The right half of the register is binary bit 2 0
2 to 3 , while the left half stores binary bits 2 to 4 .
2 Memorize 7 .
【表】
カウンタ28に対して選択された最小線形値が
7であつたことを想起されたい。従つて、表で
は7より下の値は考慮に入れる必要がない。表
に示された対数値はゼロから任意に始まり、値15
に達した後ではゼロから再び始まる。修正因子を
計算する場合は、比A/BまたはC/Dは、
(A+φ)/B+φ及び(C+φ)/D+φの形で計算
される。
対数レジスタ87の2つの部分の出力信号は、
一対のANDゲート88及び89を介して更に処
理できるように制御される。レジスタ87の左側
部の出力信号はANDゲート88にその1入力と
して加えられ、右側部の出力信号はANDゲート
89にその1入力の形で加えられる。ANDゲー
ト88及び89に加えられる入力信号から成る4
つのビツトは表に記録されている10進数値を表
わす。ORゲート90はANDゲート88のもう1
つの入力を制御する。このゲート90は、S6,
S8,S12,S14,S18及びS20で図示されているシー
クエンサー14Sからの信号に応答する。同様
に、ORゲート91はANDゲート89のもう1つ
の入力を制御する。このゲート91はシークエン
サー信号P10及びP12に応答する。ANDゲート88
及び89の出力信号は、これらに接続されている
ORゲート92によつて制御される。ORゲート9
2の出力信号は、並列回路関係にある一対の
ANDゲート93及び94に加えられる。ANDゲ
ート93のもう1つの入力はOR回路95によつ
て制御される。このOR回路95はシークエンサ
ー信号S6,S12,S18及びP10に応答する。AND回
路94のもう1つの入力はORゲート96によつ
て制御される。該ORゲート96は、信号S8,
S14,S20及びP12に応答する。AND回路93及び
94は、それぞれ独立した対数レジスタE及びF
に送り込まれるデータを制御する。レジスタE及
びFは、それぞれ、4ビツト・レジスタであつ
て、例えば和A+Bの対数のような被測定幅の和
の対数の値を記憶する。レジスタE及びFは、そ
れぞれ自からの出力回路を有していて、その内容
を減算器97に転送できるように接続されてい
る。減算器97はレジスタE及びFに記憶されて
いる2つの和の対数の減算を行い、即ち、レジス
タFの値をレジスタEの値から引き、次に所要の
比信号の対数である出力信号を発生する。減算器
97は、ORゲート98の制御下で使用可能状態
となる。このORゲート98はシークエンサー信
号S9,S15,S21及びP13に応答する。減算器97
の出力信号は、比計算機15の使用に応じて中央
棒線ロケータ14あるいは文字解読器16に印加
される。
さて、比計算機15の上記構造を念頭に置いた
上で、その操作原理を更に説明する。モジユール
A,B,C及びDを表わす記憶装置13からの情
報は、前記表に示されている順次信号S1,S2,
S3及びS4の発生に応答して対応のモジユール・レ
ジスタに送り込まれる。一且、A,B,C及びD
データの全てがレジスタに送り込まれると、順序
作業は表に示されているように連続的に実施さ
れるから、Aデータ及びBデータが加算器84に
加えられてこれらの被測定幅の線形和が得られ
る。このような結果が得られるのは、順序信号S5
が発生してORゲート80にその1入力の形で印
加され、ANDゲート74及びORゲート85を介
してAレジスタの読出しが実施されるためであ
る。この同じ順序信号S5によつてBレジスタ・デ
ータがANDゲート76及びORゲート86を介し
て加算器84に転送される。加算器84から得ら
れる線形和はROM Aをアドレスして該和の対数
値を読出す。この和はレジスタ87に記憶され
る。表に示されているように、このデータは順
序信号S6の発生と同時にEレジスタへと転送され
る。即ち、信号S6はANDゲート88の入力信号
となつてこれを起動し、該データをレジスタ87
の左半体からORゲート92及びANDゲート93
を介してEレジスタに転送させる。ANDゲート
93は、ORゲート92の出力信号並びにORゲー
ト95の出力信号に応答し、またORゲート95
はその入力部での信号S6の受信に応答して出力信
号を発生する、ということに留意されたい。
表に示されている次の順序は信号S7の発生で
あり、この信号はORゲート82、ANDゲート7
7及びORゲート86を介して働き、「C」データ
を加算器84に加える。同時に、信号S7はまたD
データをDレジスタからAND回路78及びOR回
路86を介して加算器84のもう1つの入力に転
送する。同様に、このデータは加算器84から
ROM A及び対数レジスタ87を介してFレジス
タに転送される。順序信号S8は、表に示されて
いるように、C及びDデータの和の対数値を
ANDゲート88、ORゲート92及びANDゲート
94を介して転送する。この結果が生じるのは、
信号S8がORゲート90及び96に印加されて、
ANDゲート88及び94を起動するためであ
る。このようにして、順序操作内の時間S9では、
減算器97が起動されてFレジスタ内のデータを
Eレジスタのデータから引き、所要の対数比信号
を発生する。
さて、第5図に関して、文字解読器16の一般
機構について説明する。文字解読器16は、既述
のように、比計算機15と連動するようになつて
おり、該比計算機から計算済み対数比であつて且
つ解読器16用に対数比レジスタ101に記憶さ
れている出力信号を受信する。ここで、中央棒線
パターンを位置指定する際の比計算機15の作業
中、印刷エラー修正値もまた計算されて該文字解
読器に転送されたことを想起されたい。この値は
解読器16用の修正値レジスタ100に記憶され
ているものと仮定する。修正値レジスタ100
は、ANDゲート102に制御されてその中に加
えられた修正値を記憶している。このANDゲー
トはレジスタ100の入力を制御すると同時に、
その入力が対数比レジスタ101の出力並びに第
3図のシークエンサー14Sからの信号P14に接
続している。
表
順 序 機 能
S1 Aレジスタを記憶し、レジスタ31の
記憶アドレスを増分する。
S2 Bレジスタを記憶し、レジスタ31の
記憶アドレスを増分する。
S3 Cレジスタを記憶し、レジスタ31の
記憶アドレスを増分する。
S4 Dレジスタを記憶し、レジスタ31の
記憶アドレスを増分する。
S5 Aレジスタの内容を選択し、この内容
を加算器84でBレジスタの内容に加
える。
順 序 機 能
S6 log(A+B)をEレジスタに記憶す
る。
S7 Cレジスタの内容を選択し、この内容
を加算器84でDレジスタの内容に加
える。
S8 log(C+D)をFレジスタに記憶す
る。
S9 加算器97でFレジスタの内容をEレ
ジスタの内容から引く。
S10 log
(A+B/C+D)をROM Bで翻訳し、その結果をR1レ
ジ
スタに記憶する。
S11 Aレジスタの内容を選択し、それを加
算器84でDレジスタの内容に加え
る。
S12 log(A+D)をEレジスタに記憶す
る。
S13 Bレジスタの内容を選択し、それをC
レジスタの内容に加える。
S14 log(B+C)をFレジスタに記憶す
る。
S15 減算器97でFレジスタの内容をEレ
ジスタの内容から引く。
S16 log
A+B/C+DをROM Bで翻訳し、その結果をR2レジス
タに記憶する。
順 序 機 能
S17 R1レジスタが1なら、Aレジスタ(第
4図)の内容を選択し、R1レジスタ
が2なら、Cレジスタ(第4図)の内
容を選択する。
S18 log(AまたはC)の値をEレジスタ
(第4図)に記憶する。
S19 R1が1なら、Bレジスタ(第4図)の
内容を選択し、R1が2なら、Dレジ
スタ(第4図)の内容を選択する。
S20 log(BまたはD)の値をFレジスタに
記憶する。
S21 減算器97でFレジスタの内容をEレ
ジスタの内容から引く。
S22 許容差修正値をlogA/BまたはC/D
と加算器108または減算器112で
組合せる。
S23 解読された文字を妥当性検査素子17
に転送する。
S24 文字カウンタ123を増分し、当該順
序を再スタートする。
ROM Aに記憶されているテーブルは、ラベル
上にUPC記号を印刷することなどに起因する文
字修正をも含むものである。従つて、修正値の比
計算機15での計算は、妥当中央棒線パターンの
位置指定後、記号の文字の解読に先立つて行われ
る。この修正値は文字解読器16のレジスタ10
0に記憶される。
修正値の計算は、本発明では、棒線及び空白部
に関して既知の1対1の比を有する標準パターン
を検査することによつて実行される。UPC標準
記号を解読するためには、検査される標準パター
ンは中央棒線パターン幅である。修正値を得るに
は、中央パターンの棒線と空白部の実際の即ち印
刷された比を測定すればよい。この比は、局部的
な印刷の不揃いの影響をできるだけ抑えるため、
2本の棒線と2つの空白部を含むように予め選択
されている。UPC標準記号では、該比は、2本
の中央棒線対2つの中央空白部として定義されて
いる。即ち比A+C/B+Dである。公称記号の場合、
こ
れらの比の値は1となる。過剰印刷された記号ま
たはラベルの場合は、それらは1より大きくな
り、また過小印刷されたラベルの場合は、1より
小さくなる。換言すれば、該比は、2本の暗棒の
幅対2本の明棒の幅として定義される。既知比、
即ち棒線及び空白部の幅は同じであるから、終結
比が1以外の場合は常に、モジユールA,B,C
及びDの記憶されている測定値に修正値を組合せ
なければならない。
事象の順序における修正計算は、時間P9におい
てレジスタA及びCからの2本の中央棒線に対す
るデータの読出しから始まる。これらの幅測定値
は、時間P9においてORゲート80及び82に現
れる信号P9で読出される。それらは、それぞれ、
ANDゲート74及びORゲート85、ANDゲート
77及びORゲート86を介して加算器84に転
送される。結果として算出された和の対数は、
ROM Aから読出されてレジスタ87に記憶され
る。時間P10では、レジスタ87の内容がEレジ
スタに転送される。この結果が生じるのは、信号
P10がORゲート91及び95に印加され、これに
応答してANDゲート89、ORゲート92及び
ANDゲート93が起動されるためである。同様
に、B及びDレジスタは、順序中の時間P11で読
出される。これらの幅測定値は、信号P11がORゲ
ート81及び83に印加される結果、加算器84
の入力に送り込まれる。時間P12では、和信号の
対数がレジスタ87からFレジスタに転送され
る。これは、信号P12がORゲート91及び96に
印加されるため生じるものである。時間P13で
は、信号P13がORゲート98に印加される結果、
減算器97は使用可能状態となる。結果として生
成される修正信号の対数は、解読器16用の修正
値レジスタ100に記憶されて前記2次比を仲だ
ちとする解読の際に使用される。
さて、ここで、第5図に図示の解読シークエン
サー14Sは中央棒線ロケータ14専用として第
3図に示されているシークエンサー14Sと同じ
ものであつて、第5図に重複されているのは、単
に解読器16の操作原理の考察を簡略化するため
であることに留意されたい。該シークエンサー1
4Sは解読システムでは時分割式にすることも可
能であることは、当業者の当然理解し得る所であ
る。
対数比レジスタ101の出力信号は、第5図で
はROM Bで示されている1次比読取専用記憶装
置に加えられる。このROM Bは、解読処理中に
発生する1次比のための比の対数値を1次比4/
3、5/2、2/5または3/4のうちの1つを表わす数
値に変換するテーブルを記憶している。TABLE Recall that the minimum linear value selected for counter 28 was seven. Therefore, values below 7 need not be taken into account in the table. The logarithmic values shown in the table start arbitrarily from zero, with the value 15
After reaching , it starts again from zero. When calculating the correction factor, the ratio A/B or C/D is
It is calculated in the form (A+φ)/B+φ and (C+φ)/D+φ. The output signals of the two parts of logarithm register 87 are:
It is controlled for further processing via a pair of AND gates 88 and 89. The output signal on the left side of register 87 is applied as one input to AND gate 88, and the output signal on the right side is applied as one input to AND gate 89. 4 consisting of input signals applied to AND gates 88 and 89.
The two bits represent the decimal value recorded in the table. OR gate 90 is another one of AND gate 88
control two inputs. This gate 90 has S 6 ,
Responsive to signals from sequencer 14S, illustrated as S 8 , S 12 , S 14 , S 18 and S 20 . Similarly, OR gate 91 controls another input of AND gate 89. This gate 91 is responsive to sequencer signals P10 and P12 . AND gate 88
and 89 output signals are connected to these
Controlled by OR gate 92. OR gate 9
The output signal of 2 is a pair of parallel circuits.
Added to AND gates 93 and 94. Another input of AND gate 93 is controlled by OR circuit 95. This OR circuit 95 is responsive to sequencer signals S 6 , S 12 , S 18 and P 10 . Another input of AND circuit 94 is controlled by OR gate 96. The OR gate 96 receives signals S 8 ,
Respond to S 14 , S 20 and P 12 . AND circuits 93 and 94 are independent logarithm registers E and F, respectively.
control the data that is fed into Registers E and F are each 4-bit registers that store the value of the logarithm of the sum of measured widths, such as the logarithm of the sum A+B. Registers E and F each have their own output circuits and are connected so that their contents can be transferred to subtracter 97. Subtractor 97 performs a logarithmic subtraction of the two sums stored in registers E and F, i.e. subtracts the value in register F from the value in register E, and then produces an output signal which is the logarithm of the desired ratio signal. Occur. Subtractor 97 is enabled under the control of OR gate 98. This OR gate 98 is responsive to sequencer signals S 9 , S 15 , S 21 and P 13 . subtractor 97
The output signal of is applied to either the center bar locator 14 or the character decoder 16 depending on the use of the ratio calculator 15. Now, with the above structure of the ratio calculator 15 in mind, its operating principle will be further explained. The information from the storage device 13 representing the modules A, B, C and D is stored in the sequential signals S 1 , S 2 ,
In response to the occurrence of S 3 and S 4 are loaded into the corresponding module registers. One, A, B, C and D
Once all of the data has been fed into the registers, the A and B data are added to adder 84 to form a linear sum of their measured widths, since the sequential operations are performed sequentially as shown in the table. is obtained. This result is obtained when the sequential signal S 5
is generated and applied to the OR gate 80 in the form of its one input, and the A register is read out via the AND gate 74 and the OR gate 85. This same sequence signal S 5 transfers the B register data through AND gate 76 and OR gate 86 to adder 84 . The linear sum obtained from adder 84 addresses ROM A to read the logarithm value of the sum. This sum is stored in register 87. As shown in the table, this data is transferred to the E register upon the occurrence of the sequence signal S6 . That is, signal S 6 becomes the input signal of AND gate 88, activates it, and transfers the data to register 87.
OR gate 92 and AND gate 93 from the left half of
The data is transferred to the E register via the . AND gate 93 is responsive to the output signal of OR gate 92 as well as the output signal of OR gate 95;
Note that generates an output signal in response to receiving signal S 6 at its input. The next sequence shown in the table is the generation of signal S 7 , which is connected to OR gate 82 and AND gate 7.
7 and OR gate 86 to add "C" data to adder 84. At the same time, the signal S 7 is also D
Data is transferred from the D register to another input of adder 84 via AND circuit 78 and OR circuit 86. Similarly, this data is sent from adder 84 to
It is transferred to the F register via ROM A and the logarithm register 87. The sequence signal S8 is the logarithm of the sum of C and D data, as shown in the table.
Transfer via AND gate 88, OR gate 92 and AND gate 94. This result occurs because
A signal S8 is applied to OR gates 90 and 96,
This is to activate AND gates 88 and 94. In this way, at time S 9 within the order operation,
Subtractor 97 is activated to subtract the data in the F register from the data in the E register to generate the required log ratio signal. 5, the general mechanism of character decoder 16 will now be described. The character decoder 16 is adapted to work in conjunction with the ratio calculator 15, as described above, from which the calculated logarithmic ratio is stored in the logarithmic ratio register 101 for the decoder 16. Receive the output signal. It will now be recalled that during the operation of the ratio calculator 15 in locating the center bar pattern, a printing error correction value was also calculated and transferred to the character decoder. Assume that this value is stored in the modified value register 100 for the decoder 16. Modified value register 100
stores the modified value added therein under the control of AND gate 102. This AND gate controls the input of register 100 and at the same time
Its input is connected to the output of log ratio register 101 as well as signal P 14 from sequencer 14S of FIG. Table Order Function S 1 Store the A register and increment the storage address of register 31. Store the S 2 B register and increment the storage address of register 31. Store the S 3 C register and increment the storage address of register 31. Store the S 4 D register and increment the storage address of register 31. S 5 Selects the contents of the A register and adds this contents to the contents of the B register in adder 84. Sequence function S 6 Store log(A+B) in E register. S 7 Selects the contents of the C register and adds this contents to the contents of the D register in adder 84. Store S 8 log(C+D) in F register. S9 adder 97 subtracts the contents of the F register from the contents of the E register. Translate S 10 log (A+B/C+D) in ROM B and store the result in R 1 register. S 11 Selects the contents of the A register and adds it to the contents of the D register in adder 84. Store S 12 log(A+D) in E register. S 13 Select the contents of the B register and transfer it to the C
Add to register contents. Store S 14 log(B+C) in F register. S15 subtractor 97 subtracts the contents of the F register from the contents of the E register. Translate S 16 log A+B/C+D in ROM B and store the result in R 2 register. Sequence Function S 17 If the R 1 register is 1, select the contents of the A register (Figure 4); if the R 1 register is 2, select the contents of the C register (Figure 4). Store the value of S 18 log (A or C) in the E register (Figure 4). If S 19 R 1 is 1, select the contents of the B register (FIG. 4); if R 1 is 2, select the contents of the D register (FIG. 4). Store the value of S 20 log (B or D) in the F register. S21 Subtractor 97 subtracts the contents of the F register from the contents of the E register. Combine the S22 tolerance correction value with logA/B or C/D in adder 108 or subtracter 112. S 23 Validation element 17 decoded characters
Transfer to. S Increment the 24 character counter 123 and restart the sequence. The table stored in ROM A also includes character modifications due to printing UPC symbols on labels, etc. Therefore, the calculation in the ratio calculator 15 of the correction value is performed after the location of the valid center bar pattern and prior to the decoding of the characters of the symbol. This modified value is stored in register 10 of character decoder 16.
Stored as 0. Calculation of correction values is performed in the present invention by examining a standard pattern with a known one-to-one ratio for bars and blanks. To decode the UPC standard symbol, the standard pattern examined is the center bar pattern width. To obtain the correction value, the actual or printed ratio of the central pattern bars to the blanks can be measured. This ratio is set to minimize the effects of local printing irregularities.
It has been preselected to include two bars and two blank spaces. In the UPC standard symbology, the ratio is defined as two center bars to two center blank spaces. That is, the ratio is A+C/B+D. For nominal symbols,
The value of these ratios is 1. For overprinted symbols or labels, they will be greater than 1, and for underprinted labels, they will be less than 1. In other words, the ratio is defined as the width of two dark bars to the width of two bright bars. known ratio,
That is, since the width of the bar line and the blank space are the same, whenever the termination ratio is other than 1, modules A, B, C
The corrected values must be combined with the stored measured values of and D. The correction calculation in the sequence of events begins with the reading of data for the two center bars from registers A and C at time P9 . These width measurements are read out with signal P9 appearing at OR gates 80 and 82 at time P9 . They are each
It is transferred to the adder 84 via the AND gate 74, the OR gate 85, the AND gate 77, and the OR gate 86. The logarithm of the resulting sum is
It is read from ROM A and stored in register 87. At time P10 , the contents of register 87 are transferred to the E register. This result occurs because the signal
P 10 is applied to OR gates 91 and 95, and in response, AND gate 89, OR gate 92 and
This is because the AND gate 93 is activated. Similarly, the B and D registers are read at time P 11 during the sequence. These width measurements are applied to adder 84 as a result of signal P 11 being applied to OR gates 81 and 83.
input. At time P12 , the logarithm of the sum signal is transferred from register 87 to the F register. This occurs because signal P 12 is applied to OR gates 91 and 96. At time P 13 , signal P 13 is applied to OR gate 98 resulting in
The subtracter 97 becomes available for use. The resulting logarithm of the modified signal is stored in a modified value register 100 for the decoder 16 and used during decoding using the quadratic ratio. Now, here, the decoding sequencer 14S shown in FIG. 5 is the same as the sequencer 14S shown in FIG. 3 exclusively for the center bar locator 14, and what is duplicated in FIG. Note that this is merely to simplify the discussion of the operating principle of the decoder 16. The sequencer 1
Those skilled in the art will naturally understand that 4S can be implemented in a time-sharing manner in a decoding system. The output signal of log ratio register 101 is applied to a primary ratio read-only storage, designated ROM B in FIG. This ROM B converts the logarithm of the ratio for the primary ratio generated during the decoding process into the primary ratio 4/
It stores a table that converts into a number representing one of 3, 5/2, 2/5, or 3/4.
【表】
表では、ROM Bのアドレスと上記のような
1次比を表わす出力データの関係が示されてい
る。つまり、ROM Bの出力データが「2」の場
合は、1次比は4/3であり、出力データが「1」
の場合は、1次比は3/4であることに留意された
い。
ROM Bから発生される出力データは、並列回
路関係で一対のAND回路103及び104に入
力される。AND回路103は、シークエンサー
14Sからの信号S10に応答してROM Bの出力
データを当該回路を介して転送するように働く。
このため、AND回路103の出力はこのデータ
を第1番目の1次比を記憶するためのR1レジス
タに送り込む。同様に、AND回路104は、信
号S16によつて制御されてROM B出力データを
R2レジスタに転送する。R2レジスタは第2番目
の1次解読比を記憶する。AND回路103及び
104の出力回路はまた、OR回路105に接続
されていて解読回路106を制御する働きをす
る。解読回路106は、ROM Bからの1次比デ
ータ信号が4の場合は、表に示されているよう
に、エラーを表示する。
レジスタR1及びR2の出力信号は2進化10進比
ROM Cに入力される。具体的には、レジスタR1
のデータ出力信号はROM Cのb2及びb3ビツトに
入力され、レジスタR2の出力信号はROM Cのb0
及びb1ビツトに入力される。[Table] The table shows the relationship between the address of ROM B and the output data representing the above-mentioned linear ratio. In other words, when the output data of ROM B is "2", the primary ratio is 4/3, and when the output data is "1"
Note that for , the linear ratio is 3/4. Output data generated from ROM B is input to a pair of AND circuits 103 and 104 in a parallel circuit relationship. The AND circuit 103 functions to transfer the output data of ROM B through the circuit in response to the signal S10 from the sequencer 14S.
Therefore, the output of the AND circuit 103 sends this data to the R1 register for storing the first linear ratio. Similarly, the AND circuit 104 outputs the ROM B output data under the control of the signal S16 .
Transfer to R2 register. The R2 register stores the second primary decoding ratio. The output circuits of AND circuits 103 and 104 are also connected to OR circuit 105 and serve to control decoding circuit 106. Decoder circuit 106 indicates an error if the primary ratio data signal from ROM B is 4, as shown in the table. The output signals of registers R 1 and R 2 are binary coded decimal ratios.
Input to ROM C. Specifically, register R 1
The data output signal of is input to bits b 2 and b 3 of ROM C, and the output signal of register R 2 is input to bit b 0 of ROM C.
and b input to 1 bit.
【表】【table】
【表】
ROM Cの記憶内容は表に従つている。この
表は2つの1次比と2次比を関連付け、所要の文
字をデータ欄に示されている解読された10進数値
の形で解読し且つ該データが順方向ビツトである
かあるいは逆方向読取ビツトであるかを識別す
る。例えば、ゼロφビツトは順方向の数を示し、
ビツト1は逆方向の数を示す。順方向は、第1A
図に図示の左から右への走査の意味で使われ、逆
方向は右から左への走査を意味する。右側文字及
び左側文字は双方共、左から右の走査では「順方
向」であると解読し、右から左への走査では「逆
方向」であると解読する。ROM Cの2進化10進
出力は、シークエンサー14Sからの信号S23で
制御されるAND回路107に入力される。AND
回路107の出力は、方向性ビツトを有する2進
化10進文字であつて妥当性検査回路17に送られ
る。
容易に想起できることだが、文字解読用2次比
を算出するのに先だつて、モジユールA,B,C
及びDの被測定幅に対して修正値文字の加算また
は減算を行わなければならない。ラベル10の左
側部では、修正値は測定データに加えられ、右側
部では、修正値はこのデータから減算される。こ
のため、2進加算器108が配設され、該情報を
左側文字に加算する作業を行う。加算器108の
作動は、ANDゲート109で制御される。AND
ゲート109は「左」信号及びシークエンサー1
4Sからの信号S22に応答して加算器108を起
動する。加算器108は対数比レジスタ101か
らの信号と修正値レジスタ100からの信号を結
合し、修正されたモジユール・データ信号を導線
110を介してOR回路111に発生する。同様
に、UPC記号の右側半分に対して、減算器11
2が配設されている。減算器112は、「右」信
号及びシークエンサー14Sからの信号S22に応
答するAND回路113によつて使用可能状態と
なる。減算器112は、対数比レジスタ101か
らのデータと修正値レジスタ100からのデータ
を結合する、即ち修正信号を比信号から減算す
る。修正されたモジユール値信号は導線114上
に現われ、OR回路111に対してその第2入力
として印加される。OR回路111の出力信号は
2次比ROM Dをアドレスするように印加され
る。[Table] The contents of ROM C are as shown in the table. This table associates two linear and quadratic ratios, decodes the required characters in the form of decoded decimal values shown in the data field, and determines whether the data is a forward bit or a backward bit. Identifies whether it is a read bit. For example, the zero φ bit indicates a forward number,
Bit 1 indicates the number in the opposite direction. Forward direction is 1st A
It is used in the sense of scanning from left to right as shown in the figure; the reverse direction refers to scanning from right to left. Both right-hand and left-hand characters are interpreted as "forward" in a left-to-right scan, and "reverse" in a right-to-left scan. The binary coded decimal output of ROM C is input to an AND circuit 107 controlled by a signal S23 from the sequencer 14S. AND
The output of circuit 107 is a binary coded decimal character with directional bits and is sent to validation circuit 17. As you can easily recall, before calculating the quadratic ratio for character decoding, the modules A, B, and C are
The correction value character must be added or subtracted to the measured width of and D. On the left side of the label 10, correction values are added to the measured data, and on the right side, correction values are subtracted from this data. For this purpose, a binary adder 108 is provided, which performs the task of adding this information to the left character. Operation of adder 108 is controlled by AND gate 109. AND
Gate 109 is the "left" signal and sequencer 1
Adder 108 is activated in response to signal S 22 from 4S. Adder 108 combines the signal from log ratio register 101 and the signal from modified value register 100 and produces a modified module data signal via lead 110 to OR circuit 111. Similarly, for the right half of the UPC symbol, subtractor 11
2 are arranged. Subtractor 112 is enabled by an AND circuit 113 responsive to the "right" signal and the signal S 22 from sequencer 14S. Subtractor 112 combines the data from log ratio register 101 and the data from modified value register 100, ie subtracts the modified signal from the ratio signal. The modified module value signal appears on conductor 114 and is applied to OR circuit 111 as its second input. The output signal of the OR circuit 111 is applied to address the secondary ratio ROM D.
【表】
2次比ROM Dの内容は表XIに示されている。
ROM Dの出力信号は、あいまいさを解決するた
めに、比A/BまたはC/Dが2/1または1/2であるか否
か
を決定する。ROM Dの出力は、b0及びb1出力の
形で表わされている。ROM Dのb0出力が1な
ら、比は2/1であり、b0出力がゼロなら、比は1/2
である。その他の出力信号はb1信号であつて、こ
れらは全て値2を有し解読エラーを表わす。表XI
を参照されたい。ROM Dのb1出力はAND回路1
15に対してその1つの入力として印加される。
AND回路115の第2入力は、素子116Aか
らの出力信号によつて構成されており、該素子1
16Aはまた、R2=1又は2とも記載されてい
る。素子116Aの入力信号はR2レジスタの出
力から送られて来る。ROM Dのb0出力信号は、
ROM Cのb4ビツトに印加される。
如何なるあいまいさをも解決するためには、第
1番目の1次比、即ちR1レジスタに記憶されて
いる比が3/4であるかあるいは4/3であるかによつ
て、2つの所要2次比のうちの1つを選択する必
要がある。このため、R1レジスタの出力は、解
読用のR1値を記憶する一対の解読レジスタ11
6及び117に送られるようになつている。解読
レジスタ116がR1レジスタが1であることを
信号する場合は、1次比は3/4であり、選択され
た2次比はA/Bである。解読レジスタ117が
R1レジスタが2であると信号する場合は、1次
比は4/3であり、選択比はC/Dである。第1C
図を参照されたい。解読レジスタ116及び11
7の出力回路は、それぞれ、ORゲート118に
対して入力信号となつて印加される。ORゲート
118の出力は、AND回路115に対してその
第3入力の形で加えられる。このようなわけで、
R1が2または1であり、R2が2または1であ
り、且つ値2のb1信号がAND回路115に現れ
た場合は、該回路115からエラー信号が発生さ
れる。解読レジスタ116及び117の各々の出
力信号は、並列回路関係で、それぞれ個別の一対
のAND回路119及び120、並びにAND回路
121及び122に入力される。AND回路11
9は信号S17及びR1解読信号に応答して、信号
S17Aで示されている出力信号を発生する。この
出力信号は比計算機15に送られる。同様に、
AND回路120のもう1つの入力は入力信号S19
に応答して、比計算機15に対して出力信号
S19Bを発生する。AND回路121及び122
は、各々並列回路関係で解読レジスタ117の出
力信号に応答する。AND回路121はまたシー
クエンサー信号S17にも応答して出力信号S17Cを
発生する。同様に、AND回路122は信号S19に
応答して比計算機15に転送される信号S19Dを
発生する。
文字解読装置16は、通常、6つの左側(0−
5)文字に亘る順序でUPC記号の左右両側を解
読するから、文字6の時間から中央棒線パターン
が始まり、従つて解読が行われるであろう。この
中央パターンの解読を防ぐためには、記憶アドレ
スを5位置だけ先回りさせる。これによつて、解
読は右側の第1文字から開始される。このため、
文字カウンタ123が配設されていて、該カウン
タ123は、文字がシークエンサーからの信号
S24の各々に応答して順次解読される毎に該文字
をカウントする。カウンタ123は解読レジスタ
124に出力信号を送つて、6文字が解読された
ことを知らせる。この装置124はまた、文字カ
ウント=6解読とも命名されている。同様に、別
のレジスタ125はカウンタ123の第12番目の
カウントに応答して、記号が完全に解読されたこ
とを指示する。解読レジスタ124は信号CH6を
発生し、トグル素子126をリセツトして「右」
信号を発生させる。解読レジスタ125の出力
は、トグル21のリセツト端子に入力される。該
トグル21は、第3図の中央棒線シークエンサー
14Sからの信号P15に応答するように接続され
たセツト端子を備えている。トグル21は、セツ
トされると、AND回路35に信号を送る。信号
P15はまた、文字カウンタ123のリセツト並び
にトグルのセツトを行うようにも印加される。ト
グル126は、セツトされると、AND回路10
9に「左」信号を送る。信号P15はまたOR回路1
27にも印加され、この場合、解読シークエンサ
ー14S(第5図)をリセツトする。シークエン
サー14Sは、先出のシークエンサーと同様に、
トグル21の「セツト」状態に応答してクロツ
ク・パルスをシークエンサーのステツプ入力に印
加するAND回路35によつて制御される。OR回
路127はまたAND回路128から入力信号を
受けて、シークエンサーをリセツトする働きもす
る。AND回路128は、解読レジスタ124か
らの信号CH6及びシークエンサー14Sからの信
号S5に応答する。該回路128の出力はまたOR
回路129に加えられて、記憶アドレスを増分す
るための信号M3を発生させる。この目的のた
め、OR回路129はまた、他の4つの位置の記
憶アドレスを増分するための順序信号S1,S2,S3
及びS4にも応答するようになつている。
さて、文字解読器16の上記構造を念頭に置く
ことによつて、ステツプ・バイ・ステツプ操作に
ついて説明することができる。この順序操作は表
と関連させて説明する。始めに、中央棒線位置
指定順序中モジユールの測定幅を修正するための
修正値が算出されたことを想起して欲しい。この
ようなわけで、位置指定順序の時間P14では、解
読器16用ANDゲート102が起動され、実際
の文字解読操作の開始に先だつて、許容差修正文
字の対数がレジスタ101から修正値レジスタ1
00に転送された。時間P15では、本システムの
制御は中央棒線ロケータ14から文字解読器16
に移されているから、UPC記号の文字解読が始
まる。この点に関しては、表を参照されたい。
ここでは、モジユールの測定幅を修正するため
の論理を理解して頂きたい。UPC記号の順方向
及び逆方向走査のいずれの場合でも、許容差修正
文字即ち値は、記号の左側フイールドのモジユー
ルに対してはその測定されたモジユール幅に加算
され、右側フイールドの測定幅から減算されるよ
うになつている。逆方向走査操作では、修正は逆
方向に走査された文字を反転させる前に行われ
る。この論理は、修正値が棒線/空白部比から算
出されている場合に適用される。
文字解読器16が比計算機15に対して従属関
係にあるから、解読の際の操作の幾つかは、中央
棒線パターンの位置指定に必要とされる操作と同
じである。この点については、表を参照された
い。このようなわけで、始めの順序ステツプS1乃
至S9は中央棒線ロケータ14の操作に関して説明
したものと同じであつて、レジスタ101に記憶
されている解読比の所要の対数を形成する。従つ
て、順序ステツプS9の発生後、1次比計算、即ち
logA+B/C+Dが比計算機15から解読器16に転
送さ
れる。この対数信号はROM Bをアドレスして、
表に基ずく1次比を表わす数値出力信号を発生
させる。順序中の時間S10では、ROM Bから読
出されたデータがR1レジスタに記憶される。同
様に、順序ステツプS11乃至S16中は、比計算機1
5内で第2番目の1次比が算出され、解読器16
のレジスタ101に転送される。この第2の1次
比対数信号は比A+D/B+Cを表わす。時間S16の終
了時
点では、ROM Bから読出されたデータはレジス
タR2に記憶されている。
1次解読比が双方共発生し且つレジスタR1及
びR2に記憶された場合には、あいまいさを解決
するにはどの2次比を使用すべきかについての決
定がなされなければならない。なお、第1C図を
参照されたい。比A/BまたはC/Dは、必要であると
否
とにかかわらず、各解読操作中に計算される。こ
のため、解読レジスタ116及び117の内容を
検査して、第1番目の1次比が3/4であるか、あ
るいは4/3であるかを決定する。レジスタ116
及び117に記憶されているデータは表に基ず
いている。さて、レジスタ116または117の
いずれかに記憶されているデータ信号が4(即
ち、R1またはR2が4)であると、「エラー」
(ERROR)信号が発生されて、本システムの制
御が中央棒線ロケータ14に戻されることに留意
されたい。「エラー」信号はORゲート118によ
つて発生される。該ゲート118はレジスタ11
6または117に記憶されている「4」を検知し
て、ANDゲート115に入力信号を送る。ROM
Dからのb1信号が真であるのは、表XIに示されて
いるように、これが「2」を信号する場合であ
る。
この時点でエラーがない場合は、正しい2次解
読比の選択は、順序ステツプS17に従つて続けら
れる。レジスタ116がR1が1であることを信
号する場合、比は3/4(表)であり、従つてモ
ジユールAが選択されるか、あるいは比計算機1
5内のAレジスタの問合せが行われる。このた
め、解読器16は順序ステツプS17に応答して信
号S17Aを発生し、比計算機15内のAレジスタ
の内容を読出してOR回路80、AND回路74、
及びOR回路85を介して比計算機の加算器84
に転送する。レジスタ117がR1が2であるこ
とを信号する場合、比は4/3(表)であり、従
つて比計算機15は順序S17中信号S17Cを受信
し、この信号S17CはOR回路82に印加されて
AND回路121を使用可能状態にする。この信
号によつて比計算機15のCレジスタのデータが
読出され、OR回路82、AND回路77、及び
OR回路86を介して加算器84に転送される。
ステツプS18では、測定モジユール幅AまたはC
の対数信号が、先行選択に従つて、計算機15の
Eレジスタに記憶される。順序時間S19でも同じ
手続が生じ、R1が1であるかまたは2であるか
によつて、BレジスタまたはDレジスタのいずれ
かが読出されて加算器84にデータ転送が行われ
る。ステツプS20では、モジユールBまたはDの
合成対数信号が比計算機15のFレジスタに記憶
される。時間S21では、Fレジスタの内容がEレ
ジスタの内容から減算されて、レジスタ101に
比信号の対数を入力する。時間S22では、レジス
タ100に予め記憶されている許容差修正値が、
解読されるのが左側フイールド文字であるか右側
フイールド文字であるかによつて、加算また減算
される。
修正値が測定幅に加算される場合、この加算の
ための論理条件が満たされなければならない。中
央棒線位置指定順序の時間P15では、トグル12
6が「セツト」されて、真状態にある「左」信号
を発生した。この「左」信号はANDゲート10
9に印加され、時間S22の発生と同時に加算器1
08が使用可能状態となる。対数比レジスタ10
1の内容は修正値レジスタ100の内容に加算さ
れ、その結果、修正されたモジユール幅信号が導
線110上に発生してORゲート111に印加さ
れる。
修正値が測定モジユール幅から減算される場合
減算のための論理条件が満たされなければならな
い。最初の順方向走査を仮定した場合、左側フイ
ールドが解読された後では、文字カウンタ123
は6まで数え上げられている。この6カウントは
文字6解読回路網124によつて解読されて、6
カウントを表わす出力信号が発生される。この出
力信号はトグル126のリセツト入力に加えられ
て、「真」状態にある「右」信号を発生する。こ
の「右」信号はANDゲート113に送られ、信
号S22の入力と同時に減算器112が使用可能状
態となる。修正値レジスタ100の内容は対数比
レジスタ101から減算され、その結果、修正モ
ジユール幅信号が導線114上に発生されてOR
ゲート111に入力される。
左側または右側のフイールドのいずれかに対す
る修正モジユール幅信号がORゲート111の入
力に現れた場合には、その出力信号は2次解読比
ROM Dをアドレスする。ROM Dから読出され
る信号は表XIに従つている。ROM Dから2次比
データが読出されると、妥当な2次比、2/1また
は1/2を表わすデータ信号がROM Cのビツト4
(b4)位置に入力され、同時にR1及びR2レジスタ
からのデータもROM Cに入力される。正確に
は、R1データはROM Cのb2及びb3位置に送ら
れ、R2データはそのb0及びb1位置に送り込まれ
る。ROM Cの内容は表に示されているデータ
に対応する。この表のデータと文字解読器16の
回路動作を関連させる場合、2次比値が最高位ア
ドレス・ビツト即ちROM Cのb4位置に印加され
るため、あいまいさなく解読するための2次比を
必要としない文字はROM Cに2度現れるという
点に留意されたい。これらの文字にとつては、2
次比はいわば「無関係」ビツトであるから、無視
して構わない。
表及びに記録された値は容易に翻訳され
て、記録された文字の解読を1次比及び2次比で
表わすことができる。1次比が2/5及び3/4に解読
された場合、解読された文字はこれら2つの1次
比だけで定義される。即ち該文字は、明瞭に、表
の順方向4、及び表のアドレス1である。2
つの1次比が3/4、3/4の場合は、逆方向7、ある
いは逆方向1が生じる可能性があるから、2次比
を検査しなければならない。表を参照された
い。A/Bの2次比が演算の結果比2/1なら、逆
方向7が解読される。同様に、2次比が1/2な
ら、逆方向1が解読されるのは明白である。
表では、順方向及び逆方向走査の双方に対す
るROM Cのb0乃至b4アドレス位置と2次比、1/
2及び2/1との関係について記載されている。表
の「アドレス」欄は2進化ビツトb0乃至b4に対応
する10進ビツトを表わしている。ビツトb0乃至b3
は、表に示されているように、妥当1次比とし
て値0、1、2または3を取る。ビツトb4は、表
XIに示されているように、妥当2次比として1ま
たは0のいずれかを取る。表のF/R欄は解読
されたデータ文字が順方向ビツトであるか、逆方
向ビツトであるかを判別する。φ記号は順方向ビ
ツトを意味し、1は逆方向ビツトを意味する。
順序S23では、ROM Cのアドレスされた記憶
位置がANDゲート107を仲だちとして入力さ
れて、既述のような方向性ビツトを有する2進化
10進解読済み文字を生成する。この時点で、
ANDゲート107の出力信号は妥当性検査回路
17に伝送される。解読手続中で残るステツプは
S24である。信号S24は文字カウンタ123をカウ
ント12まで増分する。この12番目の文字はレジス
タ125内で解読され、該レジスタ125は
「R」出力信号を発生する。レジスタ125が第
12番目文字が解読されたことを信号すると、トグ
ル21がリセツトされて、ANDゲート回路35
を、従つて解読器シークエンサー14Sを使用禁
止状態にする。この時点で、文字解読順序は再開
可能となる。
表に従つて解読された文字は、順方向走査ま
たは逆方向走査のいずれかと一致しなければなら
ない。これは、UPC標準記号処理手順指示書に
記載された奇偶検査の必要条件を十分満たすこと
になる。妥当な解読済み出力信号を発生するため
には、12の妥当な文字がなければならず、また検
査デイジツトの検孔がなされなければならない。
読取方向表示子が一致せず、検査数字試験が失敗
した場合は、制御を中央棒線ロケータ14に戻し
て別の位置の探索を試行する。
本システムの操作原理を検討するに当り、本明
細書中ではいろいろな条件について記載して来
た。例えば、不当な解読操作の場合は本システム
の制御は中央棒線ロケータ14に戻され、記憶装
置を再検査して妥当な中央棒線パターンを探し出
す。更に、再試行カウンタ67が10(5回の試行
及び1試行に付2サイクル)まで数え上げられた
ら、読取りが打切られることが記載されている。
読取りを打切るその他の条件は次の通りである。
(1) ウオンド11からのデータのいずれかが、一
緒に加算即ち和を取つた場合(A+B,C+
D,…)にオーバフローとなるようなモジユー
ル幅測定値を発生した場合、8ビツトによつて
読取りが打切られる。
(2) 文字比、即ちA/BまたはC/D比のいずれ
かが表及びXIで「エラー」とマークされた領
域にある場合、表に示されている条件に加え
て読取りの打切りが実行される。
本明細書中に記載した回路素子は周知のもので
あつて一般市場で入手可能であり、従つて本シス
テムの前記記載に基ずく構成が可能なものである
ことは当業者にとつて当然理解できる所である。
説明の都合上本明細書中で繰返し述べてある要素
機能は、OS(オペレーテイング・システム)で
時分割できる単一素子で遂行することができる。
本明細書中に記載した改良は、UPC標準記号
及びその派生記号のタイプの高密度線形棒状コー
ドの読取り及び解読に関して現在の技術水準を発
展させるものであつて、解読のあいまいさを容易
に解決できると同時に、手動加速に対しての耐容
性が高く、且つ記録または印刷に対しても耐容性
を有している。本改良は、高速レーザー走査装置
並びに可搬式、電池作動形手持ち走査装置に直接
適用することができるものである。[Table] The contents of the quadratic ratio ROM D are shown in Table XI.
The output signal of ROM D determines whether the ratio A/B or C/D is 2/1 or 1/2 to resolve the ambiguity. The output of ROM D is represented in the form of b 0 and b 1 outputs. If the b 0 output of ROM D is 1, the ratio is 2/1, and if the b 0 output is zero, the ratio is 1/2.
It is. The other output signals are the b 1 signals, which all have a value of 2 and represent decoding errors. Table XI
Please refer to ROM D's b1 output is AND circuit 1
15 as its one input.
The second input of AND circuit 115 is constituted by the output signal from element 116A, and is configured by the output signal from element 116A.
16A is also described as having R 2 =1 or 2. The input signal for element 116A comes from the output of the R2 register. The b 0 output signal of ROM D is
Applied to the b4 bit of ROMC. To resolve any ambiguity, there are two requirements, depending on whether the first linear ratio, i.e. the ratio stored in the R1 register, is 3/4 or 4/3. One of the quadratic ratios needs to be selected. Therefore, the output of the R 1 register is coupled to a pair of decoding registers 11 that store the R 1 value for decoding.
6 and 117. If the decoding register 116 signals that the R 1 register is 1, then the primary ratio is 3/4 and the selected secondary ratio is A/B. The decoding register 117
If the R 1 register signals 2, the primary ratio is 4/3 and the selection ratio is C/D. 1st C
Please refer to the figure. Decoding registers 116 and 11
Each of the 7 output circuits is applied as an input signal to the OR gate 118. The output of OR gate 118 is applied to AND circuit 115 as its third input. For this reason,
If R 1 is 2 or 1, R 2 is 2 or 1, and a b 1 signal of value 2 appears at AND circuit 115, an error signal is generated from the circuit 115. The output signal of each of decoding registers 116 and 117 is input to a respective pair of AND circuits 119 and 120, and AND circuits 121 and 122, respectively, in parallel circuit relationship. AND circuit 11
9 responds to the signal S 17 and R 1 decoding signal
Generates the output signal shown as S 17 A. This output signal is sent to a ratio calculator 15. Similarly,
Another input of the AND circuit 120 is the input signal S 19
output signal to the ratio calculator 15 in response to
Generate S 19 B. AND circuits 121 and 122
are each responsive to the output signal of decoding register 117 in parallel circuit relationship. AND circuit 121 also generates output signal S 17 C in response to sequencer signal S 17 . Similarly, AND circuit 122 generates signal S 19 D which is transferred to ratio calculator 15 in response to signal S 19 . The character decoder 16 typically has six left (0-
5) Since we are decoding both the left and right sides of the UPC symbol in order across the letters, the center bar pattern will begin at the time of letter 6 and will therefore be decoded. In order to prevent this central pattern from being decoded, the storage address is advanced by five positions. This causes decoding to start from the first character on the right. For this reason,
A character counter 123 is provided, and the counter 123 is configured to detect whether the character is a signal from the sequencer or not.
Count the characters as they are sequentially decoded in response to each S24 . Counter 123 sends an output signal to decoding register 124 indicating that six characters have been decoded. This device 124 is also named Character Count=6 Decipher. Similarly, another register 125 is responsive to the twelfth count of counter 123 to indicate that the symbol has been completely decoded. Decode register 124 generates signal CH 6 to reset toggle element 126 to the "right"
generate a signal. The output of decoding register 125 is input to the reset terminal of toggle 21. The toggle 21 has a set terminal connected in response to a signal P15 from the center bar sequencer 14S of FIG. Toggle 21 sends a signal to AND circuit 35 when set. signal
P15 is also applied to reset the character counter 123 as well as to set the toggle. When set, toggle 126 causes AND circuit 10
Send "left" signal to 9. Signal P 15 is also OR circuit 1
27, in which case it resets the decoding sequencer 14S (FIG. 5). Sequencer 14S, like the previously mentioned sequencer,
It is controlled by an AND circuit 35 which applies a clock pulse to the sequencer step input in response to the "set" state of toggle 21. OR circuit 127 also receives an input signal from AND circuit 128 and functions to reset the sequencer. AND circuit 128 is responsive to signal CH 6 from decoding register 124 and signal S 5 from sequencer 14S. The output of the circuit 128 is also OR
Applied to circuit 129 to generate signal M3 for incrementing the storage address. For this purpose, the OR circuit 129 also provides sequential signals S 1 , S 2 , S 3 for incrementing the storage addresses of the other four locations.
and S 4 . Now, with the above structure of character decoder 16 in mind, step-by-step operation can be explained. This ordering operation will be explained in conjunction with tables. Recall that first, a correction value was calculated to correct the measured width of the module during the center bar positioning sequence. Thus, at time P 14 of the positioning sequence, the AND gate 102 for the decoder 16 is activated and the logarithm of the tolerance correction character is transferred from register 101 to the correction value register prior to the start of the actual character decoding operation. 1
Transferred to 00. At time P 15 , control of the system is transferred from the center bar locator 14 to the character decoder 16.
Since it has been moved to , the character deciphering of the UPC symbol begins. In this regard, please refer to the table. Here, we would like you to understand the logic for modifying the measurement width of a module. For both forward and backward scanning of the UPC symbol, the tolerance correction character or value is added to the measured module width for modules in the left field of the symbol and subtracted from the measured width of the right field. It is becoming more and more common. In a backward scan operation, the modification is made before reversing the backward scanned character. This logic applies when the correction value is calculated from the bar/blank ratio. Because the character decoder 16 is dependent on the ratio calculator 15, some of the operations in decoding are the same as those required for locating the center bar pattern. In this regard, please refer to the table. As such, the initial sequential steps S 1 to S 9 are the same as described with respect to the operation of center bar locator 14 and form the required logarithm of the decoding ratio stored in register 101. Therefore, after the occurrence of sequential step S9 , the first ratio calculation, i.e.
logA+B/C+D is transferred from ratio calculator 15 to decoder 16. This logarithmic signal addresses ROM B,
A numerical output signal is generated representing a linear ratio based on the table. At time S10 in the sequence, the data read from ROM B is stored in the R1 register. Similarly, during sequence steps S11 to S16 , the ratio calculator 1
5, the second linear ratio is calculated, and the decoder 16
The data is transferred to the register 101 of. This second linear ratio logarithmic signal represents the ratio A+D/B+C. At the end of time S16 , the data read from ROM B is stored in register R2 . If the primary decoding ratios both occur and are stored in registers R1 and R2 , a decision must be made as to which secondary ratio to use to resolve the ambiguity. Please refer to FIG. 1C. The ratio A/B or C/D is calculated during each decoding operation, whether necessary or not. To this end, the contents of decoding registers 116 and 117 are examined to determine whether the first linear ratio is 3/4 or 4/3. register 116
The data stored in and 117 is based on tables. Now, if the data signal stored in either register 116 or 117 is 4 (i.e., R 1 or R 2 is 4), an "error" occurs.
Note that an (ERROR) signal is generated to return control of the system to center bar locator 14. The "error" signal is generated by OR gate 118. The gate 118 is connected to the register 11
6 or “4” stored in 117 is detected and an input signal is sent to AND gate 115. ROM
The b 1 signal from D is true if it signals "2", as shown in Table XI. If there are no errors at this point, the selection of the correct secondary decoding ratio continues according to sequence step S17 . If register 116 signals that R 1 is 1, then the ratio is 3/4 (table) and therefore module A is selected or ratio calculator 1
The A register in 5 is queried. For this purpose, the decoder 16 generates a signal S17A in response to the sequential step S17 , reads out the contents of the A register in the ratio calculator 15, and outputs the OR circuit 80, the AND circuit 74,
and the adder 84 of the ratio calculator via the OR circuit 85
Transfer to. If register 117 signals that R 1 is 2, the ratio is 4/3 (table) and therefore ratio calculator 15 receives signal S 17 C in sequence S 17 and this signal S 17 C is applied to the OR circuit 82
The AND circuit 121 is enabled. This signal causes the data in the C register of the ratio calculator 15 to be read out, and the OR circuit 82, AND circuit 77, and
It is transferred to the adder 84 via the OR circuit 86.
In step S 18 , the measuring module width A or C
The logarithmic signal of is stored in the E register of the calculator 15 according to the advance selection. The same procedure occurs at sequence time S19 , with either the B or D register being read and data transferred to adder 84, depending on whether R1 is 1 or 2. In step S20 , the composite logarithmic signal of module B or D is stored in the F register of ratio calculator 15. At time S 21 , the contents of the F register are subtracted from the contents of the E register to input the logarithm of the ratio signal into register 101 . At time S22 , the tolerance correction value previously stored in the register 100 is
It is added or subtracted depending on whether left field characters or right field characters are being decoded. If the correction value is added to the measurement width, a logical condition for this addition must be fulfilled. At time P 15 of the center bar position specification order, toggle 12
6 was "set" to produce a "left" signal that was in the true state. This "left" signal is AND gate 10
9 and is applied to adder 1 at the same time as the time S 22 occurs.
08 becomes available for use. Log ratio register 10
The contents of 1 are added to the contents of modified value register 100 so that a modified module width signal is generated on conductor 110 and applied to OR gate 111. If the correction value is to be subtracted from the measured module width, the logical conditions for the subtraction must be fulfilled. Assuming an initial forward scan, after the left field is decoded, the character counter 123
is counted up to 6. This 6 count is decoded by character 6 decoding circuitry 124 and
An output signal representative of the count is generated. This output signal is applied to the reset input of toggle 126 to generate a ``right'' signal that is in a ``true'' state. This "right" signal is sent to AND gate 113, which enables subtracter 112 at the same time as signal S22 is input. The contents of modified value register 100 are subtracted from log ratio register 101 so that a modified module width signal is generated on conductor 114 and ORed.
It is input to gate 111. If a modified module width signal for either the left or right field appears at the input of OR gate 111, its output signal is the quadratic decoding ratio.
Address ROM D. The signals read from ROM D are according to Table XI. When the quadratic ratio data is read from ROM D, a data signal representing a valid quadratic ratio, 2/1 or 1/2, is sent to bit 4 of ROM C.
(b 4 ), and at the same time data from the R 1 and R 2 registers are also input to ROM C. More precisely, R 1 data is sent to the b 2 and b 3 locations of ROM C, and R 2 data is sent to its b 0 and b 1 locations. The contents of ROM C correspond to the data shown in the table. When relating the data in this table to the circuit operation of the character decoder 16, the quadratic ratio value is applied to the highest address bit, the b4 location of ROM C, so that the quadratic ratio value for unambiguous decoding is Note that the characters that do not require , appear twice in ROM C. For these characters, 2
The next ratio is an ``irrelevant'' bit, so you can ignore it. The values recorded in the table can be easily translated to represent the decoding of the recorded characters in linear and quadratic ratios. If the primary ratios are decoded to 2/5 and 3/4, the decoded character is defined only by these two primary ratios. That is, the character is clearly table forward direction 4 and table address 1. 2
If the two primary ratios are 3/4 and 3/4, a reverse 7 or a reverse 1 may occur, so the secondary ratio must be checked. Please refer to the table. If the quadratic ratio of A/B is the resultant ratio of 2/1, then the reverse direction 7 is decoded. Similarly, if the quadratic ratio is 1/2, it is obvious that the reverse 1 will be decoded. The table shows the b 0 to b 4 address locations and quadratic ratios of ROM C for both forward and reverse scans, 1/
The relationship with 2 and 2/1 is described. The "Address" column of the table represents the decimal bits corresponding to the binary coded bits b0 to b4 . Bit b 0 to b 3
takes values 0, 1, 2, or 3 as valid linear ratios, as shown in the table. Bit b 4 is table
As shown in XI, take either 1 or 0 as a valid quadratic ratio. The F/R column of the table determines whether the decoded data character is a forward or backward bit. The φ symbol means forward bit and 1 means backward bit. In sequence S23 , the addressed memory location of ROM C is inputted with AND gate 107 as a companion and is converted into a binary code with directional bits as described above.
Generates decimal decoded characters. at this point
The output signal of AND gate 107 is transmitted to validation circuit 17. The remaining steps in the decoding procedure are
It is S24 . Signal S 24 increments character counter 123 to a count of twelve. This twelfth character is decoded in register 125, which generates an "R" output signal. Register 125 is
Signaling that the 12th character has been decoded, toggle 21 is reset and AND gate circuit 35 is activated.
Therefore, the decoder sequencer 14S is disabled. At this point, the character decoding sequence can be restarted. The characters decoded according to the table must match either the forward scan or the backward scan. This fully satisfies the requirements for parity testing as described in the UPC Standard Symbol Processing Instructions. In order to produce a valid decoded output signal, there must be 12 valid characters and a test digit check must be made.
If the read direction indicators do not match and the check digit test fails, control is returned to the center bar locator 14 to attempt searching for another location. In discussing the operating principles of this system, various conditions have been described herein. For example, in the event of an illegal decoding operation, control of the system is returned to the center bar locator 14 which reexamines the memory for a valid center bar pattern. Furthermore, it is stated that the reading is aborted when the retry counter 67 counts up to 10 (5 trials and 2 cycles per trial).
Other conditions for aborting reading are as follows. (1) If any of the data from won 11 is added together, or summed (A+B, C+
D, . . . ), the reading is aborted by 8 bits. (2) If any of the character ratios, i.e. A/B or C/D ratios, are in the area marked "Error" in the table and XI, an abort of the reading is carried out in addition to the conditions indicated in the table. be done. It will be understood by those skilled in the art that the circuit elements described in this specification are well known and available on the general market, and therefore it is possible to configure the present system based on the above description. It is possible.
Elemental functions that are reiterated herein for convenience of explanation can be performed by a single element that can be time-shared by an operating system (OS). The improvements described herein advance the current state of the art in reading and decoding dense linear bar codes of the UPC standard symbology and its derivative symbology types, and readily resolve decoding ambiguities. At the same time, it is highly tolerant to manual acceleration and resistant to recording or printing. The improvements are directly applicable to high speed laser scanning devices as well as portable, battery operated handheld scanning devices.
第1図は、UPC記号またはその派生記号を手
操作式に読み取り且つ本発明を実施例するための
読取装置の概略ブロツク図、第1A図はUPC標
準記号の代表例を示す図、第1B図は第1A図に
示されている記号の文字構造の代表例を示す図、
第1C図は第1A図の記号の文字構造の代表例で
あつて、1次及び2次解読比を示す図、第2図は
第1図のシステムで使用される線形時間・デイジ
タル変換器の概略ブロツク図、第3図は第1図の
システムで使用される中央バー・ロケータの概略
ブロツク図、第3A図は、第1A図に図示のタイ
プの記号用の中央バー・パターンの記憶装置にお
けるアドレス位置の概略図、第3B図は、第3図
の中央バー・ロケータで使用される読取り専用記
憶装置Eに記憶される情報の代表例を示す図、第
4図は第1図のシステムで使用される比計算機の
概略ブロツク図、第5図は第1図のシステムで使
用される文字解読器の概略ブロツク図である。
10…ラベル、11…光学式ウオンド、12…
線形時間・デイジタル変換器、13…RAM、1
4…中央棒線ロケータ、14D…中央棒線比検知
器、14C…再試行カウンタ、14M…記憶アド
レス制御装置、14S…中央棒線ロケータ・シー
クエンサー、15…比計算機、16…文字解読
機、17…妥当性検査回路、25…シークエンサ
ー、26…カウント・レイト発振器、28…8ビ
ツト・カウンタ、31…アドレス・カウンタ及び
レジスタ、41…次続の開始アドレス制御装置、
50…減数レジスタ、51…減算器、52…差レ
ジスタ、56…ログ比レジスタ、57…ROM
E、61…サイクル・カウンタ、65…サイク
ル・カウンタ解読回路網、67…再試行2進カウ
ンタ、68…再試行解読回路、87…対数レジス
タ、97…減算器。
Fig. 1 is a schematic block diagram of a reading device for manually reading UPC symbols or their derivative symbols and for implementing the present invention; Fig. 1A is a diagram showing representative examples of UPC standard symbols; Fig. 1B is a diagram showing a typical example of the character structure of the symbol shown in FIG. 1A,
Figure 1C is a representative example of the character structure of the symbol in Figure 1A, showing the primary and secondary decoding ratios, and Figure 2 is a diagram of the linear time-to-digital converter used in the system of Figure 1. 3 is a schematic block diagram of a center bar locator used in the system of FIG. 1; FIG. 3A is a schematic block diagram of a center bar locator for use in the system of FIG. 1A; A schematic diagram of address locations, FIG. 3B, is a representative example of the information stored in read-only storage E used in the center bar locator of FIG. 3, and FIG. FIG. 5 is a schematic block diagram of the ratio calculator used. FIG. 5 is a schematic block diagram of the character decoder used in the system of FIG. 10... Label, 11... Optical wand, 12...
Linear time/digital converter, 13...RAM, 1
4...Center bar locator, 14D...Center bar ratio detector, 14C...Retry counter, 14M...Storage address controller, 14S...Center bar locator/sequencer, 15...Ratio calculator, 16...Character decoder, 17 ... Validity check circuit, 25 ... Sequencer, 26 ... Count rate oscillator, 28 ... 8-bit counter, 31 ... Address counter and register, 41 ... Next successive start address controller,
50... Subtraction register, 51... Subtractor, 52... Difference register, 56... Log ratio register, 57... ROM
E, 61... Cycle counter, 65... Cycle counter decoding circuitry, 67... Retry binary counter, 68... Retry decoding circuit, 87... Logarithm register, 97... Subtractor.
Claims (1)
ド化セグメントを解読する方法であつて、当該コ
ード化セグメントは、各コード化文字を表わす、
種々の幅の、互いに同一の光学特性を有するコー
デイング・モジユールA,C及び該コーデイン
グ・モジユールA,Cの光学特性とは異なる互い
に同一の光学特性を有するコーデイング・モジユ
ールB,Dの4個のコーデイング・モジユールが
A,B,C,Dの順序で配置された一定幅のグル
ープからなり、 当該解読方法は、 コード化セグメントの各コーデイング・モジユ
ールA,B,C,Dの幅を測定するステツプと、 デルタ距離特性を示すコーデイング・モジユー
ルA,B,C,Dの所定の二対の幅の比(A+
B)/(C+D)及び(A+D)/(B+C)を
計算し、もつて2/5、3/4、4/3または5/2を含む一
対の一次解読比を得るステツプと、 一次解読比が3/4及び4/3または4/3及び3/4のい
ずれかを示すか否か、すなわち、あいまいさを含
むか否かを決定するために当該一次解読比を検査
するステツプと、 前記一次解読比の検査があいまいさを示す場合
には、一次解読比の(A+B)/(C+D)が3/
4ならば二次解読比A/Bを、4/3ならば二次解読
比C/Dを計算するステツプと、 前記検査によつて、一次解読比があいまいさを
含まない場合には一対の一次解読比のみに基づい
て、または、前記あいまいさを含む場合にはあい
まいさを生じる一対の一次解読比及び二次解読比
の一つに基づいて、コード化セグメントを明確に
解読するステツプと、 からなることを特徴とするデルタ距離コード化セ
グメントの解読方法。 2 面上に記録された1個以上のデルタ距離コー
ド化セグメントを解読する方法であつて、当該コ
ード化セグメントは、各コード化文字を表わす、
種々の幅の、互いに同一の光学特性を有するコー
デイング・モジユールA,C及び該コーデイン
グ・モジユールA,Cの光学特性とは異なる互い
に同一の光学特性を有するコーデイング・モジユ
ールB,Dの4個のコーデイング・モジユールが
A,B,C,Dの順序で配置された一定幅の情報
のグループと、既知比の幅を有する互いに同一の
光学特性を有するコーデイング・モジユールB,
D及び該コーデイング・モジユールB,Dの光学
的特性とは異なる互いに同一の光学特性を有する
コーデイング・モジユールA,C,Eの5個のコ
ーデイング・モジユールがA,B,C,D,Eの
順序で配置された一定幅の非情報のグループとを
有し、 当該解読方法が、 既知比のコーデイング・モジユールA,B,
C,D,Eを具備するコード化セグメントの各コ
ーデイング・モジユールの幅を測定するステツプ
と、 測定につれて、各コーデイング・モジユールの
測定幅を記憶装置に収容するステツプと、 各コーデイング・モジユールの幅の比(A+
B)/(C+D)及び(B+C)/(D+E)が
1に等しいことが発見されるまでこれらの比を計
算及び検査することによつて既知比のコーデイン
グ・モジユールA,B,C,D,Eの測定幅を記
憶装置中に位置決めし、もつて記憶装置中の既知
比のコーデイング・モジユールA,B,C,D,
Eの記憶位置及び関連の情報コーデイング・モジ
ユールA,B,C,Dの記憶位置を決定するステ
ツプと、 比(A+C)/(B+D)に従い、既知比のコ
ーデイング・モジユールA,B,C,D,Eのグ
ループの測定幅に基づく記録許容差修正因子を計
算するステツプと、 前記計算した記録許容差修正因子に従い各コー
デイング・モジユールの測定幅を修正するステツ
プと、 デルタ距離特性を示す情報コーデイング・モジ
ユールA,B,C,Dの所定の二対の幅の比(A
+B)/(C+D)及び(A+D)/(B+C)
を計算し、もつて2/5、3/4、4/3または5/2を含む
一対の一次解読比を得るステツプと、 一次解読比が3/4、4/3または4/3、3/4のいずれ
かになるか否か、すなわち、あいまいさを含むか
否かを決定するため、当該一次解読比を検査する
ステツプと、 前記一次解読比の検査があいまいさを含む場合
には、一次解読比の(A+B)/(C+D)が3/
4ならば二次解読比A/Bを、4/3ならば二次解読
比C/Dを計算するステツプと、 前記検査によつて、一次解読比があいまいさを
含まない場合には一対の一次解読比のみに基づい
て、または、前記あいまいさを含む場合にはあい
まいさを生じる一対の一次解読比及び二次解読比
の一つに基づいて、コード化セグメントを明確に
解読するステツプと、 からなることを特徴とするデルタ距離コード化セ
グメントの解読方法。Claims: 1. A method of decoding one or more delta distance coded segments recorded on a surface, the coded segments representing each coded character.
4 coding modules A and C of various widths having the same optical properties and coding modules B and D having the same optical properties different from those of the coding modules A and C; The decoding method consists of groups of fixed width in which coding modules are arranged in the order A, B, C, D, and the decoding method is based on and the width ratio (A+
B) calculating /(C+D) and (A+D)/(B+C) to obtain a pair of primary decoding ratios including 2/5, 3/4, 4/3 or 5/2; examining said primary decoding ratio to determine whether it indicates either 3/4 and 4/3 or 4/3 and 3/4, i.e. contains an ambiguity; If the primary decoding ratio test shows ambiguity, the primary decoding ratio (A+B)/(C+D) is 3/
If the primary reading ratio is 4/3, the secondary reading ratio A/B is calculated, and if the reading is 4/3, the secondary reading ratio C/D is calculated. unambiguously decoding the coded segment based only on the primary decoding ratio, or on one of a pair of primary decoding ratios and secondary decoding ratios which, if it includes said ambiguity, creates an ambiguity; A method for decoding a delta distance encoded segment, comprising: 2. A method for decoding one or more delta distance coded segments recorded on a surface, the coded segments representing each coded character;
4 coding modules A and C of various widths having the same optical properties and coding modules B and D having the same optical properties different from those of the coding modules A and C; a group of information of a constant width in which coding modules are arranged in the order A, B, C, D, and a coding module B having mutually identical optical characteristics with a width of a known ratio;
D and the coding modules A, C, and E, each having the same optical properties that are different from those of the coding modules B and D, are A, B, C, D, A group of non-information of a constant width arranged in the order of E, and the decoding method has a known ratio of coding modules A, B,
measuring the width of each coding module of the coding segment comprising C, D, and E; and storing the measured width of each coding module in a storage device as the measurement occurs; The width ratio (A+
B) Coding modules A, B, C, D of known ratios by calculating and testing these ratios until it is found that /(C+D) and (B+C)/(D+E) are equal to 1. , E in the storage device, and the coding modules A, B, C, D, of known ratio in the storage device.
determining the storage location of E and the storage location of related information coding modules A, B, C, D; and determining the storage location of coding modules A, B, C of known ratio according to the ratio (A+C)/(B+D) , D, and E groups based on the measurement width; a step of correcting the measurement width of each coding module according to the calculated recording tolerance correction factor; and showing a delta distance characteristic. The width ratio (A
+B)/(C+D) and (A+D)/(B+C)
and obtain a pair of primary decoding ratios including 2/5, 3/4, 4/3 or 5/2; /4, that is, whether or not there is an ambiguity, the step of checking the primary reading ratio, and if the checking of the primary reading ratio includes an ambiguity, The primary decoding ratio (A+B)/(C+D) is 3/
If the primary reading ratio is 4/3, the secondary reading ratio A/B is calculated, and if the reading is 4/3, the secondary reading ratio C/D is calculated. unambiguously decoding the coded segment based only on the primary decoding ratio, or on one of a pair of primary decoding ratios and secondary decoding ratios which, if it includes said ambiguity, creates an ambiguity; A method for decoding a delta distance encoded segment, comprising:
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US78785577A | 1977-04-15 | 1977-04-15 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS53129535A JPS53129535A (en) | 1978-11-11 |
| JPS6242316B2 true JPS6242316B2 (en) | 1987-09-08 |
Family
ID=25142714
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP4337778A Granted JPS53129535A (en) | 1977-04-15 | 1978-04-14 | Method of and device for reading and decoding high packing density bar code |
Country Status (7)
| Country | Link |
|---|---|
| JP (1) | JPS53129535A (en) |
| BE (1) | BE866018A (en) |
| CA (1) | CA1110362A (en) |
| DE (1) | DE2811701C2 (en) |
| FR (1) | FR2387478A1 (en) |
| GB (1) | GB1604063A (en) |
| NL (1) | NL182105C (en) |
Families Citing this family (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4272675A (en) * | 1979-05-30 | 1981-06-09 | Ncr Corporation | Symbol processing system |
| US4282426A (en) * | 1979-05-30 | 1981-08-04 | Ncr Corporation | Slot scanning system |
| US4308455A (en) * | 1980-06-26 | 1981-12-29 | E. I. Du Pont De Nemours And Company | Method for decoding bar-coded labels |
| US4414468A (en) * | 1981-05-18 | 1983-11-08 | International Business Machines Corporation | Systematic error correction in bar code scanner |
| JPS57204977A (en) * | 1981-06-11 | 1982-12-15 | Nippon Denso Co Ltd | Method and device for bar code read |
| US4421978A (en) * | 1981-08-20 | 1983-12-20 | International Business Machines Corporation | Decoding method for multicharacter labels |
| JPS61152149U (en) * | 1986-02-27 | 1986-09-20 | ||
| JP2718442B2 (en) * | 1993-12-20 | 1998-02-25 | 富士通株式会社 | Barcode demodulation method and apparatus |
Family Cites Families (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US3784792A (en) * | 1972-03-29 | 1974-01-08 | Monarch Marking Systems Inc | Coded record and methods of and apparatus for encoding and decoding records |
| DE2310412C3 (en) * | 1973-03-02 | 1979-04-12 | Erwin Sick Gmbh Optik-Elektronik, 7808 Waldkirch | Method for reading codes and devices for carrying out the method |
| US3887792A (en) * | 1973-12-04 | 1975-06-03 | Scope Inc | Method and device for reading and decoding a delta-distance code |
| US3854036A (en) * | 1974-02-27 | 1974-12-10 | Singer Co | Tag reader to digital processor interface circuit |
| US3909787A (en) * | 1974-07-01 | 1975-09-30 | Ibm | Candidate selection processor |
| US3916154A (en) * | 1975-01-06 | 1975-10-28 | Singer Co | Method and circuitry for decoding a high density bar code |
| US4058708A (en) * | 1975-12-05 | 1977-11-15 | Msi Data Corporation | Bar code reader and decoder |
-
1978
- 1978-03-13 GB GB979878A patent/GB1604063A/en not_active Expired
- 1978-03-15 CA CA299,005A patent/CA1110362A/en not_active Expired
- 1978-03-17 DE DE19782811701 patent/DE2811701C2/en not_active Expired
- 1978-04-06 NL NL7803679A patent/NL182105C/en not_active IP Right Cessation
- 1978-04-12 FR FR7810765A patent/FR2387478A1/en active Granted
- 1978-04-14 BE BE186823A patent/BE866018A/en not_active IP Right Cessation
- 1978-04-14 JP JP4337778A patent/JPS53129535A/en active Granted
Also Published As
| Publication number | Publication date |
|---|---|
| CA1110362A (en) | 1981-10-06 |
| NL182105B (en) | 1987-08-03 |
| FR2387478B1 (en) | 1984-05-25 |
| GB1604063A (en) | 1981-12-02 |
| NL182105C (en) | 1991-05-16 |
| DE2811701C2 (en) | 1983-10-06 |
| FR2387478A1 (en) | 1978-11-10 |
| BE866018A (en) | 1978-07-31 |
| DE2811701A1 (en) | 1978-10-19 |
| JPS53129535A (en) | 1978-11-11 |
| NL7803679A (en) | 1978-10-17 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4354101A (en) | Method and apparatus for reading and decoding a high density linear bar code | |
| US5128527A (en) | Apparatus for reading a bar code | |
| EP0067414B1 (en) | Method and apparatus for reading a bar code | |
| US3868634A (en) | Reading of contrasting data by means of continuously attempting to decode read signals | |
| US4757206A (en) | Bar code reading method and apparatus | |
| US3784792A (en) | Coded record and methods of and apparatus for encoding and decoding records | |
| EP0066680B1 (en) | Systematic error correction in bar code scanner | |
| US4104514A (en) | Bar code reader and decoder | |
| US2885613A (en) | Binary comparator system for position control systems | |
| US5272322A (en) | Identification mark reading apparatus | |
| US4687912A (en) | Bar code reading method and apparatus | |
| US5537431A (en) | Method and apparatus for bar code reading and decoding | |
| JPS6242316B2 (en) | ||
| JPH0331980A (en) | Method and equipment for error correction | |
| US6267293B1 (en) | Bar code scanning system and method | |
| US4086478A (en) | Mark position detecting apparatus | |
| JPS583073A (en) | Bar-code read system | |
| JPH05328051A (en) | Image reader | |
| US3825726A (en) | Multiple formatting for record-controlled machines | |
| US3732401A (en) | Code reading apparatus | |
| CA1070837A (en) | Coded record and method of and system for interpreting the record | |
| JP2761251B2 (en) | Barcode reading method | |
| CA1039408A (en) | Bar code scanner | |
| JPH0239824B2 (en) | ||
| JPH04204101A (en) | Electronic counter |