JPS6212558B2 - - Google Patents
Info
- Publication number
- JPS6212558B2 JPS6212558B2 JP59041858A JP4185884A JPS6212558B2 JP S6212558 B2 JPS6212558 B2 JP S6212558B2 JP 59041858 A JP59041858 A JP 59041858A JP 4185884 A JP4185884 A JP 4185884A JP S6212558 B2 JPS6212558 B2 JP S6212558B2
- Authority
- JP
- Japan
- Prior art keywords
- signal
- character
- counter
- bar
- flip
- 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
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Electromagnetism (AREA)
- Artificial Intelligence (AREA)
- Toxicology (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Cash Registers Or Receiving Machines (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Controls And Circuits For Display Device (AREA)
Description
本発明は、幅変調バーコードの手動走査により
その幅変調バーコードを読み取る幅変調バーコー
ド読取り装置に関する。 本発明は、ブルース・ダブリユ・ドブラス
(Bruce W.Dobras)氏の米国再発行特許第28198
号に示されている装置の改良である。この米国再
発行特許に示された装置は、幅変調バーコードの
走査に使用できるものである。概説すると、ドブ
ラス氏の装置は幅変調バーコードを持つた記録又
はチケツト上を手動で走査する様に設計された光
学的バーコード走査用スタイラスを備えている。
この装置は、上述した米国再発行特許の第1図に
全体が示されており、5つの計数器、2つの加算
器、ゲートとステアリング論理回路のかなり複雑
な回路から成るバーコード解読論理回路を備えて
いる。 上述の米国再発行特許に述べられているドブラ
ス氏の装置は、不適当な文字が走査されたり、走
査速度が遅すぎたり早すぎたりした時に信号を出
すエラー・チエツク回路を備えている。これらの
基本的エラー・チエツクは大部分の間違つたデー
タの集収を防ぐには充分である。しかしながら、
余り頻繁には起こらないが、それでもデータ走査
工程の信頼性を減少させるような間違いの内の幾
つかを捕え損なつてしまう。 そこで、本発明の目的は、極くたまにしか起こ
らないものであれ、殆ど全ての走査エラーを検出
でき、どんな場合でもデータ集収工程にほぼ100
%の正確さを保証することのできるバーコード読
取り装置を提供することにある。本発明のその他
の目的は、走査エラーを検出するこの能力を、1
ユニツト当りのコストが低い簡単な装置にて達成
することである。 すなわち、本発明によれば、走査されるバー及
びスペースの相対的幅を比較する為の簡単な論理
と間違つたデータを排除する為の装置を備えてい
る幅変調バーコード読取り装置が提される。この
装置は、出願人の知る既存のどの装置よりも、エ
ラーに敏感なので、小売商店で勘定係としてよく
雇われている如き非熟練者によつても誤操作され
ることがない。この装置は、不注意又は故意に変
えられた記録の大部分については走査を拒否し、
またある商品に関する価格データを変えようとし
た場合に走査しても、データの集収を拒否する。 具体的に述べるならば、この幅変調バーコード
読取り装置は、従来のバーコード走査スタイラス
と従来のアナログ入力回路を使用している。そし
て、一連の各バー及びスペースコード要素の走査
に要する時間の間、装置内の1つの計数器が等間
隔のクロツク・パルスを数え、バー又はスペース
のコード要素が走査される各時間毎に、要素を走
査するのに要した時間に比例している数値がこの
計数器から出力される。そのあと、それら数値
は、比較され、エラーチエツクを受け、解読され
る。 このような幅変調バーコード読取り装置におい
て、本発明により幾つかの特殊なエラー・チエツ
クを行なう。これらのエラー・チエツクは、夫々
たまにしか会わない間違つた走査状態やデータの
誤りといつた特定のものに向けられている。これ
らのエラー・チエツクは装置全体としてその価格
をほんの僅か増大させるだけであり、これにより
装置が間違つた或いは変更されたデータを受け入
れるのを不可能にする。 操作者がバーコード文字の列の途中で手動走査
を始め、その結果データの列の中の最後の停止の
文字を横切る時に、度々出会う間違いの一つが起
こる。以前の走査器はこの停止文字の通過に応じ
てバーコード文字を探し始めた。本発明では上記
の如き停止文字には他のバーコード文字が続いて
いない事を検出し、スタイラスが正しい位置へ戻
されるまでは走査を始めない。また、本発明で
は、走査速度が遅すぎる時に走査を打切る機構が
このエラー・チエツクを行なう。 二つの隣接したバーの間のスペースを偶然又は
故意に埋め、これによつて通常の文字を開始又は
停止文字に変えてしまうことがある。このような
変更は、例えば価格を示すのに使われていたデジ
ツト数を減らし、商品の価格を減らしてしまう。
この種のエラーを防ぐために、本発明では最終停
止文字の走査に要する時間と、その最終停止文字
に続くスペースの走査に要する時間とを比較す
る。時期はずれの停止文字は必然的に間隔のつま
つたバーコード要素が引き続き、この状態は上記
の比較により検出される。そのような時期はずれ
の開始又は停止文字を含む記録からはどんなデー
タも受け付けない。この比較を行なう論理は、バ
ーコード文字が余りにゆつくり走査された場合に
もエラーの指示を出すのに使われる。 その他のエラーを起こす不適正な走査技術とし
てはスタイラスを1つのコードを記した部分から
第二のバーコード記録に動かすことであり、例え
ばある記録中の在庫数が上記のようにして別の記
録の価格と組合さつてしまうことがある。これが
起こるのを防ぐため、個別のバーコード要素を走
査するのに要する時間を計測するのと同じ計数器
の拡張したものが用いられ、二つの文字を隔てて
いるスペースを走査するのに要する時間に例えば
0.5秒の制限をつける。この制限時間もまた走査
されるべき記録の性質に従つて長くしたり縮めた
りできる。 本発明のその他の目的並びに利点は、以下の詳
細な明から明らかになるだろう。 本発明の望ましい実施例は、バーコード化され
た記録を手動走査した結果生ずる電気信号を解析
するのはデジタル論理である。これから述べる論
理システムは、走査の結果生ずる信号が先ず回路
により処理されて信号を安定な2レベルのデジタ
ル信号に変え、バーが走査される時は高く、バー
の間のスペースが走査される時には低くなるもの
であれば、従来の型のバーコード走査スタイラス
等と一緒に使用するのに適している。使用されて
いる走査スタイラスと計数化回路の詳細は本発明
には重要ではない。適当なスタイラスは、例えば
米国特許第3509353号又はフランス特許第1323278
号に示されている。適当な増幅回路は、例えばシ
ユミツト・トリガ型回路を駆動するための高利得
のオーデイオ増幅器を使つて組立てられる。増幅
器とシユミツト・トリガ型回路とはコンデンサー
で一緒に結合されるのが望ましく、2重レベル・
クランプ回路がコンデンサのシユミツト・トリガ
型端子に接続されるのが望ましい。その他の等価
な走査、信号増幅、クランプ、計数化機素を本発
明に使用することもできる。 第1図を参照すると、本発明の望ましい実施例
を表わしているバーコード読取り装置100が示
されている。この装置100は、バーコード文字
106の印刷してある記録部材104上を手動で
横断させられるスタイラス102を備えている。
バーコード文字106については第7図の上段に
更に詳細に図示されており、これから明らかなよ
うに、1つの文字は相互に離隔した4つの黒い棒
とそれらの間の3つの空白とで成る。スタイラス
102はバーコード文字106のための照明源と
文字106から反射された光を電気信号にかえる
手段を有するのが望ましい。電気信号はライン1
8を介して、その性質については既に簡単に述べ
た従来のアナログ入力回路110に送られる。ア
ナログ入力回路はスタイラス102の出力信号を
増幅し、リミツトし、計数化し、棒がスタイラス
により走査された時には高くなり、スペースが走
査された時には低くなるというANALOG信号
(アナログ信号)と呼ばれる2値信号を生ずる。
例えばANALOG信号(アナログ信号)はスペー
スが走査される時には零ボルトで、棒が走査され
る時は+10ボルトになる。 ANALOG信号は、アナログ入力回路110か
らの信号である。この信号はスタイラスがバーを
走査している場合の第1の値とスペースを走査し
ている場合の第2の値をとることができるが、ア
ナログ回路のみによつて処理された信号であつ
て、デジタル回路によつて処理されていない信号
である。従つて、本明細書ではこの信号を
ANALOG信号(アナログ信号)と称することと
する。このANALOG信号については第7図&第
7A図のANALOGとして示す波形の信号とな
る。 本発明は、ANALOG信号がその値の一方にど
れほど長く溜まつているかを計測して連続してい
るバーとスペースのコード要素の幅を測定するた
めに計数器114を使用することにしている。こ
の目的のため、装置100にはクロツク115が
設けられ、これから第一の高周波パルス(CAパ
ルス)と第二の高周波パルス(CBパルス)を生
じ、このCAパルスはCBパルスの逆となる波形を
作つている。クロツク115は常時動いているク
ロツクで、各パルスを1秒間に200Kパルスの割
合で出している。これらのパルスは連続的に計数
器14に送られる。 ANALOG信号の正負いずれの方向への変化に
も応じて、デジタル入力回路112は短時間の
2B信号パルスを生じて計数器114をクリアす
る2B信号パルスが終るほぼその時に、計数器1
14は発生したCBパルスを計数し始め、
ANALOG信号の揺動に対応して次の2B信号パル
スの生成があるまでこのパルスを計数し続ける。
スタイラス102がバーからスペースまたはスペ
ースからバーへの転移を行なう時毎にANALOG
信号が変化するので、計数器114はスタイラス
102が各バー及びスペースを走査するのに要す
る時間を計数することができる。そのような各要
素が走査された後、計数器114にはスタイラス
がバー又はスペースを走査するのに要した時間に
比例した数が記されて残る。2B信号パルスによ
り計数器114をクリアする直前に、計数器11
4の内容はシフト・レジスタ116にロードされ
る。このようにして記録部材104上に印刷され
た各文字106を連続した各バー及びスペースを
スタイラス102が横断するのに要した時間に比
例したデジタル数値がシフト・レジスタに連続的
にロードされる。 バー及びスペースコード情報を解読する工程の
次の段階は各文字のバー及びスペースコードの相
対的幅の決定である。誤り検出の目的のため、各
文字は1つの幅広のバーと3つの幅の狭いバー
と、1つの幅広のスペースと2つの狭いスペース
とを有している。文字の各バーの幅は同じ文字の
隣接した他のバーの幅と比較される。文字の各ス
ペースの幅は同じ文字の隣接する他のスペースの
幅と比較される。各文字は4つのバーを含むの
で、バー幅の比較は3回行なわれる。即ち、第一
のものの幅と第2の幅、第2の幅と第3の幅、第
3の幅と第4の幅との比較である。各文字は3つ
のスペースを含むので、スペースの幅の比較は2
回行なわれる。即ち、第1の幅と第2の幅、第2
の幅と幅3の幅の比較である。各文字についてこ
のように5回の比較が行なわれる。各比較の結果
は1つのバー(又はスペース)がその他のバー
(又はスペース)より広いとか、バー(スペー
ス)はほぼ同じ幅であるとか、1つのバー(スペ
ース)がその他のバー(スペース)より狭いとい
うことになる。「より大きい」という結果には2
進数「10」を、「より小さい」という結果には2
進数「01」を、そして「同じ幅」の結果には2進
数「00」を割当てると、5回の比較の結果は2進
数が5対、即ち、10ビツトで表わされる。それか
らこの10ビツト値はバー及びスペースのコード要
素のセツトに対応した文字の所望の2進化表記法
に簡単に解読される。10ビツトで示される数は、
例えば、対応する文字コードを含んだ読取り専用
記憶装置中の記憶場所をアドレスするのに使われ
る。 第1のバー又はスペースが第2のバー又はスペ
ースより幅が広いか、狭いか、又は同じ幅である
かを決定するのに使われる一般的な数学的技術
は、第1のバー又はスペースの走査持続時間に1
より大きな第1の定数を掛け、1より小さな第2
の定数を掛け、それからその結果と第2のバー又
はスペースの走査継続時間とを比較することであ
る。第1のバー又はスペースの継続時間に1より
大きな定数を掛けたものがまだ第2のバー又はス
ペースの継続時間より短かかつたら、第2のバー
又はスペースが第1のバーまたはスペースより幅
広であると余裕を持つて推定できる。第1のバー
又はスペースの継続時間に1より小さな定数を掛
けたものが第2のバー又はスペースの継続時間よ
りまだ大きければ、第2のバー又はスペースより
狭いと余裕を持つて推定できる。もし上記の二つ
の判定基準のどちらもが満足されていなければ、
二つのバー又はスペースはほとんど同じ幅である
と推定される。 上記の比較を実行する為に使用される特別の装
置が第1図に示されている。シフト・レジスタ1
16は夫々×1、×2、×4、×8と名前の付いた
4つの並列信号出力を有する。これらは単にシフ
ト・レジスタ116の各出力端に接続している出
力ラインである。先ずバー又はスペースコード要
素の、時間で測つた幅を表わす2進数が計数器1
14からシフト・レジスタ116にロードされ
る。以下では「計数値」と呼ぶこの2進数は、そ
の後すぐにシフト・レジスタ116中を前進させ
られ、計数値から成る2進数字が各信号ライン×
1、×2、×4、×8上に直列形式で表われる。同
じ信号が各信号ラインに示されるが、信号ライン
の番号の高い順に僅かに時間が遅れて信号が表わ
れる。より精密に言えば、計数値の最下位のビツ
トがまず×1信号ライン上に表われる。×1信号
ライン上に計数値の下から二番目の位のビツトが
表われた時に、この前と同じ最下位のビツトが×
2信号ライン上に再び表われる。下から二番目の
位のビツトが×2信号ラインに表われ、下から第
三位のビツトが×1信号ラインに表われた時に、
この最下位のビツトが×4信号ラインに表われ
る;等々である。 このシフト・レジスタ116から×1、×2、×
4、×8の信号ラインへ流れるデータ・ビツトの
時間的桁送りは、各ラインに送られた計数値にそ
のラインに割当てられた数を乗ずるのと同等であ
る。それで×1信号ラインに送られた計数値は1
倍され、×2信号ラインに送られた計数値は2倍
され、等々である。何故そうかの説明にはを具体
的数値を用いて説明する。 10進数9、680を考えよう。もしこの数の各桁
が1つ右に桁送りされ、右側に零が付加されれ
ば、この数は実効的には10倍され、96、800にな
る。10が10進数系では基数なので、桁を左へ送る
ことは10倍することと等価である。このことか
ら、2進数がその桁を全て1ビツトの位置だけ左
に送り、右側に零が加われば、2進数は実効的に
は2倍される。例えば10進数で5に等しい2進数
101は1ビツトの桁送りの後は、10進数で10に等
しい2進数1010になる。2進数を1ビツトの位置
だけ桁送りすることは、その数を2倍することに
等しいことはこれで明らかであろう。シフト・レ
ジスタ116は実効的には連続している信号ライ
ン×1、×2、×4、×8に送られた計数値にその
様な1ビツト位置の桁送りをしており、それで各
ラインに送られた計数値を示された定数倍だけし
ている。 第1の計数値と夫々1より大きな定数及び1よ
り小さな定数を掛けた第2の計数値との比較を実
行するために、各計数値の5倍、8倍、3倍を計
算する。それから、第1の計数値の5倍と第2の
計数値の8倍及び第2の計数値の3倍とを比較す
る。第1の計数値の5倍と第2の計数値の8倍の
比較は、第1の計数値と第2の計数値の8/5倍と
の比較に等しく、それで第1の計数値と第2の計
数値に1より大きな定数を掛けたものとの比較に
等しい。同様に第1の計数値の5倍と第2の計数
値の3倍との比較は第1の計数値と第2の計数値
の3/5倍との比較に等しく、それで第1の計数値
と第2の計数値を1より小さな定数倍したものと
の比較に等しい。 計数値の5倍は計数値の4倍と計数値の1倍を
加えることで簡単に計算される。シフト・レジス
タから伸びている×4の信号ラインは各計数値を
4倍した数を直列に表わしており、シフト・レジ
スタ116から伸びる×1の信号ラインは各計数
値に等しい数を直列で表わしている。これら2つ
の直列数は直列加算器118で加算され、和は加
算器118の出力信号で示される。この出力信号
は基本計数値の5倍なので、×5と名付けられ
る。同様にして、基本計数値の3倍は、入力とし
てシフト・レジスタ116からの出力信号×1と
×2を受けて、これらを加算して×3の信号を計
算する直列加算器120により計算される。 バーの幅が他のバーの幅と比較され、スペース
の幅が他のスペースの幅と比較されるようにして
いる。この目的の為、時間で測つた第1のバー及
びそれに続くスペースの幅に対応する計数値を記
憶し、第1のバーの幅を表わす計数値が次に出て
くるバーの幅を表わす計数値と比較できる様にす
るのが必要である。このため加算器118の×5
出力は、計数器114に表わされた計数値の5倍
の数を完全に2つ蓄積するだけの充分な容量を持
つているシフト・レジスタ121に送られる。シ
フト・レジスタ121の出力はDELAYED×5信
号と呼ばれる。入力シフト・レジスタ116がバ
ーの長さに比例した計数値を表わしている時、シ
フト・レジスタ121は最も近い時期に走査した
バーの長さに比例した計数値の5倍を示している
様に、シフト・レジスタの長さを選ぶ。直列加算
器122はそれからDELAYED×5信号ラインと
×8信号ラインで表わされた2進数の差を計算
し、つい最近走査されたバーは以前に走査された
バーより狭いかどうかを決定する。もし×8信号
ラインで表わされた数がDELAYED×5信号ライ
ンで表わされた数より小さいと判明すれば、加算
器122はより小さいと認定したことを示すLES
と称する高レベルの出力信号を生ずる。もし×8
信号ラインで表わされる数が遅延×5信号ライン
で表わされる数に等しいか、より小さいならば、
加算器122は低レベルの出力信号を出す。同時
に、もう一つ別の加算器124はDELAYED×5
信号と×3信号とにより表わされる2進数の間の
差を計算して、それでつい最近走査したバーが以
前に走査したバーより幅が広いかどうかを決定す
る。もし×3信号ラインで表わされた数が
DELAYED×5信号ラインで表わされる数より大
きいと判れば、加算器124はより大きいと認定
したことを示すGTR信号と称する高レベルの出
力信号を出す。そうでなければ、加算器124は
低レベルの信号を出す。このようにして、加算器
122及び124は隣接するバーの相対的幅を比
較し、それから以前に説明した2進化幅コードに
従つてつい最近走査したバーがそれ以前に走査し
たバーより幅が広いか、同じ幅か、幅が狭いかを
示すことのできるLES信号及びGTR信号を生ず
る。隣接するスペースの相対幅も全く同様に比較
できる。 加算器122の出力信号はシフト・レジスタ1
26に送られ、加算器124の出力はシフト・レ
ジスタ128に送られる。シフト・レジスタ12
6及び128は1つの文字に対する全部で5つの
幅比較の結果を表わしている2進数を蓄積できる
ほど充分に長い。これら2つのシフト・レジスタ
に表わされた10ビツト値を適正に解読すること
は、1000以上の記憶場所を有する読取り専用記憶
装置のサービスが必要である。そのため本実施例
では、128個の記憶場所を有する小さなサイズの
読取り専用記憶装置130を設け、バー及びスペ
ースコードの比較情報に対してそれぞれ別々解読
している。 デジタル入力回路により生じた第7図にBLK
として示すBLK信号(黒信号)は読取り専用記
憶装置130のアドレス・ライン入力に送られ、
読取り専用記憶装置130がある瞬間にバー又は
スペースの幅に対する比較情報を受けているかど
うかをそれに知らせる。それからシフト・レジス
タ126及び128の出力が交互に選ばれて、読
取り専用記憶装置の残りのアドレス・ライン入力
に送られる。このようにしてバー及びスペースの
幅比較のデータの可能な各組合により、読取り専
用記憶装置130内の特定の場所からデータを検
索させることができる。シフト・レジスタの出力
が交互に選ばれて、ある瞬間にはバー(若しくは
スペース)の比較データだけが読取り専用記憶装
置に送られる。 記憶装置130の4つの出力は、バーラツチ1
32に送られる。シフト・レジスタ126及び1
28によりバー幅比較のデータが夫々示された後
記憶装置130により示されたデータを蓄積する
為ラツチ132が作動される。読取り専用記憶装
置130がバー又はスペースの情報を解読してい
るかどうかを知らせるBLK信号(黒信号)によ
り、ラツチ132が作動される。記憶装置130
の3つの出力がスペースラツチ134に送られ
る。シフト・レジスタ126及び128によりス
ペース幅の比較データが夫々提示された後、ラツ
チ134は記憶装置130により示されたデータ
を蓄積するため作動される。ラツチ134は
BLK信号(黒信号)の欠如で作動し、スペース
の比較に対応するデータだけを蓄積する。このよ
うにして文字の棒及び空白の比較は別々に解読さ
れ、ラツチ132及び134の中に蓄積されてラ
イン136にデータ出力DATAOUTを同時に表
わす。 本発明の望ましい実施例では読取り専用記憶装
置130は比較情報を各文字のバー及びスペース
の実際の幅に対して単純に2進情報に変換する。
文字内には4つのバーがあるので、読取り専用記
憶装置130はバー比較情報を解釈すると4ビツ
トの出力データを出す。文字中には3つしかスペ
ースがないので、スペース比較情報を解釈すると
読取り専用記憶装置130は3ビツトの出力デー
タを生ずる。第1図に図解されている如く、2つ
のラツチ132及び134の出力は組合せられ、
それで走査された文字中に幅の変化しているバー
及びスペースコードが表われるのと同じ順序でバ
ー及びスペースコードのデータ出力
(DATAOUT)がライン136に表われる。これ
とは別に出力(DATAOUT)は第5図に図解さ
れている如くでも、あるいはその他のどんな方法
で表わされても構わない。 バー及びスペースラツチ132及び134から
の出力信号でアドレスされる第2の読取り専用記
憶装置138は特定の開始文字の存在を確かめ、
また検索データに対するバリテイーその他のルー
チンエラー・チエツクを行なう。様々の制御及び
その他の出力信号が読取り専用記憶装置138か
ら制御論理140へ入力される。 制御論理140はシステム全体の操作を管理制
御し、また検索され解読されたデータが送られる
外部データ記憶装置又は使用装置の機能とシステ
ム操作を調整する。その他の機能の中で、制御論
理140は走査が前進方向に行なわれているか、
後退方向であるかを示すためのFWD信号(前進
信号)及びBWD信号(後退信号)を生ずる。エ
ラーの場合には制御論理140はERM信号(メ
ツセージにエラー信号)を生ずる。メツセージの
終了に出会うと、制御論理はEOMD信号(メツ
セージ終了信号)を生じ、そしてメツセージが正
確に入つた時にはGDRD信号(読取り良好信号)
も生ずる。有効な開始文字がバーコード化メツセ
ージ中でまず見つけられると、制御論理140は
短時間のSTARTPパルス信号(開始パルス信
号)を生じ、それから第2の開始文字が後につい
ている完全な文字のセツトがメツセージから読取
られるまで連続的にSTART信号(開始信号)を
生ずる。メツセージが読み込まれてしまつた後、
またはエラーが見つけ出された後、制御論理14
0はRES信号(リセツト信号)を出して、装置
100全体をリセツトする。 以下の点でより詳細に説明される如く、如何な
る走査操作の間にも自動的に実行されている様々
のエラー・チエツクの結果を示す種々のエラー信
号をも、制御論理140は入力信号として受けて
いる。 バーコード読取装置100はデータを外部デー
タ記憶装置(図示せず)に送るようにも設計され
ている。装置100はFRMT信号(制御信号)
により制御されていて、FRMT信号(制御信
号)がない時を除いては、何も出力データを出さ
ない。 その他のシステム信号も外部データ記憶装置又
は使用装置に送ることができる。各バーコード文
字のデジタル表現は通常DATAOUT信号(デー
タ出力信号)ライン136を通つて外部装置に送
られる。データがDATAOUT信号ライン136
から受け取られる時とはTAKEDATA信号(デ
ータ受け取り信号、JO信号と呼ばれる)が合図
する。データが受け取られる時には、
TAKEDATA信号(データ受け取り信号)が終
了している。 上記の如く、DATAOUT信号(データ出力信
号)及びTAKEDATA信号(データ受け取り信
号、JO信号)は、単に、外部装置にデータが伝
えられるか、又は外部装置からデータを受け取る
かを外部装置に指示する信号にすぎない。 本発明の一態様では有効なメツセージはどれも
特定の開始コード文字で始まり、特定の停止コー
ド文字で終わるように企画されている。本発明の
望ましい実施例では、開始及び停止コード文字は
特別な文字で、どちら方向からも読み取られるよ
うになつており、左から右へ走査した時の開始文
字は右から左へ走査したとき停止文字として読み
取られ、また左から右へ走査したとのもの停止文
字は逆方向走査時には開始文字として読取られる
ように作られており、これにより、メツセージの
開始または停止の信号の他に走査の行なわれてい
る方向をも示す。バーコードの走査は記録のどん
な場所からでも(文字の途中からでさえも)始め
られる。典型的な場合には走査スタイラスの使用
に未熟な従業員が、鉛筆で印刷物に線を引く時と
同じような動作でスタイラスをバーコード上に簡
単に乗せ、スタイラスを何度もバーコードの上で
前後に動かしてしまうことがある。この動作は記
録部分の中央で始まるかも知れないし、記録部分
の側端から始まるかも知れない。スタイラスはず
つと記録部材を横切つて、記録部分を越えた余白
に行くかも知れないし、あまり動かさないで記録
部分の終りを示す停止文字を含むに至らないかも
知れない。スタイラスは、一時的にバーコードを
離れ、別の点のバーコードに再び入るような角度
にあるかも知れない。本発明では全ての誤走査を
無視して、片側から始まつて1連続動作の内に逆
側にまでずつと続いた時にもたらされる、有効な
データのみを受取る。 この目的の為、バーコード読取装置100はま
ず有効な開始コード文字に対応するバーコードパ
ターンに出合うまでは、受け取る走査情報を全て
拒否することが必要である。その後、装置100
は各文字が始まり、終つた所を正確に記憶して、
4つのバー及び3つのスペースから成る完全なパ
ターンを走査し終つた後でのみ文字情報が読取り
専用記憶装置により解読されることが必要であ
る。 計数器142がこれら両方の役割を果たす。計
数器142は、通常J0、J1、J2、J3、J4、J5、
J6、J7の8つの異なる状態をへて計数し、それか
ら再び初期状態J0へ戻るという8状態ジヨンソン
計数器である。しかし制御論理140がSTART
信号を出さない時は、この信号の欠如が計数器1
42をJ0状態にロツクし、計数器142の進行を
妨げる。計数器142がJ0状態にある時、この計
数器はJ0出力信号を出して、この信号により読取
り専用記憶装置138が2つのラツチ132と1
34に記憶されたデータをアドレス入力信号とし
て受信し、一連の制御信号144を連続的に出
す。その制御信号144のうちのいくつかはバー
及びスペースのラツチ132及び134が有効な
開始又は停止文字に対応したコードを表わしてい
るかどうかを示している。次に、記録部材の手動
走査が開始されると、記録部材上に出合う明暗及
び暗明の転移模様を決めるデータが連続的に読取
り専用記憶装置138に送られる。この時点では
制御論理140はSTART信号を出していないの
で、ラツチ132及び134からライン136に
出されるデータDATAOUTは、外部装置がライ
ン136と接続されていても、単に無視されてし
まう。 やがてスタイラス102は有効な開始(又は停
止)文字を越えて引かれる。スタイラス102が
その様な文字に続くスペースに達すると、開始文
字中のバー及びスペースの幅を表わす2進データ
をラツチ132及び134にて記憶させる。読取
り専用記憶装置138は有効な開始コード文字の
コードを記憶する。それに応じて、読取り専用記
憶装置は制御論理140に制御信号144を送
る。論理140はSTARTPパルス(開始パル
ス)を生じさせ、START信号(開始信号)を高
レベルに保持させる。高レベルのSTART信号
(開始信号)がジヨンソン計数器142を解放
し、計数器がPROCESS信号(プロセス信号)の
変化を計数し始めるようにする。走査がバーから
スペースへと進行する各瞬間毎にPROCESS信号
(プロセス信号)が出されるので、計数器142
はバーからスペース及びスペースからバーの転移
を数え始める。4つのバーから成る文字を完全に
走査した時バー−スペース及びスペース−バーの
転移数と等しい8という計数に達すると計数器1
42はリセツトする。走査が各文字の最後のバー
にかかつた直後にJ0信号が高くなり、隣接する文
字を隔てているスペースの走査にかかる直後まで
高いままである。J0信号の終了はデータ出力13
6で完全な文字を表わすデータDATAOUTが入
手可能な時を示している。J0信号がない時、記憶
装置138を使用禁止にし、該ラツチ132及び
134が2つの文字部分に関するデータを有して
いる時にでもそのラツチにより表示されたデータ
に対して記憶装置138がエラー・チエツクを行
なわないようにしている。 PROCESS信号は、スタイラスが記録部分のバ
ーからスペースへの転移を検出した場合にも、ま
たスペースからバーへの転移を検出した場合に
も、0から1に、その値が変化する。そして、こ
のPROCESS信号は、下記に詳述する如く、所定
の時間が経過すると1値から0値にその値が変化
する。 エラー・チエツクは第1図に示される様々の構
成要素により行なわれる。デジタル入力回路11
2は、走査がバーコード読取装置100の適正な
操作を可能にする速度で進行していることを確か
めるため、各バー及びスペースの走査の継続時間
を測定する。正確に処理されるには余りにも速く
バー又はスペースが走査されているのに出会う
と、回路112はUER信号(速過ぎエラー信
号)を出し、それは制御論理140へ送られて走
査を停止する。ある文字中で走査が余りに遅い時
には、ゲート146は予め決められた計数に達し
ている計数器114に対して、またも走査を阻止
できるオーバー・フローを示すOVFL信号(オー
バー・フロー信号)を出す。計数器148は計数
器114の最上位出力と直列に接続されていて、
延べの時間間隔(例えば、スタイラスが1つの文
字から次へと動くのに要する時間)が測定可能で
ある。ここで重要なのは、文字間の時間は制限さ
れているのでスタイラスが文字の間の1列のバー
コード記録から他のバーコード記録へ移されるの
はできないようにすることである。そこで文字間
の時間が長過ぎる時には、計数器148は、時間
切れであることを示し走査を阻止できるTIMOT
信号(時間切れ信号)を出す。 通常区切りの停止文字に出会うと走査は完了す
る。短距離の間にはそのような文字に他の文字が
続くことはない。もしそうならば停止文字の出現
が早過ぎる事を示し、バーコードが変えられた事
を示すからである。このため計数器150は各文
字を走査するのにかかる時間を計測する。区切り
の停止文字に出会つた後、計数器150は制御論
理140により生じたEOMD信号(メツセージ
終了信号)によりロツクされる。その文字の最後
のバーに続くスペースを走査している間に、比較
回路152は、スペースの幅を表わす計数器11
4の出力と、最後の停止文字の幅を表わす計数器
150の出力とを比較する。スペースが最後の停
止文字のある倍数以上であれば、比較回路152
はMATCH信号(マツチ信号)を出して、最終停
止文字に続く適当に長いスペースがあると制御論
理140に伝える。本発明の望ましい実施例で
は、MATCH信号(マツチ信号)が出る前の最後
のバーに続くスペースは少なくとも0.07inch
(1.8mm)の幅がなくてはいけない。 システムは他の文字が続いていない最初の開始
文字には応じない。速度不足の走査を検出する為
に使われる機構が、最初の開始文字に続くスペー
スを走査するのにかかる時間を測るのにも使われ
る。スペースが異常に幅広いなら、開始文字は拒
否される。それでバーコード領域の中心から外側
へ進行する走査運動は無視される。記録部材の側
端で始まる走査運動だけが有効になる。それで未
熟練操作者が記録部分上のどんな点からジグザグ
の走査運動を開始しても良く、システムは記録の
一端から他端への完全なバーコード上を通過する
とき全てからのデータを捕える。 本発明の望ましい実施例では、相補型対称
(complementary−symmetry)金属−酸化膜−
半導体集積回路を使つて構成されている。特にニ
ユージヤージー州サマービルのR.C.A.株式会社
の固体物理部門製造「COS−MOS」(商標)集積
回路が望ましい実施例の組立てに使われる。以下
は使用されている集積回路の略述である。
その幅変調バーコードを読み取る幅変調バーコー
ド読取り装置に関する。 本発明は、ブルース・ダブリユ・ドブラス
(Bruce W.Dobras)氏の米国再発行特許第28198
号に示されている装置の改良である。この米国再
発行特許に示された装置は、幅変調バーコードの
走査に使用できるものである。概説すると、ドブ
ラス氏の装置は幅変調バーコードを持つた記録又
はチケツト上を手動で走査する様に設計された光
学的バーコード走査用スタイラスを備えている。
この装置は、上述した米国再発行特許の第1図に
全体が示されており、5つの計数器、2つの加算
器、ゲートとステアリング論理回路のかなり複雑
な回路から成るバーコード解読論理回路を備えて
いる。 上述の米国再発行特許に述べられているドブラ
ス氏の装置は、不適当な文字が走査されたり、走
査速度が遅すぎたり早すぎたりした時に信号を出
すエラー・チエツク回路を備えている。これらの
基本的エラー・チエツクは大部分の間違つたデー
タの集収を防ぐには充分である。しかしながら、
余り頻繁には起こらないが、それでもデータ走査
工程の信頼性を減少させるような間違いの内の幾
つかを捕え損なつてしまう。 そこで、本発明の目的は、極くたまにしか起こ
らないものであれ、殆ど全ての走査エラーを検出
でき、どんな場合でもデータ集収工程にほぼ100
%の正確さを保証することのできるバーコード読
取り装置を提供することにある。本発明のその他
の目的は、走査エラーを検出するこの能力を、1
ユニツト当りのコストが低い簡単な装置にて達成
することである。 すなわち、本発明によれば、走査されるバー及
びスペースの相対的幅を比較する為の簡単な論理
と間違つたデータを排除する為の装置を備えてい
る幅変調バーコード読取り装置が提される。この
装置は、出願人の知る既存のどの装置よりも、エ
ラーに敏感なので、小売商店で勘定係としてよく
雇われている如き非熟練者によつても誤操作され
ることがない。この装置は、不注意又は故意に変
えられた記録の大部分については走査を拒否し、
またある商品に関する価格データを変えようとし
た場合に走査しても、データの集収を拒否する。 具体的に述べるならば、この幅変調バーコード
読取り装置は、従来のバーコード走査スタイラス
と従来のアナログ入力回路を使用している。そし
て、一連の各バー及びスペースコード要素の走査
に要する時間の間、装置内の1つの計数器が等間
隔のクロツク・パルスを数え、バー又はスペース
のコード要素が走査される各時間毎に、要素を走
査するのに要した時間に比例している数値がこの
計数器から出力される。そのあと、それら数値
は、比較され、エラーチエツクを受け、解読され
る。 このような幅変調バーコード読取り装置におい
て、本発明により幾つかの特殊なエラー・チエツ
クを行なう。これらのエラー・チエツクは、夫々
たまにしか会わない間違つた走査状態やデータの
誤りといつた特定のものに向けられている。これ
らのエラー・チエツクは装置全体としてその価格
をほんの僅か増大させるだけであり、これにより
装置が間違つた或いは変更されたデータを受け入
れるのを不可能にする。 操作者がバーコード文字の列の途中で手動走査
を始め、その結果データの列の中の最後の停止の
文字を横切る時に、度々出会う間違いの一つが起
こる。以前の走査器はこの停止文字の通過に応じ
てバーコード文字を探し始めた。本発明では上記
の如き停止文字には他のバーコード文字が続いて
いない事を検出し、スタイラスが正しい位置へ戻
されるまでは走査を始めない。また、本発明で
は、走査速度が遅すぎる時に走査を打切る機構が
このエラー・チエツクを行なう。 二つの隣接したバーの間のスペースを偶然又は
故意に埋め、これによつて通常の文字を開始又は
停止文字に変えてしまうことがある。このような
変更は、例えば価格を示すのに使われていたデジ
ツト数を減らし、商品の価格を減らしてしまう。
この種のエラーを防ぐために、本発明では最終停
止文字の走査に要する時間と、その最終停止文字
に続くスペースの走査に要する時間とを比較す
る。時期はずれの停止文字は必然的に間隔のつま
つたバーコード要素が引き続き、この状態は上記
の比較により検出される。そのような時期はずれ
の開始又は停止文字を含む記録からはどんなデー
タも受け付けない。この比較を行なう論理は、バ
ーコード文字が余りにゆつくり走査された場合に
もエラーの指示を出すのに使われる。 その他のエラーを起こす不適正な走査技術とし
てはスタイラスを1つのコードを記した部分から
第二のバーコード記録に動かすことであり、例え
ばある記録中の在庫数が上記のようにして別の記
録の価格と組合さつてしまうことがある。これが
起こるのを防ぐため、個別のバーコード要素を走
査するのに要する時間を計測するのと同じ計数器
の拡張したものが用いられ、二つの文字を隔てて
いるスペースを走査するのに要する時間に例えば
0.5秒の制限をつける。この制限時間もまた走査
されるべき記録の性質に従つて長くしたり縮めた
りできる。 本発明のその他の目的並びに利点は、以下の詳
細な明から明らかになるだろう。 本発明の望ましい実施例は、バーコード化され
た記録を手動走査した結果生ずる電気信号を解析
するのはデジタル論理である。これから述べる論
理システムは、走査の結果生ずる信号が先ず回路
により処理されて信号を安定な2レベルのデジタ
ル信号に変え、バーが走査される時は高く、バー
の間のスペースが走査される時には低くなるもの
であれば、従来の型のバーコード走査スタイラス
等と一緒に使用するのに適している。使用されて
いる走査スタイラスと計数化回路の詳細は本発明
には重要ではない。適当なスタイラスは、例えば
米国特許第3509353号又はフランス特許第1323278
号に示されている。適当な増幅回路は、例えばシ
ユミツト・トリガ型回路を駆動するための高利得
のオーデイオ増幅器を使つて組立てられる。増幅
器とシユミツト・トリガ型回路とはコンデンサー
で一緒に結合されるのが望ましく、2重レベル・
クランプ回路がコンデンサのシユミツト・トリガ
型端子に接続されるのが望ましい。その他の等価
な走査、信号増幅、クランプ、計数化機素を本発
明に使用することもできる。 第1図を参照すると、本発明の望ましい実施例
を表わしているバーコード読取り装置100が示
されている。この装置100は、バーコード文字
106の印刷してある記録部材104上を手動で
横断させられるスタイラス102を備えている。
バーコード文字106については第7図の上段に
更に詳細に図示されており、これから明らかなよ
うに、1つの文字は相互に離隔した4つの黒い棒
とそれらの間の3つの空白とで成る。スタイラス
102はバーコード文字106のための照明源と
文字106から反射された光を電気信号にかえる
手段を有するのが望ましい。電気信号はライン1
8を介して、その性質については既に簡単に述べ
た従来のアナログ入力回路110に送られる。ア
ナログ入力回路はスタイラス102の出力信号を
増幅し、リミツトし、計数化し、棒がスタイラス
により走査された時には高くなり、スペースが走
査された時には低くなるというANALOG信号
(アナログ信号)と呼ばれる2値信号を生ずる。
例えばANALOG信号(アナログ信号)はスペー
スが走査される時には零ボルトで、棒が走査され
る時は+10ボルトになる。 ANALOG信号は、アナログ入力回路110か
らの信号である。この信号はスタイラスがバーを
走査している場合の第1の値とスペースを走査し
ている場合の第2の値をとることができるが、ア
ナログ回路のみによつて処理された信号であつ
て、デジタル回路によつて処理されていない信号
である。従つて、本明細書ではこの信号を
ANALOG信号(アナログ信号)と称することと
する。このANALOG信号については第7図&第
7A図のANALOGとして示す波形の信号とな
る。 本発明は、ANALOG信号がその値の一方にど
れほど長く溜まつているかを計測して連続してい
るバーとスペースのコード要素の幅を測定するた
めに計数器114を使用することにしている。こ
の目的のため、装置100にはクロツク115が
設けられ、これから第一の高周波パルス(CAパ
ルス)と第二の高周波パルス(CBパルス)を生
じ、このCAパルスはCBパルスの逆となる波形を
作つている。クロツク115は常時動いているク
ロツクで、各パルスを1秒間に200Kパルスの割
合で出している。これらのパルスは連続的に計数
器14に送られる。 ANALOG信号の正負いずれの方向への変化に
も応じて、デジタル入力回路112は短時間の
2B信号パルスを生じて計数器114をクリアす
る2B信号パルスが終るほぼその時に、計数器1
14は発生したCBパルスを計数し始め、
ANALOG信号の揺動に対応して次の2B信号パル
スの生成があるまでこのパルスを計数し続ける。
スタイラス102がバーからスペースまたはスペ
ースからバーへの転移を行なう時毎にANALOG
信号が変化するので、計数器114はスタイラス
102が各バー及びスペースを走査するのに要す
る時間を計数することができる。そのような各要
素が走査された後、計数器114にはスタイラス
がバー又はスペースを走査するのに要した時間に
比例した数が記されて残る。2B信号パルスによ
り計数器114をクリアする直前に、計数器11
4の内容はシフト・レジスタ116にロードされ
る。このようにして記録部材104上に印刷され
た各文字106を連続した各バー及びスペースを
スタイラス102が横断するのに要した時間に比
例したデジタル数値がシフト・レジスタに連続的
にロードされる。 バー及びスペースコード情報を解読する工程の
次の段階は各文字のバー及びスペースコードの相
対的幅の決定である。誤り検出の目的のため、各
文字は1つの幅広のバーと3つの幅の狭いバー
と、1つの幅広のスペースと2つの狭いスペース
とを有している。文字の各バーの幅は同じ文字の
隣接した他のバーの幅と比較される。文字の各ス
ペースの幅は同じ文字の隣接する他のスペースの
幅と比較される。各文字は4つのバーを含むの
で、バー幅の比較は3回行なわれる。即ち、第一
のものの幅と第2の幅、第2の幅と第3の幅、第
3の幅と第4の幅との比較である。各文字は3つ
のスペースを含むので、スペースの幅の比較は2
回行なわれる。即ち、第1の幅と第2の幅、第2
の幅と幅3の幅の比較である。各文字についてこ
のように5回の比較が行なわれる。各比較の結果
は1つのバー(又はスペース)がその他のバー
(又はスペース)より広いとか、バー(スペー
ス)はほぼ同じ幅であるとか、1つのバー(スペ
ース)がその他のバー(スペース)より狭いとい
うことになる。「より大きい」という結果には2
進数「10」を、「より小さい」という結果には2
進数「01」を、そして「同じ幅」の結果には2進
数「00」を割当てると、5回の比較の結果は2進
数が5対、即ち、10ビツトで表わされる。それか
らこの10ビツト値はバー及びスペースのコード要
素のセツトに対応した文字の所望の2進化表記法
に簡単に解読される。10ビツトで示される数は、
例えば、対応する文字コードを含んだ読取り専用
記憶装置中の記憶場所をアドレスするのに使われ
る。 第1のバー又はスペースが第2のバー又はスペ
ースより幅が広いか、狭いか、又は同じ幅である
かを決定するのに使われる一般的な数学的技術
は、第1のバー又はスペースの走査持続時間に1
より大きな第1の定数を掛け、1より小さな第2
の定数を掛け、それからその結果と第2のバー又
はスペースの走査継続時間とを比較することであ
る。第1のバー又はスペースの継続時間に1より
大きな定数を掛けたものがまだ第2のバー又はス
ペースの継続時間より短かかつたら、第2のバー
又はスペースが第1のバーまたはスペースより幅
広であると余裕を持つて推定できる。第1のバー
又はスペースの継続時間に1より小さな定数を掛
けたものが第2のバー又はスペースの継続時間よ
りまだ大きければ、第2のバー又はスペースより
狭いと余裕を持つて推定できる。もし上記の二つ
の判定基準のどちらもが満足されていなければ、
二つのバー又はスペースはほとんど同じ幅である
と推定される。 上記の比較を実行する為に使用される特別の装
置が第1図に示されている。シフト・レジスタ1
16は夫々×1、×2、×4、×8と名前の付いた
4つの並列信号出力を有する。これらは単にシフ
ト・レジスタ116の各出力端に接続している出
力ラインである。先ずバー又はスペースコード要
素の、時間で測つた幅を表わす2進数が計数器1
14からシフト・レジスタ116にロードされ
る。以下では「計数値」と呼ぶこの2進数は、そ
の後すぐにシフト・レジスタ116中を前進させ
られ、計数値から成る2進数字が各信号ライン×
1、×2、×4、×8上に直列形式で表われる。同
じ信号が各信号ラインに示されるが、信号ライン
の番号の高い順に僅かに時間が遅れて信号が表わ
れる。より精密に言えば、計数値の最下位のビツ
トがまず×1信号ライン上に表われる。×1信号
ライン上に計数値の下から二番目の位のビツトが
表われた時に、この前と同じ最下位のビツトが×
2信号ライン上に再び表われる。下から二番目の
位のビツトが×2信号ラインに表われ、下から第
三位のビツトが×1信号ラインに表われた時に、
この最下位のビツトが×4信号ラインに表われ
る;等々である。 このシフト・レジスタ116から×1、×2、×
4、×8の信号ラインへ流れるデータ・ビツトの
時間的桁送りは、各ラインに送られた計数値にそ
のラインに割当てられた数を乗ずるのと同等であ
る。それで×1信号ラインに送られた計数値は1
倍され、×2信号ラインに送られた計数値は2倍
され、等々である。何故そうかの説明にはを具体
的数値を用いて説明する。 10進数9、680を考えよう。もしこの数の各桁
が1つ右に桁送りされ、右側に零が付加されれ
ば、この数は実効的には10倍され、96、800にな
る。10が10進数系では基数なので、桁を左へ送る
ことは10倍することと等価である。このことか
ら、2進数がその桁を全て1ビツトの位置だけ左
に送り、右側に零が加われば、2進数は実効的に
は2倍される。例えば10進数で5に等しい2進数
101は1ビツトの桁送りの後は、10進数で10に等
しい2進数1010になる。2進数を1ビツトの位置
だけ桁送りすることは、その数を2倍することに
等しいことはこれで明らかであろう。シフト・レ
ジスタ116は実効的には連続している信号ライ
ン×1、×2、×4、×8に送られた計数値にその
様な1ビツト位置の桁送りをしており、それで各
ラインに送られた計数値を示された定数倍だけし
ている。 第1の計数値と夫々1より大きな定数及び1よ
り小さな定数を掛けた第2の計数値との比較を実
行するために、各計数値の5倍、8倍、3倍を計
算する。それから、第1の計数値の5倍と第2の
計数値の8倍及び第2の計数値の3倍とを比較す
る。第1の計数値の5倍と第2の計数値の8倍の
比較は、第1の計数値と第2の計数値の8/5倍と
の比較に等しく、それで第1の計数値と第2の計
数値に1より大きな定数を掛けたものとの比較に
等しい。同様に第1の計数値の5倍と第2の計数
値の3倍との比較は第1の計数値と第2の計数値
の3/5倍との比較に等しく、それで第1の計数値
と第2の計数値を1より小さな定数倍したものと
の比較に等しい。 計数値の5倍は計数値の4倍と計数値の1倍を
加えることで簡単に計算される。シフト・レジス
タから伸びている×4の信号ラインは各計数値を
4倍した数を直列に表わしており、シフト・レジ
スタ116から伸びる×1の信号ラインは各計数
値に等しい数を直列で表わしている。これら2つ
の直列数は直列加算器118で加算され、和は加
算器118の出力信号で示される。この出力信号
は基本計数値の5倍なので、×5と名付けられ
る。同様にして、基本計数値の3倍は、入力とし
てシフト・レジスタ116からの出力信号×1と
×2を受けて、これらを加算して×3の信号を計
算する直列加算器120により計算される。 バーの幅が他のバーの幅と比較され、スペース
の幅が他のスペースの幅と比較されるようにして
いる。この目的の為、時間で測つた第1のバー及
びそれに続くスペースの幅に対応する計数値を記
憶し、第1のバーの幅を表わす計数値が次に出て
くるバーの幅を表わす計数値と比較できる様にす
るのが必要である。このため加算器118の×5
出力は、計数器114に表わされた計数値の5倍
の数を完全に2つ蓄積するだけの充分な容量を持
つているシフト・レジスタ121に送られる。シ
フト・レジスタ121の出力はDELAYED×5信
号と呼ばれる。入力シフト・レジスタ116がバ
ーの長さに比例した計数値を表わしている時、シ
フト・レジスタ121は最も近い時期に走査した
バーの長さに比例した計数値の5倍を示している
様に、シフト・レジスタの長さを選ぶ。直列加算
器122はそれからDELAYED×5信号ラインと
×8信号ラインで表わされた2進数の差を計算
し、つい最近走査されたバーは以前に走査された
バーより狭いかどうかを決定する。もし×8信号
ラインで表わされた数がDELAYED×5信号ライ
ンで表わされた数より小さいと判明すれば、加算
器122はより小さいと認定したことを示すLES
と称する高レベルの出力信号を生ずる。もし×8
信号ラインで表わされる数が遅延×5信号ライン
で表わされる数に等しいか、より小さいならば、
加算器122は低レベルの出力信号を出す。同時
に、もう一つ別の加算器124はDELAYED×5
信号と×3信号とにより表わされる2進数の間の
差を計算して、それでつい最近走査したバーが以
前に走査したバーより幅が広いかどうかを決定す
る。もし×3信号ラインで表わされた数が
DELAYED×5信号ラインで表わされる数より大
きいと判れば、加算器124はより大きいと認定
したことを示すGTR信号と称する高レベルの出
力信号を出す。そうでなければ、加算器124は
低レベルの信号を出す。このようにして、加算器
122及び124は隣接するバーの相対的幅を比
較し、それから以前に説明した2進化幅コードに
従つてつい最近走査したバーがそれ以前に走査し
たバーより幅が広いか、同じ幅か、幅が狭いかを
示すことのできるLES信号及びGTR信号を生ず
る。隣接するスペースの相対幅も全く同様に比較
できる。 加算器122の出力信号はシフト・レジスタ1
26に送られ、加算器124の出力はシフト・レ
ジスタ128に送られる。シフト・レジスタ12
6及び128は1つの文字に対する全部で5つの
幅比較の結果を表わしている2進数を蓄積できる
ほど充分に長い。これら2つのシフト・レジスタ
に表わされた10ビツト値を適正に解読すること
は、1000以上の記憶場所を有する読取り専用記憶
装置のサービスが必要である。そのため本実施例
では、128個の記憶場所を有する小さなサイズの
読取り専用記憶装置130を設け、バー及びスペ
ースコードの比較情報に対してそれぞれ別々解読
している。 デジタル入力回路により生じた第7図にBLK
として示すBLK信号(黒信号)は読取り専用記
憶装置130のアドレス・ライン入力に送られ、
読取り専用記憶装置130がある瞬間にバー又は
スペースの幅に対する比較情報を受けているかど
うかをそれに知らせる。それからシフト・レジス
タ126及び128の出力が交互に選ばれて、読
取り専用記憶装置の残りのアドレス・ライン入力
に送られる。このようにしてバー及びスペースの
幅比較のデータの可能な各組合により、読取り専
用記憶装置130内の特定の場所からデータを検
索させることができる。シフト・レジスタの出力
が交互に選ばれて、ある瞬間にはバー(若しくは
スペース)の比較データだけが読取り専用記憶装
置に送られる。 記憶装置130の4つの出力は、バーラツチ1
32に送られる。シフト・レジスタ126及び1
28によりバー幅比較のデータが夫々示された後
記憶装置130により示されたデータを蓄積する
為ラツチ132が作動される。読取り専用記憶装
置130がバー又はスペースの情報を解読してい
るかどうかを知らせるBLK信号(黒信号)によ
り、ラツチ132が作動される。記憶装置130
の3つの出力がスペースラツチ134に送られ
る。シフト・レジスタ126及び128によりス
ペース幅の比較データが夫々提示された後、ラツ
チ134は記憶装置130により示されたデータ
を蓄積するため作動される。ラツチ134は
BLK信号(黒信号)の欠如で作動し、スペース
の比較に対応するデータだけを蓄積する。このよ
うにして文字の棒及び空白の比較は別々に解読さ
れ、ラツチ132及び134の中に蓄積されてラ
イン136にデータ出力DATAOUTを同時に表
わす。 本発明の望ましい実施例では読取り専用記憶装
置130は比較情報を各文字のバー及びスペース
の実際の幅に対して単純に2進情報に変換する。
文字内には4つのバーがあるので、読取り専用記
憶装置130はバー比較情報を解釈すると4ビツ
トの出力データを出す。文字中には3つしかスペ
ースがないので、スペース比較情報を解釈すると
読取り専用記憶装置130は3ビツトの出力デー
タを生ずる。第1図に図解されている如く、2つ
のラツチ132及び134の出力は組合せられ、
それで走査された文字中に幅の変化しているバー
及びスペースコードが表われるのと同じ順序でバ
ー及びスペースコードのデータ出力
(DATAOUT)がライン136に表われる。これ
とは別に出力(DATAOUT)は第5図に図解さ
れている如くでも、あるいはその他のどんな方法
で表わされても構わない。 バー及びスペースラツチ132及び134から
の出力信号でアドレスされる第2の読取り専用記
憶装置138は特定の開始文字の存在を確かめ、
また検索データに対するバリテイーその他のルー
チンエラー・チエツクを行なう。様々の制御及び
その他の出力信号が読取り専用記憶装置138か
ら制御論理140へ入力される。 制御論理140はシステム全体の操作を管理制
御し、また検索され解読されたデータが送られる
外部データ記憶装置又は使用装置の機能とシステ
ム操作を調整する。その他の機能の中で、制御論
理140は走査が前進方向に行なわれているか、
後退方向であるかを示すためのFWD信号(前進
信号)及びBWD信号(後退信号)を生ずる。エ
ラーの場合には制御論理140はERM信号(メ
ツセージにエラー信号)を生ずる。メツセージの
終了に出会うと、制御論理はEOMD信号(メツ
セージ終了信号)を生じ、そしてメツセージが正
確に入つた時にはGDRD信号(読取り良好信号)
も生ずる。有効な開始文字がバーコード化メツセ
ージ中でまず見つけられると、制御論理140は
短時間のSTARTPパルス信号(開始パルス信
号)を生じ、それから第2の開始文字が後につい
ている完全な文字のセツトがメツセージから読取
られるまで連続的にSTART信号(開始信号)を
生ずる。メツセージが読み込まれてしまつた後、
またはエラーが見つけ出された後、制御論理14
0はRES信号(リセツト信号)を出して、装置
100全体をリセツトする。 以下の点でより詳細に説明される如く、如何な
る走査操作の間にも自動的に実行されている様々
のエラー・チエツクの結果を示す種々のエラー信
号をも、制御論理140は入力信号として受けて
いる。 バーコード読取装置100はデータを外部デー
タ記憶装置(図示せず)に送るようにも設計され
ている。装置100はFRMT信号(制御信号)
により制御されていて、FRMT信号(制御信
号)がない時を除いては、何も出力データを出さ
ない。 その他のシステム信号も外部データ記憶装置又
は使用装置に送ることができる。各バーコード文
字のデジタル表現は通常DATAOUT信号(デー
タ出力信号)ライン136を通つて外部装置に送
られる。データがDATAOUT信号ライン136
から受け取られる時とはTAKEDATA信号(デ
ータ受け取り信号、JO信号と呼ばれる)が合図
する。データが受け取られる時には、
TAKEDATA信号(データ受け取り信号)が終
了している。 上記の如く、DATAOUT信号(データ出力信
号)及びTAKEDATA信号(データ受け取り信
号、JO信号)は、単に、外部装置にデータが伝
えられるか、又は外部装置からデータを受け取る
かを外部装置に指示する信号にすぎない。 本発明の一態様では有効なメツセージはどれも
特定の開始コード文字で始まり、特定の停止コー
ド文字で終わるように企画されている。本発明の
望ましい実施例では、開始及び停止コード文字は
特別な文字で、どちら方向からも読み取られるよ
うになつており、左から右へ走査した時の開始文
字は右から左へ走査したとき停止文字として読み
取られ、また左から右へ走査したとのもの停止文
字は逆方向走査時には開始文字として読取られる
ように作られており、これにより、メツセージの
開始または停止の信号の他に走査の行なわれてい
る方向をも示す。バーコードの走査は記録のどん
な場所からでも(文字の途中からでさえも)始め
られる。典型的な場合には走査スタイラスの使用
に未熟な従業員が、鉛筆で印刷物に線を引く時と
同じような動作でスタイラスをバーコード上に簡
単に乗せ、スタイラスを何度もバーコードの上で
前後に動かしてしまうことがある。この動作は記
録部分の中央で始まるかも知れないし、記録部分
の側端から始まるかも知れない。スタイラスはず
つと記録部材を横切つて、記録部分を越えた余白
に行くかも知れないし、あまり動かさないで記録
部分の終りを示す停止文字を含むに至らないかも
知れない。スタイラスは、一時的にバーコードを
離れ、別の点のバーコードに再び入るような角度
にあるかも知れない。本発明では全ての誤走査を
無視して、片側から始まつて1連続動作の内に逆
側にまでずつと続いた時にもたらされる、有効な
データのみを受取る。 この目的の為、バーコード読取装置100はま
ず有効な開始コード文字に対応するバーコードパ
ターンに出合うまでは、受け取る走査情報を全て
拒否することが必要である。その後、装置100
は各文字が始まり、終つた所を正確に記憶して、
4つのバー及び3つのスペースから成る完全なパ
ターンを走査し終つた後でのみ文字情報が読取り
専用記憶装置により解読されることが必要であ
る。 計数器142がこれら両方の役割を果たす。計
数器142は、通常J0、J1、J2、J3、J4、J5、
J6、J7の8つの異なる状態をへて計数し、それか
ら再び初期状態J0へ戻るという8状態ジヨンソン
計数器である。しかし制御論理140がSTART
信号を出さない時は、この信号の欠如が計数器1
42をJ0状態にロツクし、計数器142の進行を
妨げる。計数器142がJ0状態にある時、この計
数器はJ0出力信号を出して、この信号により読取
り専用記憶装置138が2つのラツチ132と1
34に記憶されたデータをアドレス入力信号とし
て受信し、一連の制御信号144を連続的に出
す。その制御信号144のうちのいくつかはバー
及びスペースのラツチ132及び134が有効な
開始又は停止文字に対応したコードを表わしてい
るかどうかを示している。次に、記録部材の手動
走査が開始されると、記録部材上に出合う明暗及
び暗明の転移模様を決めるデータが連続的に読取
り専用記憶装置138に送られる。この時点では
制御論理140はSTART信号を出していないの
で、ラツチ132及び134からライン136に
出されるデータDATAOUTは、外部装置がライ
ン136と接続されていても、単に無視されてし
まう。 やがてスタイラス102は有効な開始(又は停
止)文字を越えて引かれる。スタイラス102が
その様な文字に続くスペースに達すると、開始文
字中のバー及びスペースの幅を表わす2進データ
をラツチ132及び134にて記憶させる。読取
り専用記憶装置138は有効な開始コード文字の
コードを記憶する。それに応じて、読取り専用記
憶装置は制御論理140に制御信号144を送
る。論理140はSTARTPパルス(開始パル
ス)を生じさせ、START信号(開始信号)を高
レベルに保持させる。高レベルのSTART信号
(開始信号)がジヨンソン計数器142を解放
し、計数器がPROCESS信号(プロセス信号)の
変化を計数し始めるようにする。走査がバーから
スペースへと進行する各瞬間毎にPROCESS信号
(プロセス信号)が出されるので、計数器142
はバーからスペース及びスペースからバーの転移
を数え始める。4つのバーから成る文字を完全に
走査した時バー−スペース及びスペース−バーの
転移数と等しい8という計数に達すると計数器1
42はリセツトする。走査が各文字の最後のバー
にかかつた直後にJ0信号が高くなり、隣接する文
字を隔てているスペースの走査にかかる直後まで
高いままである。J0信号の終了はデータ出力13
6で完全な文字を表わすデータDATAOUTが入
手可能な時を示している。J0信号がない時、記憶
装置138を使用禁止にし、該ラツチ132及び
134が2つの文字部分に関するデータを有して
いる時にでもそのラツチにより表示されたデータ
に対して記憶装置138がエラー・チエツクを行
なわないようにしている。 PROCESS信号は、スタイラスが記録部分のバ
ーからスペースへの転移を検出した場合にも、ま
たスペースからバーへの転移を検出した場合に
も、0から1に、その値が変化する。そして、こ
のPROCESS信号は、下記に詳述する如く、所定
の時間が経過すると1値から0値にその値が変化
する。 エラー・チエツクは第1図に示される様々の構
成要素により行なわれる。デジタル入力回路11
2は、走査がバーコード読取装置100の適正な
操作を可能にする速度で進行していることを確か
めるため、各バー及びスペースの走査の継続時間
を測定する。正確に処理されるには余りにも速く
バー又はスペースが走査されているのに出会う
と、回路112はUER信号(速過ぎエラー信
号)を出し、それは制御論理140へ送られて走
査を停止する。ある文字中で走査が余りに遅い時
には、ゲート146は予め決められた計数に達し
ている計数器114に対して、またも走査を阻止
できるオーバー・フローを示すOVFL信号(オー
バー・フロー信号)を出す。計数器148は計数
器114の最上位出力と直列に接続されていて、
延べの時間間隔(例えば、スタイラスが1つの文
字から次へと動くのに要する時間)が測定可能で
ある。ここで重要なのは、文字間の時間は制限さ
れているのでスタイラスが文字の間の1列のバー
コード記録から他のバーコード記録へ移されるの
はできないようにすることである。そこで文字間
の時間が長過ぎる時には、計数器148は、時間
切れであることを示し走査を阻止できるTIMOT
信号(時間切れ信号)を出す。 通常区切りの停止文字に出会うと走査は完了す
る。短距離の間にはそのような文字に他の文字が
続くことはない。もしそうならば停止文字の出現
が早過ぎる事を示し、バーコードが変えられた事
を示すからである。このため計数器150は各文
字を走査するのにかかる時間を計測する。区切り
の停止文字に出会つた後、計数器150は制御論
理140により生じたEOMD信号(メツセージ
終了信号)によりロツクされる。その文字の最後
のバーに続くスペースを走査している間に、比較
回路152は、スペースの幅を表わす計数器11
4の出力と、最後の停止文字の幅を表わす計数器
150の出力とを比較する。スペースが最後の停
止文字のある倍数以上であれば、比較回路152
はMATCH信号(マツチ信号)を出して、最終停
止文字に続く適当に長いスペースがあると制御論
理140に伝える。本発明の望ましい実施例で
は、MATCH信号(マツチ信号)が出る前の最後
のバーに続くスペースは少なくとも0.07inch
(1.8mm)の幅がなくてはいけない。 システムは他の文字が続いていない最初の開始
文字には応じない。速度不足の走査を検出する為
に使われる機構が、最初の開始文字に続くスペー
スを走査するのにかかる時間を測るのにも使われ
る。スペースが異常に幅広いなら、開始文字は拒
否される。それでバーコード領域の中心から外側
へ進行する走査運動は無視される。記録部材の側
端で始まる走査運動だけが有効になる。それで未
熟練操作者が記録部分上のどんな点からジグザグ
の走査運動を開始しても良く、システムは記録の
一端から他端への完全なバーコード上を通過する
とき全てからのデータを捕える。 本発明の望ましい実施例では、相補型対称
(complementary−symmetry)金属−酸化膜−
半導体集積回路を使つて構成されている。特にニ
ユージヤージー州サマービルのR.C.A.株式会社
の固体物理部門製造「COS−MOS」(商標)集積
回路が望ましい実施例の組立てに使われる。以下
は使用されている集積回路の略述である。
【表】
以下の詳細な記述を通して、従来の集積回路論
理シンボルが使われる。より詳しく言えば、D−
型ゲートはAND論理回路を示し、そのようなゲ
ートの出力部に丸を有するものはNAND論理回路
を示す。矢型とゲートはOR論理回路を示し、そ
のようなゲートの出力部に丸を有するものは
NOR論理回路を示す。出力部に丸を有する三角
形のゲートはNOT(否定)回路を示す。出力部
にQ又はの文字のある縦長の長方形の箱は典型
的には以下の特徴を持つているD型フリツプ・フ
ロツプである。即ち、C入力が低から高に変つた
時にフリツプ・フロツプのD入力が高いと、フリ
ツプ・フロツプはすぐに高レベルのQ出力信号及
び低レベルの出力信号を出し始め、C入力が低
から高に変つた時にD入力が低いと、Q出力はす
ぐに低くなり、そして出力は即座に高くなる。
そのようなフリツプ・フロツプのQ出力はそのフ
リツプ・フロツプのSつまりセツト入力に高レベ
ル信号をかけても高くセツトされ、そのフリツ
プ・フロツプのRつまりリセツト入力に高レベル
信号をかけて低くセツトされうる。どの場合も
出力信号は常にQ出力信号の否定である。ある場
合には、シフト・レジスタ装置もまたD入力端
子、C入力端子その他を有する様に図示される。
そのようなシフト・レジスタは、シフト・レジス
タを作るため直列に接続された一連のD型フリツ
プ・フロツプから成るシフト・レジスタ又はそれ
と等価なものと理解される。 矢型NORゲートに似ているが、その左縁に余
分の曲線を有するゲートは排他的OR(EXOR)
ゲートである。 相補型対称金属−酸化膜−半導体集積回路が本
発明の望ましい実施例の構成に使われているが、
本発明の機能を果たす為、何か適当な型の集積又
は別々の論理を使つても良い。 図中反転信号は上線で明瞭に示されている。上
線のない信号は、信号が高いか正のレベルにある
時「存在」し、信号が低いか負のレベルにある時
「欠如」している。上線付き信号は、信号が低い
か負のレベルにある時「存在」し、信号が高いか
正のレベルにある時「欠如」している。各信号の
性質は、(反転したものもしないものも)図中に
はつきり示したので、以下の本文中では信号が反
転されているか否かは通常触れない。信号は単に
「存在」とか「欠如」と述べられて、信号の実際
の極性は図を参照して決められる。否定ゲートの
機能は図中明らかなので、非反転信号を反転信号
に変え、その逆の役割しかしない否定ゲートは以
下の記述の中では通常時に触れない。 全体として論理ゲートはゲーテイング
(AND)論理機能、信号通過(OR)論理機能、
反転(NOT)論理機能、排他的論理和
(EXOR)機能、又はこれらの機能の組せを行な
う。単に全入力信号を出力として通すORゲート
の場合は「通過する」と言われ、通常それ以上の
ゲート操作に関る議論は含まれない。ゲーテイン
グ又は信号制御機能を行なうANDゲートの場合
は、ある信号がゲートを通るのを阻止されるとゲ
ートは「使用禁止」と言われる。信号がゲートを
通過可能ならば、ゲートは「使用可能」と言われ
る。もしゲートに2つ以上の入力信号があり、入
力信号の全部ではないが幾らかがゲートを信号の
通らないようにするならば、ゲートは「部分使用
可能」と言われる。 第2図はデジタル入力回路112、クロツク1
15、タイミング信号計数器113の詳細の図解
をした論理図である。以前に述べた如く、クロツ
ク115はCAパルス列を発生し、同時にCAパル
スの間に割込んだCBパルス列を発生する簡単な
クロツクである。クロツク115のパルス発生部
分は、出力端子が簡単なR−C時間遅延回路網2
03を通つてその入力に戻つて非常に簡単な発振
器を形成している一対のNANDゲート202から
成つている。ゲート202の出力信号は、ゲート
202の入力がその通常のスイツチングの閾値レ
ベルより上がるか下がるかする所で、R−C回路
網203中のコンデンサーが充電又は放電する毎
に反転する矩形波形状をしている。ゲート204
はこの矩形波形状を四角にし、それを第1のD型
フリツプ・フロツプ206のクロツク入力に入れ
る。フリツプ・フロツプ206はその反転Q出力
をそのD入力に結びつかせ、ゲート204から受
ける各パルス毎に応じてフリツプ・フロツプは状
態を変える。フリツプ・フロツプ206のQ出力
は第2のフリツプ・フロツプ208のクロツク入
力に接続され、それもまた反転Q出力をそのD入
力と結びつけてある。2つのフリツプ・フロツプ
206と208は連続的に4つの順段階をへて、
それからリセツトするという簡単な2段2進計数
器を形成する。これらの状態のうちの一つの間
で、ゲート210は全ての高レベル入力を受け、
出力パルスCAを発生する。これらの状態のうち
別の1つの間に、ゲート212は全ての高レベル
入力を受けて出力パルスCBを発生する。パルス
CA及びCBが交互に行こり、お互いに僅かの遅延
時間離れて分けられているように、ゲート210
及び212は2つのフリツプ・フロツプに接続さ
れている。CAパルスの周波数は1秒間に200000
パルスで、CBパルスの周波数も同様である。 デジタル入力回路112は第2図の左下部分を
占めている。アナログ入力回路110により送ら
れるANALOG信号(アナログ信号)はフリツ
プ・フロツプ214のD入力にかかる。CBタイ
ミング・パルスはフリツプ・フロツプ214のク
ロツク入力に送られる。バーの走査に応じて
ANALOG信号(アナログ信号)が高くなると、
次に続くCBパルスがフリツプ・フロツプ214
をセツトし、フリツプ・フロツプ214のQ出力
(即ち、BLK信号、黒信号)がフリツプ・フロツ
プ216をセツトさせる。フリツプ・フロツプ2
16の非反転Q出力信号はゲート218を通過
し、スペースからバーへの遷移の走査の信号とな
るPROCESSパルス信号(プロセスパルス信号)
となる。PROCESSパルス信号(プロセスパルス
信号)の持続時間はどれ位フリツプ・フロツプ2
16がセツトされたままでいられるかで決められ
る。以下に説明する様に、これは予め決められた
遅延時間後にフリツプ・フロツプ216をクリア
するフリツプ・フロツプ220により決められ
る。フリツプ・フロツプはそれからCAパルスで
リセツトされる。 ANALOG信号(アナログ信号)が低くなる
と、次に続くCBパルスがフリツプ・フロツプ2
14をクリアし、フリツプ・フロツプの反転出力
にフリツプ・フロツプ222をセツトさせる。そ
れからフリツプ・フロツプ222の出力はまたゲ
ート218を通過し、バーからスペースへの遷移
の走査を合図するPROCESSパルス(プロセスパ
ルス)となる。フリツプ・フロツプ216がクリ
アされたのと同様に僅かの遅延時間の後にフリツ
プ・フロツプ222はフリツプ・フロツプ220
でクリアされる。このようにデイジタル入力回路
は、ゲート218の出力に短時間持続する
PROCESSパルス(プロセスパルス)を発生し
て、ANALOG信号(アナログ信号)の各揺動に
対応する。フリツプ・フロツプ214のQ出力は
BLK信号(黒信号)と呼ばれ、バー又はスペー
スが走査されているのを示す。 走査スタイラスの運動が非常に速くて、狭いバ
ー又はスペースが余りに短時間のうちに走査され
て論理回路が応じ切れなければ、フリツプ・フロ
ツプ216又は222のうちの1つがクリアされ
る前にANALOG信号(アナログ信号)が二番目
の変化をする。これは又記録上の薄い汚れを非常
に狭いバーと間違えた時にも起こる。このような
ANALOG信号(アナログ信号)の第二の変化は
2つのフリツプ・フロツプ216及び222の他
方もセツトし、それで両方のフリツプ・フロツプ
がセツトされる。そこで2つのフリツプ・フロツ
プの夫々からのQ出力はゲート224を使用可能
にして、UER信号(速過ぎエラー信号)を発生
させる。このUER信号(速過ぎエラー信号)は
制御論理140に送られ、それは走査打切りで答
える。通常では2つのフリツプ・フロツプ216
及び222は決して同時にはセツトされず、それ
でUER信号(速過ぎエラー信号)は決して発生
されない。 タイミング信号計数器113が第2図の中央部
分を占めている。ジヨンソン計数器142が第2
図の下方に見える。これらの計数器は両方ともゲ
ート218の出力で発生されるPROCESSパルス
(プロセスパルス)で制御されている。 タイミング信号計数器113は、PROCESS信
号(プロセス信号)が存在する限りいつも零から
29まで計数する一連の計数段階226,228,
230から成つている。タイミング信号計数器の
第29番目の計数はフリツプ・フロツプ220のC
入力に送り返され、そのフリツプ・フロツプをリ
セツトし、それによつてPROCESS信号(プロセ
ス信号)を終らせる。PROCESS信号(プロセス
信号)が存在しない時は、ゲート218の出力は
高くなり、計数器226,228,230をその
クリアされ又はリセツトされた状態にロツクす
る。PROCESSパルス(プロセスパルス)が起こ
る度毎に、ゲート218の出力が下がりタイミン
グ信号計数器が0から29まで計数するのを可能に
する。 計数器226は10個の独立な出力を有する従来
の10進計数器である。これらの出力はD0、D1、
D2、……………、D9と名付けられている。最上
位の出力が計数器228のC(クロツク入力に送
られる。計数器228は反転Q出力をそのD入力
に再び接続している簡単なフリツプ・フロツプで
ある。計数器226が計数D9から計数D0へと進
むと、計数器228をセツトし、D10出力信号を
発生させる。計数器226はそれから2番目の計
数をする。計数器226が再び計数D9からD0へ
と進むと、それは計数器228をクリアする出力
パルスを出し、それでD10出力信号を終らせる。
今度は計数器228が同様のフリツプ・フロツプ
計数器230をセツトし、それでD20出力信号を
発生させる。それから計数器226はD20出力信
号が存在したまま再びD0からD9まで計数して、
計数20から29までを示す。計数D9が再び到達す
ると、D20信号とD9B信号(CBパルスでストロー
プされたD9)は組合さつて、ゲート232に29B
信号を発生させて、フリツプ・フロツプ220
を、PROCESS信号(プロセス信号)が終るよう
に作動させる。それからフリツプ・フロツプ22
0はすぐにクロツク115で発生される次のCA
パルスでクリアされる。 計数器226,228,230で発生される出
力信号は望みのままに組合せることができて、望
みのCA又はCBクロツク・パルス数だけ持続する
所望の連続タイミング信号を得ることができる。
第2図の右半分に示されたゲートは、システム操
作の制御のために必要なタイミング信号を発生す
るように簡単にタイミング信号計数器出力とCA
及びCBタイミング・パルスを組合わせている。
例えばゲート234,236,238,240は
計数器226の選んだ出力をクロツク出力パルス
と共にストローブさせ、それで0から29までのタ
イミング間隔の間の3つの選択した計数値の所で
CBクロツク出力パルスを発生させる。 これらのパルスはD1B,D2B,D7B,D
9Bと名付けられる。計数器228がセツトされ
ている時のみ、一対のゲート242と244はパ
ルスD7BとD9Bを通過させ、タイミング信号
計数器の第17番と第19番の計数の間、CBクロツ
ク・パルスと同期してパルス17Bと19Bを発
生する。2つの計数器228と230が両方とも
クリアされた時ゲート246は応動し、これらの
計数器が夫々1及び2の計数の時、そしてその計
数の時のみ1対のゲート248及び250は使用
可能でD1B及びD2Bのタイミング・パルスを
通す。計数器230がセツトされた時のみゲート
252,254,256,232はパルスD1
B,D2B,D7B,D9Bを通し、それで計数
器の夫々第21番目、第22番目、第27番目、第29番
目の計数の間のみCBタイミング・パルスを送
る。信号1B,2B,17B,19B,21B,
22B,27B,29BはこのようにCBクロツ
ク信号と同期し、タイミング信号計数器が対応す
る計数値に達した時に起こるパルス信号である。 双安定マルチバイブレータ258は1Bタイミ
ング・パルスでセツトされ、それから17Bタイミ
ング・パルスでクリアされる。それでこの双安定
マルチバイブレータ258は正確に16個のCAク
ロツク・パルスを取り囲み、CBクロツク・パル
スと同期して始まり終わる高レベル入力信号LD
16Aを発生する。LD16A信号はゲート260
を使用可能にして丁度16個のCAクロツク・パル
ス信号ラインCLK16Aに通し、それはシステ
ムの演算装置中のシフト・レジスタ等を通しての
16ビツトの数の移動の制御に使われる。LD16A
信号はまたCAクロツク・パルスでストローブさ
れるフリツプ・フロツプ262のD入力に送られ
る。正確に16個のCAクロツク・パルスを囲み、
CAクロツク・パルスと同期して始まり終わるフ
リツプ・フロツプ262の出力にLD16Bが表
われる。このLD16B信号は、ゲート264を使
用可能にして、丁度16個のCBタイミング・パル
スをCLK16B信号ラインに通すのに使われる。
CLK16B信号はまたシフト・レジスタ、演算装
置、その他同様のものの操作制御に使われる。 ジヨンソン計数器142が第2図の下部に見え
る。この計数器は単にゲート218の出力に表わ
れるPROCESSパルス(プロセスパルス)の数を
計数する。計数器142のリセツト入力に送られ
ている反転START信号(反転開始信号)の欠如
によつて、計数器142は最初信号J0を発生し
ながら、リセツト状態にロツクされている。反転
START信号(反転開始信号)が存在すると、計
数器142は自由にJ0からJ7そして再びJ0と計数
し、各PROCESSパルス(プロセスパルス)の後
縁によつて進められる。走査が記録上の各文字の
最後のバーを横切り始めた僅か後に、信号J0は
いつも再び現われる。 第3図はバー及びスペース幅計数器114、シ
フト・レジスタ116、計数器150、比較論理
152、EOMD信号(メツセージ終了信号)を
発生する制御論理140を示す論理図である。第
3図のこれらの素子はEOMD信号(メツセージ
終了信号)を発生する論理回路を除いて示された
順序で以下に詳述する。後者の論理回路はより以
降で述べる。 計数器114は12ビツトの容量を有する12ビツ
ト計数器である。計数器114の12個の出力はシ
フト・レジスタ116の12個の入力に送られる。
シフト・レジスタ116は2つの集積回路シフ
ト・レジスタ302及び304と、シフト・レジ
スタ段階304の出力に直列に接続された1対の
フリツプ・フロツプ306及び308から成る。 計数器114とシフト・レジスタ116はタイ
ミング信号計数器で発生したタイミング信号で制
御される。バーからスペースへ、またはその逆に
進行する走査により惹起されたANALOG信号
(アナログ信号)のレベル遷移の直後、デイジタ
ル入力回路は29のタイミング信号計数を持続する
PROCESSパルス(プロセスパルス)を発生す
る。タイミング信号計数器の計数1の時、1Bタ
イミング信号は計数器114の内容をシフト・レ
ジスタ116に送る。ほぼ同時にD1タイミング
信号はフリツプ・フロツプ310をセツトして、
ゲート312を使用禁止にし、どのCBタイミン
グ・パルスも計数器114の入力へ通過できない
ようにする。 計数2で、2Bパルスが計数器114をクリア
する。計数3でD3パルスがフリツプ・フロツプ
310をクリアして、ゲート312を使用可能に
し、計数器114の計数入力へCBパルスを通
す。そこで計数器はリセツトされ、次のバー又は
スペースの幅を測るためCBパルスを計数し始め
る。先行したバー又はスペースの幅を表わす計数
値は今はシフト・レジスタ116中に蓄積されて
いる。 タイミング信号計数2から始まつて、16個の
CBクロツク・パルスがシフト・レジスタ116
のシフト入力に送られ、そこに蓄積された計数値
の直列表現をさせる。フリツプ・フロツプ306
及び308から構成される余分のシフト・レジス
タの場合は、16個のCAパルスがフリツプ・フロ
ツプ306に送られ、16個のCBパルスがフリツ
プ・フロツプ308に送られる。計数値は、前に
説明した如く、信号ライン×1、×2、×4、×8
上に表われる。これも前に説明した如く、計数値
は実効的には示された数字倍されている。 計数器114が予め決められた高レベル計数に
達すると、特定の計数値を越えたことを合図する
ため、ゲート146はOVFL信号(オーバー・フ
ロー信号)を発生する。バー又はスペースが長過
ぎるか、ゆつくり走査され過ぎた時にOVFL信号
(オーバー・フロー信号)が合図として使われ、
また開始文字の後の空白が広過ぎる時の合図にも
使われる。 計数器114の最上位の出力C12は第2の計
数器148の計数入力に送られる。所定の計数値
に達した時計数器148は出力信号T40,T1
0,TIMOT信号(時間切れ信号)を発生する。
実際計数器148は計数器114による長時間間
隔の測定を可能にする為の、計数器114の単な
る延長である。例えば、TIMOT信号(時間切れ
信号)はスタイラスが1つの文字から次へ動くの
に余りに長時間かかつた時にのみ起こる。本発明
の望ましい実施例では、TIMOT(時間切れ)計
数値は約0.5秒の時間間隔を測定する様に選ばれ
ている。1つの文字から次の文字へ、表査はその
時間内に進まねばならず、そうでないと走査は打
切られる。TIMOT信号(時間切れ信号)は、ス
タイラスを走査の途中で1つのバーコードから隣
接するバーコードへ移動するのを防いでいる。 14段の計数器150(第3図)は長いスペース
がメツセージの最終バーに続くのを保証してい
る。文字の間のスペースを走査している間は、計
数器150はJ1信号でリセツトされる。それから
計数器J1は、文字が走査されている間にCAパ
ルスを計数して、各文字の手動走査に要する大体
の時間を計測する。最終の停止文字を走査した
後、EOMD信号(メツセージ終了信号)はCAパ
ルスがゲート320を通つて計数器150へ流れ
るのを防げ、それで実際上計数器150中に最終
停止文字を走査するのに要した時間とほぼ等しい
計数値をロツクする。比較回路152はそこで計
数器150中に蓄積された計数値と停止文字が走
査された後のスペースが走査されるに従つて増加
する計数器114に示された計数値との比較をす
る。スペースが充分に長ければ、2つの計数値は
ついには等しくなり、比較回路152にMATCH
信号(マツチ信号)を出させる。それから
MATCH信号(マツチ信号)とEOME信号(メツ
セージ終了信号)はゲート324に走査が成功し
たことを意味するGDRD信号(読取り良好信号)
を発生させる。しかし停止文字に続くスペースが
余りに短かすぎると、MATCH信号(マツチ信
号)とGDRD信号(読取り良好信号)は発生しな
い。 第4図はシフト・レジスタ116から出力信号
を受け、上述した種々の幅比較操作を実行する演
算論理の論理図である。シフト・レジスタ116
の×1出力信号及び×2出力信号は直列加算装置
120に送り込まれ、それは×3出力信号を発生
する。×1及び×4信号が加算装置118に送り
込まれ、それは×5信号を発生する。それから直
列に接続された第1及び第2の16ビツト段階40
2及び404から成り、16個のCLK16Bパルスに
より駆動されるシフト・レジスタ121を通つ
て、×5信号が送られる。演算装置118及び1
20も各計算の間、16個のCLK16Bパルスにより
作動させられる。シフト・レジスタ121からの
DELAYED×5信号は、演算装置120からの×
3信号及びシフト・レジスタ116からの×8信
号と共に演算装置122と124に送られる。演
算装置118,120,122,124は、装置
122と124に対し、122と124装置の入
力信号の差を計算させ、所望の比較結果を表わす
GTR信号(より大きい信号)及びLES信号(よ
り小さい信号)を生ずるようにプログラムされて
いる。計算の後、演算装置122及び124の出
力は、正又は零の結果を表わすため低レベル信号
となるか、負の結果を表わすため高レベル信号と
なる。どちらの場合でも、演算装置の出力信号は
結果の最上位のビツトを表わす。負の結果は必然
的に補数形式で表わされるので、このビツトは結
果が負の時には必然的に高レベルとなる。数が大
きすぎて適正に扱えないという事がなければ、正
の数の最も上位のビツトは常に零ビツトなので、
結果が正数の時はこのビツトは常に低レベルであ
る。演算装置122及び124はCLK16B信号ラ
インで示される16個のCBパルスで作動される。 第4図の下半面に示された論理は、走査の速さ
の突然の変化を検出し、何らかのそんな変化が検
出された時には走査を打切る。 加算器406及びシフト・レジスタ410は各
文字のバーとスペースの幅を合計する。結果の和
CHWDTH(文字幅)は、文字間の時間間隔J0の
開始の間に加算器406の出力に表われ、その時
に2つのシフト・レジスタ408及び414にロ
ードされる。この和は完全な文字の走査に要する
時間の測定の標準である。シフト・レジスタ41
0は続くJ1の時間間隔の間にクリアされ、加算器
406とシフト・レジスタは同じ様に次の文字を
走査するのに要する時間を測定し始める。 次の文字が走査された後で、その文字を走査す
るのに要した時間に比例した数が加算器406の
出力に表われる。1対の加算器418及び420
がこの数と、以前に走査した文字の走査に要した
時間の2倍を表わす数及び2で割つた数との差を
計算する。シフト・レジスタ408はその内容を
実効的に2倍する余分の第17段階を備えている。
シフト・レジスタ414は21B計時パルスの形を
した余分のデータ前進パルスを受け、この余分の
パルスが実効的にシフト・レジスタの内容を2で
割る。21Bパルスが起きた時、D20計時信号はゲ
ート416を使用禁止し、その時に値零をシフ
ト・レジスタにロードさせる。 現在の文字走査がその前の走査より2倍以上の
時間を要するならば、加算器418は反転
ACCER1信号(反転加速1信号)を出す。現在
の文字走査がその前の走査より半分以下の時間し
かかからなければ、加算器420は反転
ACCER2信号(反転加速2信号)を出す。これ
らの信号はどちらも以下に充分に説明する如く制
御論理に走査を打切らせる。第7図は3つのバー
コード文字を走査する場合のタイムチヤートを、
第7A図は第7図の1部を拡大したタイムチヤー
トをそれぞれ示したものである。 第7図において、アナログ入力回路110から
得られた信号ANALOGは、デジタル入力回路1
12によつて整形されてBLK信号を発生する。
このデジタル入力回路112では、第2図及び関
連する説明に示すように、BLK信号が反転する
毎に一定幅のPROCESS信号を出力する。この
PROCESS信号はタイミング信号計数器113に
入力される外にジヨンソン計数器142に入力さ
れ、計数器ゼロの状態を示すJ0信号を低レベルに
するとともに、計数1を示すJ1信号を発生する、
このJ1信号は次のPROCESS信号が到来するまで
高レベルとなる。次のPROCESS信号が入力され
ると計数は2となつてJ1信号は低レベルとなり、
以後のPROCESS信号の到来毎に計数器142は
計数し、8個のPROCESS信号により再びゼロと
なつて、低レベルであつたJ0信号を高レベルにす
る。図示のようにバーコード文字は4つの黒いバ
ーとそれらの間の3つのスペースから成るので、
BLK信号は1つの文字の間に8回反転しこのた
め、J0信号が低レベルの状態にあるとき1つの文
字の間隔を表わすことになる。 第2図に関連して前記したように、PROCESS
信号はタイミング信号計数器113にも入力され
ており、該PROCESS信号を所定幅のパルスとし
ている。20KHzで連続的にパルスを発生するク
ロツク115のCB(またはCA)パルスが計数器
226のクロツク端子に入力されて、CB(また
はCA)パルスの順序付けを行なう。PROCESS
信号の立上りから29番目のCBパルスが到来する
と、フリツプフロツプ220がセツトされフリツ
プフロツプ216をリセツトする。従つて、
PROCESS信号は、BLK信号の幅の如何にかかわ
らず、所定幅のパルスとなる。この様子は第7A
図に更に詳細に示されている。タイミング信号計
数器113からは、1つのPROCESS信号の間の
CBパルスを順序付けするゲート群に入力され、
ここで1B,2B,17B……………29B等の
信号が作られる。双安定マルチバイブレータ25
8には1B信号と17B信号とが入力され、その出力
(LD16A)がフリツプフロツプ262のデータ端
子Dに入力される。このフリツプフロツプ262
はCAパルスによつてクロツクされ、LD16Bパル
スを出力する。このLD16Bパルスは1Bの立上り
とともに立上り、17Bの立上りとともに立下るパ
ルスとなる(第7A図)。このLD16Bパルスはゲ
ート264のゲートを開き、16本のCBパルスを
通過させて、CLK16Bパルスを作る。すなわち、
CLK16Bパルスは、第7A図に詳細に示すよう
に、各PROCESS信号の開始とともに発生し且つ
16個のCBパルスを含む信号となる。以上の説明
により、装置にとつて重要な各信号のタイミング
が明らかにされたものと信ずる。 第5図は2つのシフト・レジスタ126及び1
28、読取り専用記憶装置130、ラツチ132
及び134、第2の読取り専用記憶装置138を
示している。幅比較の結果を表わしているGTR
信号(より大きい信号)とLES信号(より小さい
信号)とがシフト・レジスタ126及び128の
入力に送り込まれ、シフト・レジスタ126及び
128はフリツプ・フロツプのつけ加わつた4ビ
ツトのシフト・レジスタから成つている。デー
タ・ビツトは、フリツプ・フロツプ262(第2
図)により作られるLD16B信号の後縁によりシ
フト・レジスタ126及び128にロードされ
る。この後縁は演算副システムからの16個のクロ
ツク・パルスの発生に続いてすぐに起こる。これ
でシフト・レジスタ126及び128には2つの
演算装置122及び124により示される最後の
2ビツトがロードされる。既に説明した如く、デ
イジタル入力回路により作られ、今バー又はスペ
ースのどちらが走査されているかを示すBLK信
号(黒信号)と共に、2つのシフト・レジスタ1
26及び128の出力は交互に読取り専用記憶装
置130の入力に送られる。読取り専用記憶装置
130は8つの出力端子を有し、そのうち4つは
バーラツチ132に送られ、3つはスペースラツ
チ134に送られ、1つは使用されない。ラツチ
132及び134はクロツク信号19Bと同期し
てロードされる。信号19Bが起きると、読取り
専用記憶装置130はその出力にシフト・レジス
タ126及び128によりアドレスされたデータ
を表わす。BLK信号(黒信号)が存在する時の
み、ラツチ132は19Bパルスで作動される。
19Bパルスを通すようにゲート136′を使用可
能にする反転BLK信号(反転黒信号)により、
19Bパルスはゲート136′を通過できてラツチ
132をストローブする。BLK信号(黒信号)
が無いと、その欠如は19Bパルスが代りのゲート
138′を通過し、データをスペースラツチ13
4中にストローブすることを可能にする。このよ
うにして、各バーコードが走査された後でバーラ
ツチ132は読取り専用記憶装置130からのデ
ータでロードされ、各スペースコードが走査され
た後でスペースラツチ134は読取り専用記憶装
置130からのデータでロードされる。読み取り
専用記憶装置130は、最も近時に走査されたバ
ー又はスペースの広く及び狭い幅のパターンに丁
度対応したデータを、そのアドレス可能な記憶場
所に記憶する。 ラツチ132及び134に捕えられたデータ
は、システムのデータ出力として表わされる。こ
のデータは計数器142の状態によつて意味があ
つたりなかつたりする。計数J0が終ると、文字が
走査され計数器142が動いていると仮定して、
捕えられたデータは現実に文字のバー及びスペー
スの幅を表わしている。捕えられたデータが標本
抽出される時には、信号J0が合図のため外部デ
ータ利用装置に送られる。 読取り専用記憶装置138は、信号J0の存在
する時のみ、機能可能である。そのように可能な
時、読取り専用記憶装置138は2つのラツチ1
32及び134に捕えられたデータをアドレス・
コードとして受け取る。それで読取り専用記憶装
置138は、今走査したばかりの「文字」の性質
を示す記憶場所の内容を表わす。読取り専用記憶
装置138の出力は、開始及び停止文字を同一視
し、極性その他のエラーを有む文字を選択する複
数の制御信号144である。 本発明の望ましい実施例は2つの異なるコード
構成を有する少なくも2つの異なる応用例に使わ
れると予想される。第1のコード構成は主として
小売での応用例、例えば食糧雑貨店及びデパート
での使用を目的としたもので、第2のコード構成
は倉庫、小荷物上書きの走査その他のその類の応
用例での使用を目的としている。読取り専用記憶
装置138はこれらの2つの応用のどちらの制御
信号も発生する様設計されており、どちらのコー
ド構成での使用にも適している。 制御信号のSTF−RU信号(開始文字前進読取
り信号)はバーコード開始文字の前進読取りを合
図する。制御信号のSTB−RU信号(開始文字後
退読取り信号)はバーコード開始文字の後退読取
りを合図する。もし開始文字が小売りコード開始
文字であるなら、制御信号のSTF+STB−R信
号(小売りコード開始文字信)が表われる。開始
文字が非小売りコード開始文字ならば、信号
STF+STB−R(小売りコード開始文字信号)
は表われない。前進読取りでも後退読取りでも、
どの種の開始コードに応じても、STF+STB−
RU信号(開始コード信号)が生ずる。 残りの2つの制御信号はエラーを示す。小売り
コード文字でエラーに出会つたら、CATER
RET信号(小売りコード文字にエラー信号)が
表われる。別の型のコードを使用したコード化文
字中でエラーに出会つたら、CATER UPC信号
(非小売りコード文字にエラー信号)が表われ
る。当然読取り専用記憶装置138は現在どんな
型のコードが使用されているかは知らない。記憶
装置は各文字とどう解釈するかに従つて、制御信
号を発生する。システム制御論理のその他の論理
要素(第6図)は起こり得る制御信号の種々の組
合わせに対応して正確にどんな動作が起こるかを
決定する。 第6図及び第3図の下部は、バーコード読取り
装置100の全体としての操作を制御する制御論
理40の詳細を図解している。この制御論理は以
下に詳述される。 何らかの走査操作が完了した後、ゲート602
(第6図の右端隅)により作られるRES信号(シ
ステム・リセツト信号)により、全システムはリ
セツトされる。この信号はシステムの計数器及び
制御回路の全てをリセツトし、特に第6図の上部
に図示されたフリツプ・フロツプをリセツトす
る。これはフリツプ・フロツプ610及び612
の反転出力に接続したゲート616からの
START信号(開始信号)の流れを終らせる。シ
ステムは今度は、有効な開始文字を捜す間は、操
作の探査モードに入る。 計数器142(第1図及び第2図)はそのリセ
ツトされた入力にSTART信号(開始信号)が欠
如しているために、リセツト状態にロツクされ、
計数器142はそのJ0出力信号を連続的に出す。
このJ0出力信号が続けて存在するので、それは読
取り専用記憶装置に、ラツチ132及び134に
より示される捕えられたデータの連続的な走査を
させる。ラツチが開始コードに対応するデータを
捕えている時は、読取り専用記憶装置138は
STF+STB−RU信号(開始コード信号)を生
じ、この信号を第6図の左上部にあるゲート60
4に送る。簡単なシフト・レジスタ606により
作られたFBB信号(4本のバー信号)によりシ
ステムがリセツトされた後、第4番目のバーの走
査の前は、ゲート604は使用禁止である。更に
ゲート608を通つてゲート604に送られてい
るBLK信号(黒信号)によるスペースの走査の
後は、ゲート604は応答するのを妨げられる。
ゲート604は、タイミング信号計数器113
(第2図)から来るタイミング信号22Bで周期
的にストローブされる。ゲート604の出力は
STARTP信号(開始パルス信号)パルスであ
る。簡単にまとめると、RES信号(システム・
リセツト信号)の存在のため4つのバー及び3つ
のスペースを含む有効な開始コード組合せに出会
い、それら全てが走査された時に、STARTP信
号(開始パルス信号)パルスが作られる。 STARTP信号(開始パルス信号)パルスの後
縁はフリツプ・フロツプ610,612及び61
4のクロツク入力に送られる。もし今出会つた開
始文字が前進始動コードならば、読取り専用記憶
装置138は制御信号のSTF−RU信号(開始文
字前進読取り信号)を出し、それはフリツプ・フ
ロツプ610にFWD信号(前進信号)発生を開
始させる。もし今出会つた開始文字が後読みした
開始コードならば、読取り専用記憶装置138は
制御信号のSTB−RU信号(開始文字後退読取り
信号)を出し、それはフリツプ・フロツプ612
にBWD信号(後退信号)の発生を開始させる。
通常これらフリツプ・フロツプの一方だけがセツ
トされる。もし開始コードが小売りコード開始文
字ならば、読取り専用記憶装置138はSTF+
STB−R信号(小売りコード開始文字信号)を
出し、それはフリツプ・フロツプ614に
START RET信号(小売り用開始文字信号)の
発生を開始させる。 フリツプ・フロツプ610及び612のどちら
かがセツトされた時、その反転出力はゲート61
6を通り、START信号(開始信号)となる。フ
リツプ・フロツプ614が又セツトされたなら
ば、ゲート618は使用禁止され、START
UPC信号(非小売り用開始文字信号)を発生で
きない。この信号の欠如は開始文字が小売り用開
始文字であることを示す。フリツプ・フロツプ6
14がセツトされないならば、ゲート618は使
用禁止でなく、START UPC信号(非小売り用
開始文字信号)が発生され、開始文字が小売り開
始文字でないことを示す。 シフト・レジスタ606の機能は簡単な説明に
値する。4つのバーを走査する前は、ラツチ13
2及び134は何か意味のないデータを含むかも
知れないので、少なくも4つの棒が走査されるま
では、ゲート604を有効な開始文字を捜す為の
操作につけるのは望ましくない。4ビツトのシフ
ト・レジスタ606は、各走査期間の始めに
RES信号(システム・リセツト信号)により、
リセツトされる。このシフト・レジスタのD入力
は正の電源に接続され、そしてバーが丁度走査さ
れた事を示すためBLK信号(黒信号)が高くな
る毎に、シフト・レジスタはストローブされる。
シフト・レジスタは最初RES信号(システム・
リセツト信号)により「0」ビツトをロードして
いた。反転BLK信号(反転黒信号)の4つの正
の変化の後、シフト・レジスタ606のQ4出力
は高くなり、FBB信号(4本のバー信号)を生
じ、それがゲート604に開始コードの捜査を開
始させる。 ゲート616により発生されたSTART信号
(開始信号)は、第2図に示された計数器142
に送り返されて、その計数器を解放する。計数器
142はそれから各文字のバー及びスペースを計
数し始める。各文字が完全に走査した直後を除い
ては、計数器142のJ0出力が今度は読取り専用
記憶装置138を使用禁止にする。このようにし
て、読取り専用記憶装置138は第1の文字のバ
ーの幅とそれに続く文字の別のバーの幅を有効な
または有効でない文字と解釈するのを防いでい
る。バーが有効な文字を表わしているならば、シ
ステムは走査モードの機能をし、その間システム
は各連続した4本のバーのセツトを調べる。 有効な文字の検査は、第6図の中央に図示され
た1対のゲート620及び622により実行され
る。非小売りコードが走査されている時は、
START UPC(非小売り用開始文字信号)によ
りゲート620は使用可能となり、小売りコード
が走査されている時は、START RET信号(小
売り用開始文字信号)によりゲート622が使用
可能となる。出力制御信号のCATER RET信号
(小売りコード文字にエラー信号)がゲート62
2に送られ、非小売りエラー出力制御信号の
CATER UPC信号(非小売りコード文字にエラ
ー信号)はゲート620に送られる。小売りコー
ドが走査され、小売りコード・エラーが起こる
と、ゲート622は出力信号を出す。もし非小売
りコードが走査されており、非小売りコード・エ
ラーが起こつたならば、ゲート620は出力信号
を出す。これらの出力信号はどちらもゲート62
4を通過し、ゲート626を通つてタイミング信
号計数器パルス21Bと同期してストローブされ
る。結果のパルスはゲート628を通過し、エラ
ー・フリツプ・フロツプ630をストローブす
る。するとフリツプ・フロツプ630はERM信
号(メツセージにエラー信号)を出して、外部デ
ータ利用装置にエラーに出会つたと伝える。フリ
ツプ・フロツプ630の反転出力はゲート632
を通り、フリツプ・フロツプ634をセツトす
る。するとフリツプ・フロツプからの出力信号は
次のCAタイミング・パルスがゲート602を通
つてRES信号(システム・リセツト信号)ライ
ンにまで到つて、システムをリセツトすることが
できるように、ゲート636を使用可能にする。
それでメツセージ中何かのエラーに出会つたら、
すぐにシステムはリセツトされる。それからフリ
ツプ・フロツプ634は1Bタイミング・クロツ
ク・パルスでリセツトされる。今度はシステムは
再び上述した操作の探査モードに戻る。もう1つ
別の有効な開始文字に出会うまで、フリツプ・フ
ロツプ630はセツトされており、その時にフリ
ツプ・フロツプ630はSTARTP信号(開始パ
ルス信号)パルスでクリアされる。 走査が正常に何らエラーに出会わずに進行した
と仮定すると、走査の終了は第3図の下部に示さ
れた論理で検出される。もしメツセージ中で第2
の開始文字に出会つたら、読取り専用記憶装置1
38は再び出力信号のSTF+STB−RU信号(開
始コード信号)を発生する。この信号はひき続い
ている高レベルSTART信号(開始信号)と合わ
さつて、ゲート326がフリツプ・フロツプ32
8のD入力に高レベル信号を送るようにさせる。
するとフリツプ・フロツプ328は次に続く22B
タイミング・パルスでストローブされ、EOMD
信号(メツセージ終了信号)を出し始める。
EOMD信号(メツセージ終了信号)により、ゲ
ート330は使用可能になり、EOMD−29Bと名
の付いた信号ラインへと1つの29Bタイミング・
パルスを通す。この信号パルスが第6図のゲート
632を通つて送られて、既に説明した如く、フ
リツプ・フロツプ634をセツトし、システムの
リセツトを始動する。 最終停止文字の最終バーが走査された後、
EOMD信号(メツセージ終了信号)の欠如でCA
クロツク・パルスがゲート320を通つて計数器
150へ流れ込むのを妨げ、停止文字に続くスペ
ースの幅が停止文字自身の幅と比較されている間
上述の過程を始動する。スペースが狭過ぎるな
ら、これは意図した停止文字にまた別の文字が続
いており、それでエラーが起こつたことを示して
いる。その場合はGDRD信号(読取り良好信号)
パルスは発生しない。スペースが充分に広けれ
ば、GDRDパルス(読取り良好パルス)が発生さ
れる。GDRDパルス(読取り良好パルス)はフリ
ツプ・フロツプ332をセツトする。フリツプ・
フロツプ332の反転出力はCBクロツク・パル
スがゲート334を通り、EOMD信号(メツセ
ージ終了信号)を発生するフリツプ・フロツプ3
28をクリアし、それでゲート324を使用禁止
し、GDRDパルス(読取り良好パルス)を終らせ
ることを可能にする。次の有効な開始文字に出会
うまではフリツプ・フロツプ332はセツトされ
たままで、その時にSTART信号(開始信号)で
クリアされる。GDRDパルス(読取り良好パル
ス)が出ないと、フリツプ・フロツプ332は次
に起こる1Bタイミング・パルスによりセツトさ
れ、するとその反転出力はCBパルスがフリツ
プ・フロツプ328をクリアしEOMD信号(メ
ツセージ終了信号)を終了するのを可能にする。
そこでEOMD信号(メツセージ終了信号)が存
在している短い時間の間に、GDRDパルス(読取
り良好パルス)が起きないという事により、停止
文字に続く不適正に狭いスペースが合図される。 開始文字に出会つた後の有効な走査の開始点
で、すぐに第2の開始文字に出会うのは不適当で
ある。このためどんな型であれ開始文字が走査さ
れた時はいつでも、制御信号のSTF+STB−RU
信号(開始コード信号)が先ずゲート646,6
24,626を通つてエラー・リセツト論理にま
で通されてリセツトのトリガを引く。最初の開始
文字に出会う前は、フリツプ・フロツプ630の
D入力に何らSTART信号(開始信号)がないの
でエラー・リセツト論理は使用禁止である。タイ
ミング信号21Bによりゲート626が同期され
た後でのみ、ゲート604はタイミング信号22
BによつてSTART信号(開始信号)を出すよう
ストローブされる。それで最初の開始コードに出
会つた時にゲート642で送られたエラー信号は
START信号(開始信号)がまだ欠如している時
にフリツプ・フロツプ630に達し、フリツプ・
フロツプ630はエラー信号に応ずることができ
ない。 最初の開始コードに出会つた後は、開始コード
と似たバーパターンの出現は、エラー信号をゲー
ト642,624,626,628を通つて流さ
せる。START信号(開始信号)が存在している
ので、このエラー信号はフリツプ・フロツプ63
0をセツトする。するとERM信号(メツセージ
にエラー信号)が生じ、システムは走査モードに
自身をリセツトする。 6つの文字が走査された後は、MIM信号(最
低の文字数の走査信号)により、ゲートは使用禁
止となる。フリツプ・フロツプ638及びシフ
ト・レジスタ640は最初両方ともクリアされて
いる。有効な文字の走査が始つた時、J1信号は繰
り返しフリツプ・フロツプ638をトグルする。 その他のトグルは全て+12ボルトの電圧源から
シフト・レジスタへの「1」データ・ビツトのロ
ードをするシフト・パルスとして、シフト・レジ
スタ640に送られる。第6番目のバーコード文
字が走査された後はゲート642は使用禁止にな
る。「1」データ・ビツトがシフト・レジスタ6
40を流れ続け、それでゲード642は走査の残
りの間中使用禁止のままである。メツセージの第
7番目の文字以降に出会つた開始文字はエラー・
リセツト動作を惹き起こせない。一連の連続した
開始コードに時として似ている全部零のパターン
の真中にスタイラスが降ろされた時も、この回路
はその状態を検出する。 文字間のスペースを走査するのに要する時間は
計数器114の単なる延長である計数器148に
より測定される。文字間のスペース走査が2分の
1秒以上ほど続けば、計数器148により作られ
たTIMOT信号(時間切れ信号)がフリツプ・フ
ロツプ648をセツトし、OVFLER信号(オー
バー・フロー・エラー信号)を出してエラー・リ
セツト動作を開始する。有効なバー又はスペース
を走査するのに要する時間は計数器114で測定
される。もし走査が余りにゆつくり行われるな
ら、ゲート146はOVFL信号(オーバー・フロ
ー信号)を出し、それはゲート652を通つて流
れ、フリツプ・フロツプ648をセツトし、エラ
ー・リセツト動作を始める。文字間のスペースを
走査している間はゲート650で反転されてフリ
ツプ・フロツプ648がOVFL信号(オーバー・
フロー信号)に応ずることを不可能にしているJ1
信号により、その間はOVFL信号(オーバー・フ
ロー信号)は通常フリツプ・フロツプ648をセ
ツトするのが妨げられている。しかしながら最初
の開始文字に続くスペースの走査をする間は、使
用可能なQ1信号が欠如しているのでゲート65
0はJ1信号を通すのが妨げられている。それでど
んな最初の開始文字も次に続く文字の近くに配置
されていなければならない。そこで実際の目的と
しては、エラー・リセツト動作を生ぜずに開始文
字から隣接する何もないスペースへ走査をするの
は不可能である。 走査された最終文字(停止文字)に続くスペー
スの幅を測る計数器150は各文字の幅を測るの
にもまた用いられる。文字が余りにゆつくり、又
は余りに多くの幅広い部分を含むならば、計数器
150は信号CH14を出し、それはゲート64
4,646,624,626を通つて流れて、エ
ラー・リセツト動作を開始する。文字間のスペー
スの走査をする間は、計数器150をリセツトし
たままに保持するJ1信号により、通常計数器15
0は機能を妨げられる。最終の停止文字が走査さ
れた後、ジヨンソン計数器142はそのリセツト
端子に反転START信号がないことによりJ0状態
にロツクされるので、J1端子が計数器150をリ
セツトすることはできなくなる。それで前に述べ
た如く、計数器150は走査された最終文字の幅
を示すことができる。 以上の如く本発明を実施した幅変調バーコード
読取り装置にあつては、計数器148が文字間の
スペースの長さを測定し、スペース走査が0.5秒
以上続けば、TIMOT信号(時間切れ信号)を出
力する。例えば、第7図の最上部分のバーコード
文字群の左のバーコード文字が、一連のバーコー
ド文字群の開始コードと仮定すると、その開始コ
ードの左端から右方向に一連のバーコード文字群
を走査する場合、その開始コードの走査により、
STARTP信号(開始パルス信号)がつくられ、
読み取り動作が行われる。それに引き続いて、開
始コードに文字間スペースを介して続くバーコー
ド文字が、順調に走査されれば、計数器148は
TIMOT信号(時間切れ信号)を出力することは
ないので、読み取り動作が引き続いて行われてゆ
く。 しかし、例えば、2番目のバーコード文字の右
端のバーから左方向に走査されるとすると、その
バーコード文字が走査されてもそれは開始コード
でないので、装置は、STARTP信号(開始パル
ス信号)を発生しない。次いで、最始コードが走
査されると、STARTP信号(開始パルス信号)
が発生されるが、そのあとにはバーコード文字が
なく幅広のスペースが続くので、計数器148が
TIMOT信号(時間切れ信号)を出力し、そのた
め装置はエラーリセツトされる。従つて、1つの
バーコードの開始コードに引き続いて別のバーコ
ードを途中から走査しても、それを読み取ること
はなく、改めて開始コードの始めからバーコード
走査しなければそれを読み取ることはできない。
従つて、その種のエラーを防止することができ
る。また、スペースの走査に時間がかかり過ぎる
と、ゲート146がOVFL信号(オーバーフロー
信号)が出力され、装置はエラーリセツトされ
る。 本発明の望ましい実施例について述べたが、本
発明の範囲を逸脱することなく、当業者には数多
くの修正と変化が可能であることは説明するまで
もなく明らかであろう。
理シンボルが使われる。より詳しく言えば、D−
型ゲートはAND論理回路を示し、そのようなゲ
ートの出力部に丸を有するものはNAND論理回路
を示す。矢型とゲートはOR論理回路を示し、そ
のようなゲートの出力部に丸を有するものは
NOR論理回路を示す。出力部に丸を有する三角
形のゲートはNOT(否定)回路を示す。出力部
にQ又はの文字のある縦長の長方形の箱は典型
的には以下の特徴を持つているD型フリツプ・フ
ロツプである。即ち、C入力が低から高に変つた
時にフリツプ・フロツプのD入力が高いと、フリ
ツプ・フロツプはすぐに高レベルのQ出力信号及
び低レベルの出力信号を出し始め、C入力が低
から高に変つた時にD入力が低いと、Q出力はす
ぐに低くなり、そして出力は即座に高くなる。
そのようなフリツプ・フロツプのQ出力はそのフ
リツプ・フロツプのSつまりセツト入力に高レベ
ル信号をかけても高くセツトされ、そのフリツ
プ・フロツプのRつまりリセツト入力に高レベル
信号をかけて低くセツトされうる。どの場合も
出力信号は常にQ出力信号の否定である。ある場
合には、シフト・レジスタ装置もまたD入力端
子、C入力端子その他を有する様に図示される。
そのようなシフト・レジスタは、シフト・レジス
タを作るため直列に接続された一連のD型フリツ
プ・フロツプから成るシフト・レジスタ又はそれ
と等価なものと理解される。 矢型NORゲートに似ているが、その左縁に余
分の曲線を有するゲートは排他的OR(EXOR)
ゲートである。 相補型対称金属−酸化膜−半導体集積回路が本
発明の望ましい実施例の構成に使われているが、
本発明の機能を果たす為、何か適当な型の集積又
は別々の論理を使つても良い。 図中反転信号は上線で明瞭に示されている。上
線のない信号は、信号が高いか正のレベルにある
時「存在」し、信号が低いか負のレベルにある時
「欠如」している。上線付き信号は、信号が低い
か負のレベルにある時「存在」し、信号が高いか
正のレベルにある時「欠如」している。各信号の
性質は、(反転したものもしないものも)図中に
はつきり示したので、以下の本文中では信号が反
転されているか否かは通常触れない。信号は単に
「存在」とか「欠如」と述べられて、信号の実際
の極性は図を参照して決められる。否定ゲートの
機能は図中明らかなので、非反転信号を反転信号
に変え、その逆の役割しかしない否定ゲートは以
下の記述の中では通常時に触れない。 全体として論理ゲートはゲーテイング
(AND)論理機能、信号通過(OR)論理機能、
反転(NOT)論理機能、排他的論理和
(EXOR)機能、又はこれらの機能の組せを行な
う。単に全入力信号を出力として通すORゲート
の場合は「通過する」と言われ、通常それ以上の
ゲート操作に関る議論は含まれない。ゲーテイン
グ又は信号制御機能を行なうANDゲートの場合
は、ある信号がゲートを通るのを阻止されるとゲ
ートは「使用禁止」と言われる。信号がゲートを
通過可能ならば、ゲートは「使用可能」と言われ
る。もしゲートに2つ以上の入力信号があり、入
力信号の全部ではないが幾らかがゲートを信号の
通らないようにするならば、ゲートは「部分使用
可能」と言われる。 第2図はデジタル入力回路112、クロツク1
15、タイミング信号計数器113の詳細の図解
をした論理図である。以前に述べた如く、クロツ
ク115はCAパルス列を発生し、同時にCAパル
スの間に割込んだCBパルス列を発生する簡単な
クロツクである。クロツク115のパルス発生部
分は、出力端子が簡単なR−C時間遅延回路網2
03を通つてその入力に戻つて非常に簡単な発振
器を形成している一対のNANDゲート202から
成つている。ゲート202の出力信号は、ゲート
202の入力がその通常のスイツチングの閾値レ
ベルより上がるか下がるかする所で、R−C回路
網203中のコンデンサーが充電又は放電する毎
に反転する矩形波形状をしている。ゲート204
はこの矩形波形状を四角にし、それを第1のD型
フリツプ・フロツプ206のクロツク入力に入れ
る。フリツプ・フロツプ206はその反転Q出力
をそのD入力に結びつかせ、ゲート204から受
ける各パルス毎に応じてフリツプ・フロツプは状
態を変える。フリツプ・フロツプ206のQ出力
は第2のフリツプ・フロツプ208のクロツク入
力に接続され、それもまた反転Q出力をそのD入
力と結びつけてある。2つのフリツプ・フロツプ
206と208は連続的に4つの順段階をへて、
それからリセツトするという簡単な2段2進計数
器を形成する。これらの状態のうちの一つの間
で、ゲート210は全ての高レベル入力を受け、
出力パルスCAを発生する。これらの状態のうち
別の1つの間に、ゲート212は全ての高レベル
入力を受けて出力パルスCBを発生する。パルス
CA及びCBが交互に行こり、お互いに僅かの遅延
時間離れて分けられているように、ゲート210
及び212は2つのフリツプ・フロツプに接続さ
れている。CAパルスの周波数は1秒間に200000
パルスで、CBパルスの周波数も同様である。 デジタル入力回路112は第2図の左下部分を
占めている。アナログ入力回路110により送ら
れるANALOG信号(アナログ信号)はフリツ
プ・フロツプ214のD入力にかかる。CBタイ
ミング・パルスはフリツプ・フロツプ214のク
ロツク入力に送られる。バーの走査に応じて
ANALOG信号(アナログ信号)が高くなると、
次に続くCBパルスがフリツプ・フロツプ214
をセツトし、フリツプ・フロツプ214のQ出力
(即ち、BLK信号、黒信号)がフリツプ・フロツ
プ216をセツトさせる。フリツプ・フロツプ2
16の非反転Q出力信号はゲート218を通過
し、スペースからバーへの遷移の走査の信号とな
るPROCESSパルス信号(プロセスパルス信号)
となる。PROCESSパルス信号(プロセスパルス
信号)の持続時間はどれ位フリツプ・フロツプ2
16がセツトされたままでいられるかで決められ
る。以下に説明する様に、これは予め決められた
遅延時間後にフリツプ・フロツプ216をクリア
するフリツプ・フロツプ220により決められ
る。フリツプ・フロツプはそれからCAパルスで
リセツトされる。 ANALOG信号(アナログ信号)が低くなる
と、次に続くCBパルスがフリツプ・フロツプ2
14をクリアし、フリツプ・フロツプの反転出力
にフリツプ・フロツプ222をセツトさせる。そ
れからフリツプ・フロツプ222の出力はまたゲ
ート218を通過し、バーからスペースへの遷移
の走査を合図するPROCESSパルス(プロセスパ
ルス)となる。フリツプ・フロツプ216がクリ
アされたのと同様に僅かの遅延時間の後にフリツ
プ・フロツプ222はフリツプ・フロツプ220
でクリアされる。このようにデイジタル入力回路
は、ゲート218の出力に短時間持続する
PROCESSパルス(プロセスパルス)を発生し
て、ANALOG信号(アナログ信号)の各揺動に
対応する。フリツプ・フロツプ214のQ出力は
BLK信号(黒信号)と呼ばれ、バー又はスペー
スが走査されているのを示す。 走査スタイラスの運動が非常に速くて、狭いバ
ー又はスペースが余りに短時間のうちに走査され
て論理回路が応じ切れなければ、フリツプ・フロ
ツプ216又は222のうちの1つがクリアされ
る前にANALOG信号(アナログ信号)が二番目
の変化をする。これは又記録上の薄い汚れを非常
に狭いバーと間違えた時にも起こる。このような
ANALOG信号(アナログ信号)の第二の変化は
2つのフリツプ・フロツプ216及び222の他
方もセツトし、それで両方のフリツプ・フロツプ
がセツトされる。そこで2つのフリツプ・フロツ
プの夫々からのQ出力はゲート224を使用可能
にして、UER信号(速過ぎエラー信号)を発生
させる。このUER信号(速過ぎエラー信号)は
制御論理140に送られ、それは走査打切りで答
える。通常では2つのフリツプ・フロツプ216
及び222は決して同時にはセツトされず、それ
でUER信号(速過ぎエラー信号)は決して発生
されない。 タイミング信号計数器113が第2図の中央部
分を占めている。ジヨンソン計数器142が第2
図の下方に見える。これらの計数器は両方ともゲ
ート218の出力で発生されるPROCESSパルス
(プロセスパルス)で制御されている。 タイミング信号計数器113は、PROCESS信
号(プロセス信号)が存在する限りいつも零から
29まで計数する一連の計数段階226,228,
230から成つている。タイミング信号計数器の
第29番目の計数はフリツプ・フロツプ220のC
入力に送り返され、そのフリツプ・フロツプをリ
セツトし、それによつてPROCESS信号(プロセ
ス信号)を終らせる。PROCESS信号(プロセス
信号)が存在しない時は、ゲート218の出力は
高くなり、計数器226,228,230をその
クリアされ又はリセツトされた状態にロツクす
る。PROCESSパルス(プロセスパルス)が起こ
る度毎に、ゲート218の出力が下がりタイミン
グ信号計数器が0から29まで計数するのを可能に
する。 計数器226は10個の独立な出力を有する従来
の10進計数器である。これらの出力はD0、D1、
D2、……………、D9と名付けられている。最上
位の出力が計数器228のC(クロツク入力に送
られる。計数器228は反転Q出力をそのD入力
に再び接続している簡単なフリツプ・フロツプで
ある。計数器226が計数D9から計数D0へと進
むと、計数器228をセツトし、D10出力信号を
発生させる。計数器226はそれから2番目の計
数をする。計数器226が再び計数D9からD0へ
と進むと、それは計数器228をクリアする出力
パルスを出し、それでD10出力信号を終らせる。
今度は計数器228が同様のフリツプ・フロツプ
計数器230をセツトし、それでD20出力信号を
発生させる。それから計数器226はD20出力信
号が存在したまま再びD0からD9まで計数して、
計数20から29までを示す。計数D9が再び到達す
ると、D20信号とD9B信号(CBパルスでストロー
プされたD9)は組合さつて、ゲート232に29B
信号を発生させて、フリツプ・フロツプ220
を、PROCESS信号(プロセス信号)が終るよう
に作動させる。それからフリツプ・フロツプ22
0はすぐにクロツク115で発生される次のCA
パルスでクリアされる。 計数器226,228,230で発生される出
力信号は望みのままに組合せることができて、望
みのCA又はCBクロツク・パルス数だけ持続する
所望の連続タイミング信号を得ることができる。
第2図の右半分に示されたゲートは、システム操
作の制御のために必要なタイミング信号を発生す
るように簡単にタイミング信号計数器出力とCA
及びCBタイミング・パルスを組合わせている。
例えばゲート234,236,238,240は
計数器226の選んだ出力をクロツク出力パルス
と共にストローブさせ、それで0から29までのタ
イミング間隔の間の3つの選択した計数値の所で
CBクロツク出力パルスを発生させる。 これらのパルスはD1B,D2B,D7B,D
9Bと名付けられる。計数器228がセツトされ
ている時のみ、一対のゲート242と244はパ
ルスD7BとD9Bを通過させ、タイミング信号
計数器の第17番と第19番の計数の間、CBクロツ
ク・パルスと同期してパルス17Bと19Bを発
生する。2つの計数器228と230が両方とも
クリアされた時ゲート246は応動し、これらの
計数器が夫々1及び2の計数の時、そしてその計
数の時のみ1対のゲート248及び250は使用
可能でD1B及びD2Bのタイミング・パルスを
通す。計数器230がセツトされた時のみゲート
252,254,256,232はパルスD1
B,D2B,D7B,D9Bを通し、それで計数
器の夫々第21番目、第22番目、第27番目、第29番
目の計数の間のみCBタイミング・パルスを送
る。信号1B,2B,17B,19B,21B,
22B,27B,29BはこのようにCBクロツ
ク信号と同期し、タイミング信号計数器が対応す
る計数値に達した時に起こるパルス信号である。 双安定マルチバイブレータ258は1Bタイミ
ング・パルスでセツトされ、それから17Bタイミ
ング・パルスでクリアされる。それでこの双安定
マルチバイブレータ258は正確に16個のCAク
ロツク・パルスを取り囲み、CBクロツク・パル
スと同期して始まり終わる高レベル入力信号LD
16Aを発生する。LD16A信号はゲート260
を使用可能にして丁度16個のCAクロツク・パル
ス信号ラインCLK16Aに通し、それはシステ
ムの演算装置中のシフト・レジスタ等を通しての
16ビツトの数の移動の制御に使われる。LD16A
信号はまたCAクロツク・パルスでストローブさ
れるフリツプ・フロツプ262のD入力に送られ
る。正確に16個のCAクロツク・パルスを囲み、
CAクロツク・パルスと同期して始まり終わるフ
リツプ・フロツプ262の出力にLD16Bが表
われる。このLD16B信号は、ゲート264を使
用可能にして、丁度16個のCBタイミング・パル
スをCLK16B信号ラインに通すのに使われる。
CLK16B信号はまたシフト・レジスタ、演算装
置、その他同様のものの操作制御に使われる。 ジヨンソン計数器142が第2図の下部に見え
る。この計数器は単にゲート218の出力に表わ
れるPROCESSパルス(プロセスパルス)の数を
計数する。計数器142のリセツト入力に送られ
ている反転START信号(反転開始信号)の欠如
によつて、計数器142は最初信号J0を発生し
ながら、リセツト状態にロツクされている。反転
START信号(反転開始信号)が存在すると、計
数器142は自由にJ0からJ7そして再びJ0と計数
し、各PROCESSパルス(プロセスパルス)の後
縁によつて進められる。走査が記録上の各文字の
最後のバーを横切り始めた僅か後に、信号J0は
いつも再び現われる。 第3図はバー及びスペース幅計数器114、シ
フト・レジスタ116、計数器150、比較論理
152、EOMD信号(メツセージ終了信号)を
発生する制御論理140を示す論理図である。第
3図のこれらの素子はEOMD信号(メツセージ
終了信号)を発生する論理回路を除いて示された
順序で以下に詳述する。後者の論理回路はより以
降で述べる。 計数器114は12ビツトの容量を有する12ビツ
ト計数器である。計数器114の12個の出力はシ
フト・レジスタ116の12個の入力に送られる。
シフト・レジスタ116は2つの集積回路シフ
ト・レジスタ302及び304と、シフト・レジ
スタ段階304の出力に直列に接続された1対の
フリツプ・フロツプ306及び308から成る。 計数器114とシフト・レジスタ116はタイ
ミング信号計数器で発生したタイミング信号で制
御される。バーからスペースへ、またはその逆に
進行する走査により惹起されたANALOG信号
(アナログ信号)のレベル遷移の直後、デイジタ
ル入力回路は29のタイミング信号計数を持続する
PROCESSパルス(プロセスパルス)を発生す
る。タイミング信号計数器の計数1の時、1Bタ
イミング信号は計数器114の内容をシフト・レ
ジスタ116に送る。ほぼ同時にD1タイミング
信号はフリツプ・フロツプ310をセツトして、
ゲート312を使用禁止にし、どのCBタイミン
グ・パルスも計数器114の入力へ通過できない
ようにする。 計数2で、2Bパルスが計数器114をクリア
する。計数3でD3パルスがフリツプ・フロツプ
310をクリアして、ゲート312を使用可能に
し、計数器114の計数入力へCBパルスを通
す。そこで計数器はリセツトされ、次のバー又は
スペースの幅を測るためCBパルスを計数し始め
る。先行したバー又はスペースの幅を表わす計数
値は今はシフト・レジスタ116中に蓄積されて
いる。 タイミング信号計数2から始まつて、16個の
CBクロツク・パルスがシフト・レジスタ116
のシフト入力に送られ、そこに蓄積された計数値
の直列表現をさせる。フリツプ・フロツプ306
及び308から構成される余分のシフト・レジス
タの場合は、16個のCAパルスがフリツプ・フロ
ツプ306に送られ、16個のCBパルスがフリツ
プ・フロツプ308に送られる。計数値は、前に
説明した如く、信号ライン×1、×2、×4、×8
上に表われる。これも前に説明した如く、計数値
は実効的には示された数字倍されている。 計数器114が予め決められた高レベル計数に
達すると、特定の計数値を越えたことを合図する
ため、ゲート146はOVFL信号(オーバー・フ
ロー信号)を発生する。バー又はスペースが長過
ぎるか、ゆつくり走査され過ぎた時にOVFL信号
(オーバー・フロー信号)が合図として使われ、
また開始文字の後の空白が広過ぎる時の合図にも
使われる。 計数器114の最上位の出力C12は第2の計
数器148の計数入力に送られる。所定の計数値
に達した時計数器148は出力信号T40,T1
0,TIMOT信号(時間切れ信号)を発生する。
実際計数器148は計数器114による長時間間
隔の測定を可能にする為の、計数器114の単な
る延長である。例えば、TIMOT信号(時間切れ
信号)はスタイラスが1つの文字から次へ動くの
に余りに長時間かかつた時にのみ起こる。本発明
の望ましい実施例では、TIMOT(時間切れ)計
数値は約0.5秒の時間間隔を測定する様に選ばれ
ている。1つの文字から次の文字へ、表査はその
時間内に進まねばならず、そうでないと走査は打
切られる。TIMOT信号(時間切れ信号)は、ス
タイラスを走査の途中で1つのバーコードから隣
接するバーコードへ移動するのを防いでいる。 14段の計数器150(第3図)は長いスペース
がメツセージの最終バーに続くのを保証してい
る。文字の間のスペースを走査している間は、計
数器150はJ1信号でリセツトされる。それから
計数器J1は、文字が走査されている間にCAパ
ルスを計数して、各文字の手動走査に要する大体
の時間を計測する。最終の停止文字を走査した
後、EOMD信号(メツセージ終了信号)はCAパ
ルスがゲート320を通つて計数器150へ流れ
るのを防げ、それで実際上計数器150中に最終
停止文字を走査するのに要した時間とほぼ等しい
計数値をロツクする。比較回路152はそこで計
数器150中に蓄積された計数値と停止文字が走
査された後のスペースが走査されるに従つて増加
する計数器114に示された計数値との比較をす
る。スペースが充分に長ければ、2つの計数値は
ついには等しくなり、比較回路152にMATCH
信号(マツチ信号)を出させる。それから
MATCH信号(マツチ信号)とEOME信号(メツ
セージ終了信号)はゲート324に走査が成功し
たことを意味するGDRD信号(読取り良好信号)
を発生させる。しかし停止文字に続くスペースが
余りに短かすぎると、MATCH信号(マツチ信
号)とGDRD信号(読取り良好信号)は発生しな
い。 第4図はシフト・レジスタ116から出力信号
を受け、上述した種々の幅比較操作を実行する演
算論理の論理図である。シフト・レジスタ116
の×1出力信号及び×2出力信号は直列加算装置
120に送り込まれ、それは×3出力信号を発生
する。×1及び×4信号が加算装置118に送り
込まれ、それは×5信号を発生する。それから直
列に接続された第1及び第2の16ビツト段階40
2及び404から成り、16個のCLK16Bパルスに
より駆動されるシフト・レジスタ121を通つ
て、×5信号が送られる。演算装置118及び1
20も各計算の間、16個のCLK16Bパルスにより
作動させられる。シフト・レジスタ121からの
DELAYED×5信号は、演算装置120からの×
3信号及びシフト・レジスタ116からの×8信
号と共に演算装置122と124に送られる。演
算装置118,120,122,124は、装置
122と124に対し、122と124装置の入
力信号の差を計算させ、所望の比較結果を表わす
GTR信号(より大きい信号)及びLES信号(よ
り小さい信号)を生ずるようにプログラムされて
いる。計算の後、演算装置122及び124の出
力は、正又は零の結果を表わすため低レベル信号
となるか、負の結果を表わすため高レベル信号と
なる。どちらの場合でも、演算装置の出力信号は
結果の最上位のビツトを表わす。負の結果は必然
的に補数形式で表わされるので、このビツトは結
果が負の時には必然的に高レベルとなる。数が大
きすぎて適正に扱えないという事がなければ、正
の数の最も上位のビツトは常に零ビツトなので、
結果が正数の時はこのビツトは常に低レベルであ
る。演算装置122及び124はCLK16B信号ラ
インで示される16個のCBパルスで作動される。 第4図の下半面に示された論理は、走査の速さ
の突然の変化を検出し、何らかのそんな変化が検
出された時には走査を打切る。 加算器406及びシフト・レジスタ410は各
文字のバーとスペースの幅を合計する。結果の和
CHWDTH(文字幅)は、文字間の時間間隔J0の
開始の間に加算器406の出力に表われ、その時
に2つのシフト・レジスタ408及び414にロ
ードされる。この和は完全な文字の走査に要する
時間の測定の標準である。シフト・レジスタ41
0は続くJ1の時間間隔の間にクリアされ、加算器
406とシフト・レジスタは同じ様に次の文字を
走査するのに要する時間を測定し始める。 次の文字が走査された後で、その文字を走査す
るのに要した時間に比例した数が加算器406の
出力に表われる。1対の加算器418及び420
がこの数と、以前に走査した文字の走査に要した
時間の2倍を表わす数及び2で割つた数との差を
計算する。シフト・レジスタ408はその内容を
実効的に2倍する余分の第17段階を備えている。
シフト・レジスタ414は21B計時パルスの形を
した余分のデータ前進パルスを受け、この余分の
パルスが実効的にシフト・レジスタの内容を2で
割る。21Bパルスが起きた時、D20計時信号はゲ
ート416を使用禁止し、その時に値零をシフ
ト・レジスタにロードさせる。 現在の文字走査がその前の走査より2倍以上の
時間を要するならば、加算器418は反転
ACCER1信号(反転加速1信号)を出す。現在
の文字走査がその前の走査より半分以下の時間し
かかからなければ、加算器420は反転
ACCER2信号(反転加速2信号)を出す。これ
らの信号はどちらも以下に充分に説明する如く制
御論理に走査を打切らせる。第7図は3つのバー
コード文字を走査する場合のタイムチヤートを、
第7A図は第7図の1部を拡大したタイムチヤー
トをそれぞれ示したものである。 第7図において、アナログ入力回路110から
得られた信号ANALOGは、デジタル入力回路1
12によつて整形されてBLK信号を発生する。
このデジタル入力回路112では、第2図及び関
連する説明に示すように、BLK信号が反転する
毎に一定幅のPROCESS信号を出力する。この
PROCESS信号はタイミング信号計数器113に
入力される外にジヨンソン計数器142に入力さ
れ、計数器ゼロの状態を示すJ0信号を低レベルに
するとともに、計数1を示すJ1信号を発生する、
このJ1信号は次のPROCESS信号が到来するまで
高レベルとなる。次のPROCESS信号が入力され
ると計数は2となつてJ1信号は低レベルとなり、
以後のPROCESS信号の到来毎に計数器142は
計数し、8個のPROCESS信号により再びゼロと
なつて、低レベルであつたJ0信号を高レベルにす
る。図示のようにバーコード文字は4つの黒いバ
ーとそれらの間の3つのスペースから成るので、
BLK信号は1つの文字の間に8回反転しこのた
め、J0信号が低レベルの状態にあるとき1つの文
字の間隔を表わすことになる。 第2図に関連して前記したように、PROCESS
信号はタイミング信号計数器113にも入力され
ており、該PROCESS信号を所定幅のパルスとし
ている。20KHzで連続的にパルスを発生するク
ロツク115のCB(またはCA)パルスが計数器
226のクロツク端子に入力されて、CB(また
はCA)パルスの順序付けを行なう。PROCESS
信号の立上りから29番目のCBパルスが到来する
と、フリツプフロツプ220がセツトされフリツ
プフロツプ216をリセツトする。従つて、
PROCESS信号は、BLK信号の幅の如何にかかわ
らず、所定幅のパルスとなる。この様子は第7A
図に更に詳細に示されている。タイミング信号計
数器113からは、1つのPROCESS信号の間の
CBパルスを順序付けするゲート群に入力され、
ここで1B,2B,17B……………29B等の
信号が作られる。双安定マルチバイブレータ25
8には1B信号と17B信号とが入力され、その出力
(LD16A)がフリツプフロツプ262のデータ端
子Dに入力される。このフリツプフロツプ262
はCAパルスによつてクロツクされ、LD16Bパル
スを出力する。このLD16Bパルスは1Bの立上り
とともに立上り、17Bの立上りとともに立下るパ
ルスとなる(第7A図)。このLD16Bパルスはゲ
ート264のゲートを開き、16本のCBパルスを
通過させて、CLK16Bパルスを作る。すなわち、
CLK16Bパルスは、第7A図に詳細に示すよう
に、各PROCESS信号の開始とともに発生し且つ
16個のCBパルスを含む信号となる。以上の説明
により、装置にとつて重要な各信号のタイミング
が明らかにされたものと信ずる。 第5図は2つのシフト・レジスタ126及び1
28、読取り専用記憶装置130、ラツチ132
及び134、第2の読取り専用記憶装置138を
示している。幅比較の結果を表わしているGTR
信号(より大きい信号)とLES信号(より小さい
信号)とがシフト・レジスタ126及び128の
入力に送り込まれ、シフト・レジスタ126及び
128はフリツプ・フロツプのつけ加わつた4ビ
ツトのシフト・レジスタから成つている。デー
タ・ビツトは、フリツプ・フロツプ262(第2
図)により作られるLD16B信号の後縁によりシ
フト・レジスタ126及び128にロードされ
る。この後縁は演算副システムからの16個のクロ
ツク・パルスの発生に続いてすぐに起こる。これ
でシフト・レジスタ126及び128には2つの
演算装置122及び124により示される最後の
2ビツトがロードされる。既に説明した如く、デ
イジタル入力回路により作られ、今バー又はスペ
ースのどちらが走査されているかを示すBLK信
号(黒信号)と共に、2つのシフト・レジスタ1
26及び128の出力は交互に読取り専用記憶装
置130の入力に送られる。読取り専用記憶装置
130は8つの出力端子を有し、そのうち4つは
バーラツチ132に送られ、3つはスペースラツ
チ134に送られ、1つは使用されない。ラツチ
132及び134はクロツク信号19Bと同期し
てロードされる。信号19Bが起きると、読取り
専用記憶装置130はその出力にシフト・レジス
タ126及び128によりアドレスされたデータ
を表わす。BLK信号(黒信号)が存在する時の
み、ラツチ132は19Bパルスで作動される。
19Bパルスを通すようにゲート136′を使用可
能にする反転BLK信号(反転黒信号)により、
19Bパルスはゲート136′を通過できてラツチ
132をストローブする。BLK信号(黒信号)
が無いと、その欠如は19Bパルスが代りのゲート
138′を通過し、データをスペースラツチ13
4中にストローブすることを可能にする。このよ
うにして、各バーコードが走査された後でバーラ
ツチ132は読取り専用記憶装置130からのデ
ータでロードされ、各スペースコードが走査され
た後でスペースラツチ134は読取り専用記憶装
置130からのデータでロードされる。読み取り
専用記憶装置130は、最も近時に走査されたバ
ー又はスペースの広く及び狭い幅のパターンに丁
度対応したデータを、そのアドレス可能な記憶場
所に記憶する。 ラツチ132及び134に捕えられたデータ
は、システムのデータ出力として表わされる。こ
のデータは計数器142の状態によつて意味があ
つたりなかつたりする。計数J0が終ると、文字が
走査され計数器142が動いていると仮定して、
捕えられたデータは現実に文字のバー及びスペー
スの幅を表わしている。捕えられたデータが標本
抽出される時には、信号J0が合図のため外部デ
ータ利用装置に送られる。 読取り専用記憶装置138は、信号J0の存在
する時のみ、機能可能である。そのように可能な
時、読取り専用記憶装置138は2つのラツチ1
32及び134に捕えられたデータをアドレス・
コードとして受け取る。それで読取り専用記憶装
置138は、今走査したばかりの「文字」の性質
を示す記憶場所の内容を表わす。読取り専用記憶
装置138の出力は、開始及び停止文字を同一視
し、極性その他のエラーを有む文字を選択する複
数の制御信号144である。 本発明の望ましい実施例は2つの異なるコード
構成を有する少なくも2つの異なる応用例に使わ
れると予想される。第1のコード構成は主として
小売での応用例、例えば食糧雑貨店及びデパート
での使用を目的としたもので、第2のコード構成
は倉庫、小荷物上書きの走査その他のその類の応
用例での使用を目的としている。読取り専用記憶
装置138はこれらの2つの応用のどちらの制御
信号も発生する様設計されており、どちらのコー
ド構成での使用にも適している。 制御信号のSTF−RU信号(開始文字前進読取
り信号)はバーコード開始文字の前進読取りを合
図する。制御信号のSTB−RU信号(開始文字後
退読取り信号)はバーコード開始文字の後退読取
りを合図する。もし開始文字が小売りコード開始
文字であるなら、制御信号のSTF+STB−R信
号(小売りコード開始文字信)が表われる。開始
文字が非小売りコード開始文字ならば、信号
STF+STB−R(小売りコード開始文字信号)
は表われない。前進読取りでも後退読取りでも、
どの種の開始コードに応じても、STF+STB−
RU信号(開始コード信号)が生ずる。 残りの2つの制御信号はエラーを示す。小売り
コード文字でエラーに出会つたら、CATER
RET信号(小売りコード文字にエラー信号)が
表われる。別の型のコードを使用したコード化文
字中でエラーに出会つたら、CATER UPC信号
(非小売りコード文字にエラー信号)が表われ
る。当然読取り専用記憶装置138は現在どんな
型のコードが使用されているかは知らない。記憶
装置は各文字とどう解釈するかに従つて、制御信
号を発生する。システム制御論理のその他の論理
要素(第6図)は起こり得る制御信号の種々の組
合わせに対応して正確にどんな動作が起こるかを
決定する。 第6図及び第3図の下部は、バーコード読取り
装置100の全体としての操作を制御する制御論
理40の詳細を図解している。この制御論理は以
下に詳述される。 何らかの走査操作が完了した後、ゲート602
(第6図の右端隅)により作られるRES信号(シ
ステム・リセツト信号)により、全システムはリ
セツトされる。この信号はシステムの計数器及び
制御回路の全てをリセツトし、特に第6図の上部
に図示されたフリツプ・フロツプをリセツトす
る。これはフリツプ・フロツプ610及び612
の反転出力に接続したゲート616からの
START信号(開始信号)の流れを終らせる。シ
ステムは今度は、有効な開始文字を捜す間は、操
作の探査モードに入る。 計数器142(第1図及び第2図)はそのリセ
ツトされた入力にSTART信号(開始信号)が欠
如しているために、リセツト状態にロツクされ、
計数器142はそのJ0出力信号を連続的に出す。
このJ0出力信号が続けて存在するので、それは読
取り専用記憶装置に、ラツチ132及び134に
より示される捕えられたデータの連続的な走査を
させる。ラツチが開始コードに対応するデータを
捕えている時は、読取り専用記憶装置138は
STF+STB−RU信号(開始コード信号)を生
じ、この信号を第6図の左上部にあるゲート60
4に送る。簡単なシフト・レジスタ606により
作られたFBB信号(4本のバー信号)によりシ
ステムがリセツトされた後、第4番目のバーの走
査の前は、ゲート604は使用禁止である。更に
ゲート608を通つてゲート604に送られてい
るBLK信号(黒信号)によるスペースの走査の
後は、ゲート604は応答するのを妨げられる。
ゲート604は、タイミング信号計数器113
(第2図)から来るタイミング信号22Bで周期
的にストローブされる。ゲート604の出力は
STARTP信号(開始パルス信号)パルスであ
る。簡単にまとめると、RES信号(システム・
リセツト信号)の存在のため4つのバー及び3つ
のスペースを含む有効な開始コード組合せに出会
い、それら全てが走査された時に、STARTP信
号(開始パルス信号)パルスが作られる。 STARTP信号(開始パルス信号)パルスの後
縁はフリツプ・フロツプ610,612及び61
4のクロツク入力に送られる。もし今出会つた開
始文字が前進始動コードならば、読取り専用記憶
装置138は制御信号のSTF−RU信号(開始文
字前進読取り信号)を出し、それはフリツプ・フ
ロツプ610にFWD信号(前進信号)発生を開
始させる。もし今出会つた開始文字が後読みした
開始コードならば、読取り専用記憶装置138は
制御信号のSTB−RU信号(開始文字後退読取り
信号)を出し、それはフリツプ・フロツプ612
にBWD信号(後退信号)の発生を開始させる。
通常これらフリツプ・フロツプの一方だけがセツ
トされる。もし開始コードが小売りコード開始文
字ならば、読取り専用記憶装置138はSTF+
STB−R信号(小売りコード開始文字信号)を
出し、それはフリツプ・フロツプ614に
START RET信号(小売り用開始文字信号)の
発生を開始させる。 フリツプ・フロツプ610及び612のどちら
かがセツトされた時、その反転出力はゲート61
6を通り、START信号(開始信号)となる。フ
リツプ・フロツプ614が又セツトされたなら
ば、ゲート618は使用禁止され、START
UPC信号(非小売り用開始文字信号)を発生で
きない。この信号の欠如は開始文字が小売り用開
始文字であることを示す。フリツプ・フロツプ6
14がセツトされないならば、ゲート618は使
用禁止でなく、START UPC信号(非小売り用
開始文字信号)が発生され、開始文字が小売り開
始文字でないことを示す。 シフト・レジスタ606の機能は簡単な説明に
値する。4つのバーを走査する前は、ラツチ13
2及び134は何か意味のないデータを含むかも
知れないので、少なくも4つの棒が走査されるま
では、ゲート604を有効な開始文字を捜す為の
操作につけるのは望ましくない。4ビツトのシフ
ト・レジスタ606は、各走査期間の始めに
RES信号(システム・リセツト信号)により、
リセツトされる。このシフト・レジスタのD入力
は正の電源に接続され、そしてバーが丁度走査さ
れた事を示すためBLK信号(黒信号)が高くな
る毎に、シフト・レジスタはストローブされる。
シフト・レジスタは最初RES信号(システム・
リセツト信号)により「0」ビツトをロードして
いた。反転BLK信号(反転黒信号)の4つの正
の変化の後、シフト・レジスタ606のQ4出力
は高くなり、FBB信号(4本のバー信号)を生
じ、それがゲート604に開始コードの捜査を開
始させる。 ゲート616により発生されたSTART信号
(開始信号)は、第2図に示された計数器142
に送り返されて、その計数器を解放する。計数器
142はそれから各文字のバー及びスペースを計
数し始める。各文字が完全に走査した直後を除い
ては、計数器142のJ0出力が今度は読取り専用
記憶装置138を使用禁止にする。このようにし
て、読取り専用記憶装置138は第1の文字のバ
ーの幅とそれに続く文字の別のバーの幅を有効な
または有効でない文字と解釈するのを防いでい
る。バーが有効な文字を表わしているならば、シ
ステムは走査モードの機能をし、その間システム
は各連続した4本のバーのセツトを調べる。 有効な文字の検査は、第6図の中央に図示され
た1対のゲート620及び622により実行され
る。非小売りコードが走査されている時は、
START UPC(非小売り用開始文字信号)によ
りゲート620は使用可能となり、小売りコード
が走査されている時は、START RET信号(小
売り用開始文字信号)によりゲート622が使用
可能となる。出力制御信号のCATER RET信号
(小売りコード文字にエラー信号)がゲート62
2に送られ、非小売りエラー出力制御信号の
CATER UPC信号(非小売りコード文字にエラ
ー信号)はゲート620に送られる。小売りコー
ドが走査され、小売りコード・エラーが起こる
と、ゲート622は出力信号を出す。もし非小売
りコードが走査されており、非小売りコード・エ
ラーが起こつたならば、ゲート620は出力信号
を出す。これらの出力信号はどちらもゲート62
4を通過し、ゲート626を通つてタイミング信
号計数器パルス21Bと同期してストローブされ
る。結果のパルスはゲート628を通過し、エラ
ー・フリツプ・フロツプ630をストローブす
る。するとフリツプ・フロツプ630はERM信
号(メツセージにエラー信号)を出して、外部デ
ータ利用装置にエラーに出会つたと伝える。フリ
ツプ・フロツプ630の反転出力はゲート632
を通り、フリツプ・フロツプ634をセツトす
る。するとフリツプ・フロツプからの出力信号は
次のCAタイミング・パルスがゲート602を通
つてRES信号(システム・リセツト信号)ライ
ンにまで到つて、システムをリセツトすることが
できるように、ゲート636を使用可能にする。
それでメツセージ中何かのエラーに出会つたら、
すぐにシステムはリセツトされる。それからフリ
ツプ・フロツプ634は1Bタイミング・クロツ
ク・パルスでリセツトされる。今度はシステムは
再び上述した操作の探査モードに戻る。もう1つ
別の有効な開始文字に出会うまで、フリツプ・フ
ロツプ630はセツトされており、その時にフリ
ツプ・フロツプ630はSTARTP信号(開始パ
ルス信号)パルスでクリアされる。 走査が正常に何らエラーに出会わずに進行した
と仮定すると、走査の終了は第3図の下部に示さ
れた論理で検出される。もしメツセージ中で第2
の開始文字に出会つたら、読取り専用記憶装置1
38は再び出力信号のSTF+STB−RU信号(開
始コード信号)を発生する。この信号はひき続い
ている高レベルSTART信号(開始信号)と合わ
さつて、ゲート326がフリツプ・フロツプ32
8のD入力に高レベル信号を送るようにさせる。
するとフリツプ・フロツプ328は次に続く22B
タイミング・パルスでストローブされ、EOMD
信号(メツセージ終了信号)を出し始める。
EOMD信号(メツセージ終了信号)により、ゲ
ート330は使用可能になり、EOMD−29Bと名
の付いた信号ラインへと1つの29Bタイミング・
パルスを通す。この信号パルスが第6図のゲート
632を通つて送られて、既に説明した如く、フ
リツプ・フロツプ634をセツトし、システムの
リセツトを始動する。 最終停止文字の最終バーが走査された後、
EOMD信号(メツセージ終了信号)の欠如でCA
クロツク・パルスがゲート320を通つて計数器
150へ流れ込むのを妨げ、停止文字に続くスペ
ースの幅が停止文字自身の幅と比較されている間
上述の過程を始動する。スペースが狭過ぎるな
ら、これは意図した停止文字にまた別の文字が続
いており、それでエラーが起こつたことを示して
いる。その場合はGDRD信号(読取り良好信号)
パルスは発生しない。スペースが充分に広けれ
ば、GDRDパルス(読取り良好パルス)が発生さ
れる。GDRDパルス(読取り良好パルス)はフリ
ツプ・フロツプ332をセツトする。フリツプ・
フロツプ332の反転出力はCBクロツク・パル
スがゲート334を通り、EOMD信号(メツセ
ージ終了信号)を発生するフリツプ・フロツプ3
28をクリアし、それでゲート324を使用禁止
し、GDRDパルス(読取り良好パルス)を終らせ
ることを可能にする。次の有効な開始文字に出会
うまではフリツプ・フロツプ332はセツトされ
たままで、その時にSTART信号(開始信号)で
クリアされる。GDRDパルス(読取り良好パル
ス)が出ないと、フリツプ・フロツプ332は次
に起こる1Bタイミング・パルスによりセツトさ
れ、するとその反転出力はCBパルスがフリツ
プ・フロツプ328をクリアしEOMD信号(メ
ツセージ終了信号)を終了するのを可能にする。
そこでEOMD信号(メツセージ終了信号)が存
在している短い時間の間に、GDRDパルス(読取
り良好パルス)が起きないという事により、停止
文字に続く不適正に狭いスペースが合図される。 開始文字に出会つた後の有効な走査の開始点
で、すぐに第2の開始文字に出会うのは不適当で
ある。このためどんな型であれ開始文字が走査さ
れた時はいつでも、制御信号のSTF+STB−RU
信号(開始コード信号)が先ずゲート646,6
24,626を通つてエラー・リセツト論理にま
で通されてリセツトのトリガを引く。最初の開始
文字に出会う前は、フリツプ・フロツプ630の
D入力に何らSTART信号(開始信号)がないの
でエラー・リセツト論理は使用禁止である。タイ
ミング信号21Bによりゲート626が同期され
た後でのみ、ゲート604はタイミング信号22
BによつてSTART信号(開始信号)を出すよう
ストローブされる。それで最初の開始コードに出
会つた時にゲート642で送られたエラー信号は
START信号(開始信号)がまだ欠如している時
にフリツプ・フロツプ630に達し、フリツプ・
フロツプ630はエラー信号に応ずることができ
ない。 最初の開始コードに出会つた後は、開始コード
と似たバーパターンの出現は、エラー信号をゲー
ト642,624,626,628を通つて流さ
せる。START信号(開始信号)が存在している
ので、このエラー信号はフリツプ・フロツプ63
0をセツトする。するとERM信号(メツセージ
にエラー信号)が生じ、システムは走査モードに
自身をリセツトする。 6つの文字が走査された後は、MIM信号(最
低の文字数の走査信号)により、ゲートは使用禁
止となる。フリツプ・フロツプ638及びシフ
ト・レジスタ640は最初両方ともクリアされて
いる。有効な文字の走査が始つた時、J1信号は繰
り返しフリツプ・フロツプ638をトグルする。 その他のトグルは全て+12ボルトの電圧源から
シフト・レジスタへの「1」データ・ビツトのロ
ードをするシフト・パルスとして、シフト・レジ
スタ640に送られる。第6番目のバーコード文
字が走査された後はゲート642は使用禁止にな
る。「1」データ・ビツトがシフト・レジスタ6
40を流れ続け、それでゲード642は走査の残
りの間中使用禁止のままである。メツセージの第
7番目の文字以降に出会つた開始文字はエラー・
リセツト動作を惹き起こせない。一連の連続した
開始コードに時として似ている全部零のパターン
の真中にスタイラスが降ろされた時も、この回路
はその状態を検出する。 文字間のスペースを走査するのに要する時間は
計数器114の単なる延長である計数器148に
より測定される。文字間のスペース走査が2分の
1秒以上ほど続けば、計数器148により作られ
たTIMOT信号(時間切れ信号)がフリツプ・フ
ロツプ648をセツトし、OVFLER信号(オー
バー・フロー・エラー信号)を出してエラー・リ
セツト動作を開始する。有効なバー又はスペース
を走査するのに要する時間は計数器114で測定
される。もし走査が余りにゆつくり行われるな
ら、ゲート146はOVFL信号(オーバー・フロ
ー信号)を出し、それはゲート652を通つて流
れ、フリツプ・フロツプ648をセツトし、エラ
ー・リセツト動作を始める。文字間のスペースを
走査している間はゲート650で反転されてフリ
ツプ・フロツプ648がOVFL信号(オーバー・
フロー信号)に応ずることを不可能にしているJ1
信号により、その間はOVFL信号(オーバー・フ
ロー信号)は通常フリツプ・フロツプ648をセ
ツトするのが妨げられている。しかしながら最初
の開始文字に続くスペースの走査をする間は、使
用可能なQ1信号が欠如しているのでゲート65
0はJ1信号を通すのが妨げられている。それでど
んな最初の開始文字も次に続く文字の近くに配置
されていなければならない。そこで実際の目的と
しては、エラー・リセツト動作を生ぜずに開始文
字から隣接する何もないスペースへ走査をするの
は不可能である。 走査された最終文字(停止文字)に続くスペー
スの幅を測る計数器150は各文字の幅を測るの
にもまた用いられる。文字が余りにゆつくり、又
は余りに多くの幅広い部分を含むならば、計数器
150は信号CH14を出し、それはゲート64
4,646,624,626を通つて流れて、エ
ラー・リセツト動作を開始する。文字間のスペー
スの走査をする間は、計数器150をリセツトし
たままに保持するJ1信号により、通常計数器15
0は機能を妨げられる。最終の停止文字が走査さ
れた後、ジヨンソン計数器142はそのリセツト
端子に反転START信号がないことによりJ0状態
にロツクされるので、J1端子が計数器150をリ
セツトすることはできなくなる。それで前に述べ
た如く、計数器150は走査された最終文字の幅
を示すことができる。 以上の如く本発明を実施した幅変調バーコード
読取り装置にあつては、計数器148が文字間の
スペースの長さを測定し、スペース走査が0.5秒
以上続けば、TIMOT信号(時間切れ信号)を出
力する。例えば、第7図の最上部分のバーコード
文字群の左のバーコード文字が、一連のバーコー
ド文字群の開始コードと仮定すると、その開始コ
ードの左端から右方向に一連のバーコード文字群
を走査する場合、その開始コードの走査により、
STARTP信号(開始パルス信号)がつくられ、
読み取り動作が行われる。それに引き続いて、開
始コードに文字間スペースを介して続くバーコー
ド文字が、順調に走査されれば、計数器148は
TIMOT信号(時間切れ信号)を出力することは
ないので、読み取り動作が引き続いて行われてゆ
く。 しかし、例えば、2番目のバーコード文字の右
端のバーから左方向に走査されるとすると、その
バーコード文字が走査されてもそれは開始コード
でないので、装置は、STARTP信号(開始パル
ス信号)を発生しない。次いで、最始コードが走
査されると、STARTP信号(開始パルス信号)
が発生されるが、そのあとにはバーコード文字が
なく幅広のスペースが続くので、計数器148が
TIMOT信号(時間切れ信号)を出力し、そのた
め装置はエラーリセツトされる。従つて、1つの
バーコードの開始コードに引き続いて別のバーコ
ードを途中から走査しても、それを読み取ること
はなく、改めて開始コードの始めからバーコード
走査しなければそれを読み取ることはできない。
従つて、その種のエラーを防止することができ
る。また、スペースの走査に時間がかかり過ぎる
と、ゲート146がOVFL信号(オーバーフロー
信号)が出力され、装置はエラーリセツトされ
る。 本発明の望ましい実施例について述べたが、本
発明の範囲を逸脱することなく、当業者には数多
くの修正と変化が可能であることは説明するまで
もなく明らかであろう。
第1図は本発明に従つて設計された走査システ
ムのブロツク図である。第2図はデイジタル入力
回路112、システム・クロツク115、タイミ
ング信号計数器113の論理図である。第3図は
計数器114,148,150、シフト・レジス
タ116、比較回路152、制御論理140の一
部分の論理図である。第4図はバー及びスペース
幅比較加算器118,120,122,124、
シフト・レジスタ121、走査速度変化検出論理
の論理図である。第5図はシフト・レジスタ12
6と128、読取り専用記憶装置130と13
8、ラツチ132と134の論理図である。第6
図は制御論理140の論理図である。第7図は、
本発明のバーコード走査装置の主な部分の信号の
タイムチヤートである。第7A図は第7図の7A
部分の拡大タイムチヤートである。 100……バーコード読取り装置、102……
スタイラス、106……バーコード文字、114
……計数器、115……クロツク、116……シ
フト・レジスタ、118,120……加算器、1
21……シフト・レジスタ、122,124……
加算器。
ムのブロツク図である。第2図はデイジタル入力
回路112、システム・クロツク115、タイミ
ング信号計数器113の論理図である。第3図は
計数器114,148,150、シフト・レジス
タ116、比較回路152、制御論理140の一
部分の論理図である。第4図はバー及びスペース
幅比較加算器118,120,122,124、
シフト・レジスタ121、走査速度変化検出論理
の論理図である。第5図はシフト・レジスタ12
6と128、読取り専用記憶装置130と13
8、ラツチ132と134の論理図である。第6
図は制御論理140の論理図である。第7図は、
本発明のバーコード走査装置の主な部分の信号の
タイムチヤートである。第7A図は第7図の7A
部分の拡大タイムチヤートである。 100……バーコード読取り装置、102……
スタイラス、106……バーコード文字、114
……計数器、115……クロツク、116……シ
フト・レジスタ、118,120……加算器、1
21……シフト・レジスタ、122,124……
加算器。
Claims (1)
- 1 幅変調バーコードをなすコード要素の相対的
幅を測定し比較する手段と、複数群のコード要素
を、スペースによつて互に分けられている文字表
示として解釈する手段とを有する幅変調バーコー
ド読取り装置において、文字を互に分けているス
ペースを走査するに所定の最大時間より多くの時
間が費やされたときにそのバーコードを拒否する
手段が設けられ、該拒否手段は、一定周波数のパ
ルスを発生するパルス源と、該パルスを計数する
計数器と、時間変化信号における変動によつてコ
ード要素の相対位置を表示する手段と、該変動に
応答して前記計数器をリセツトする手段と、コー
ド要素群で表わされる文字を決定するために比較
される前記変動の間の時間に比例する数を前記計
数器から求める手段と、所定の計数値に達した前
記計数器に応答してエラー信号を発生する手段と
を具備しており、前記所定計数値と前記一定周波
数パルス源の周波数とは、最も幅広のコード要素
を走査するに通常必要とされる時間より実質的に
長い時間の間前記時間変化信号が変動しないとき
のみエラー信号が発生されるように選ばれている
ことを特徴とする幅変調バーコード読取り装置。
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US399773A US3906203A (en) | 1973-09-20 | 1973-09-20 | Data retrieval and error detection circuitry for a width-modulated bar-code scanning apparatus |
| US447117 | 1974-03-01 | ||
| US399773 | 1989-08-28 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS6017570A JPS6017570A (ja) | 1985-01-29 |
| JPS6212558B2 true JPS6212558B2 (ja) | 1987-03-19 |
Family
ID=23580903
Family Applications (2)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP54137868A Expired JPS6027062B2 (ja) | 1973-09-20 | 1979-10-26 | 幅変調バーコード読取り製置 |
| JP59041858A Granted JPS6017570A (ja) | 1973-09-20 | 1984-03-05 | 幅変調バ−コ−ド読取り装置 |
Family Applications Before (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP54137868A Expired JPS6027062B2 (ja) | 1973-09-20 | 1979-10-26 | 幅変調バーコード読取り製置 |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US3906203A (ja) |
| JP (2) | JPS6027062B2 (ja) |
| CA (1) | CA1054716A (ja) |
Families Citing this family (17)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4061900A (en) * | 1976-04-16 | 1977-12-06 | Data General Corporation | Indicia validation system |
| US4056710A (en) * | 1976-04-16 | 1977-11-01 | Coherent Radiation | System for decoding bar code |
| US4272675A (en) * | 1979-05-30 | 1981-06-09 | Ncr Corporation | Symbol processing system |
| US4253018A (en) * | 1979-05-30 | 1981-02-24 | Ncr Corporation | Symbol decoding system |
| JPS576977A (en) * | 1980-06-13 | 1982-01-13 | Fujitsu Ltd | Bar code reading system |
| US4308455A (en) * | 1980-06-26 | 1981-12-29 | E. I. Du Pont De Nemours And Company | Method for decoding bar-coded labels |
| JPH0454527Y2 (ja) * | 1986-08-29 | 1992-12-21 | ||
| JPH0782519B2 (ja) * | 1988-05-18 | 1995-09-06 | アルプス電気株式会社 | 符号読取装置 |
| US5124538B1 (en) * | 1988-08-26 | 1995-01-31 | Accu Sort Systems Inc | Scanner |
| US5548107A (en) * | 1988-08-26 | 1996-08-20 | Accu-Sort Systems, Inc. | Scanner for reconstructing optical codes from a plurality of code fragments |
| DE69725665T2 (de) * | 1996-08-09 | 2004-07-29 | Canon Finetech Inc., Mitsukaido | Strichkodedrucksystem und Steuerverfahren dafür |
| US6666377B1 (en) | 2000-07-18 | 2003-12-23 | Scott C. Harris | Bar code data entry device |
| JP2003084721A (ja) * | 2001-09-12 | 2003-03-19 | Fujitsu Display Technologies Corp | 表示装置用駆動回路装置とそれを利用した表示装置 |
| WO2006090855A1 (ja) * | 2005-02-25 | 2006-08-31 | Kyocera Corporation | 読取装置、情報提供システム、及び提供情報取得方法 |
| US10146978B2 (en) | 2015-07-14 | 2018-12-04 | Afero, Inc. | Apparatus and method for accurate barcode scanning using dynamic timing feedback |
| US9626543B1 (en) * | 2015-12-14 | 2017-04-18 | Afero, Inc. | Apparatus and method for accurate barcode scanning using dynamic timing feedback |
| KR20250147438A (ko) | 2024-04-04 | 2025-10-13 | 삼성전자주식회사 | 불휘발성 메모리 장치, 불휘발성 메모리 장치의 동작 방법, 그리고 불휘발성 메모리 장치를 포함하는 스토리지 장치 |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US3701097A (en) * | 1971-01-20 | 1972-10-24 | Identicon Corp | Decoding bar patterns |
| US3783244A (en) * | 1971-08-02 | 1974-01-01 | Computer Identics Corp | Gauged pulse width determining circuit |
| US3737632A (en) * | 1972-03-23 | 1973-06-05 | R Barnes | Rate adaptive nonsynchronous demodulator apparatus for biphase binary signals |
| US3784792A (en) * | 1972-03-29 | 1974-01-08 | Monarch Marking Systems Inc | Coded record and methods of and apparatus for encoding and decoding records |
| US3752963A (en) * | 1972-04-12 | 1973-08-14 | Monarch Marking Systems Inc | Method of and apparatus for interpreting a coded record |
-
1973
- 1973-09-20 US US399773A patent/US3906203A/en not_active Expired - Lifetime
-
1974
- 1974-08-16 CA CA207182A patent/CA1054716A/en not_active Expired
-
1979
- 1979-10-26 JP JP54137868A patent/JPS6027062B2/ja not_active Expired
-
1984
- 1984-03-05 JP JP59041858A patent/JPS6017570A/ja active Granted
Also Published As
| Publication number | Publication date |
|---|---|
| US3906203A (en) | 1975-09-16 |
| CA1054716A (en) | 1979-05-15 |
| JPS6027062B2 (ja) | 1985-06-27 |
| JPS6017570A (ja) | 1985-01-29 |
| JPS55110374A (en) | 1980-08-25 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US3891831A (en) | Code recognition apparatus | |
| US3784792A (en) | Coded record and methods of and apparatus for encoding and decoding records | |
| US4074114A (en) | Bar code and method and apparatus for interpreting the same | |
| US3838251A (en) | Method of interpreting a coded record | |
| US5128527A (en) | Apparatus for reading a bar code | |
| US3868634A (en) | Reading of contrasting data by means of continuously attempting to decode read signals | |
| US3794812A (en) | Sensing apparatus | |
| US4012716A (en) | Coded record and method of and system for interpreting the record | |
| JPS6027062B2 (ja) | 幅変調バーコード読取り製置 | |
| US4667089A (en) | Bar code discriminating apparatus for bar code reading | |
| AU8103087A (en) | Method and apparatus for bar code data autodiscrimination | |
| EP0172727A2 (en) | Apparatus and method for sensing bar coded data | |
| US4272675A (en) | Symbol processing system | |
| JPS61115179A (ja) | バーコード読み取り装置 | |
| US5036182A (en) | Bar code reading and decoding apparatus | |
| EP0029456B1 (en) | Slot scanning system | |
| US3752963A (en) | Method of and apparatus for interpreting a coded record | |
| EP0464713B1 (en) | Bar-code reading apparatus | |
| US3906202A (en) | Data retrieval and error detection method and apparatus designed for use in a width-modulated bar-code scanning apparatus | |
| JPS6224836B2 (ja) | ||
| US3778597A (en) | Record reading system | |
| GB1519256A (en) | Code discriminator | |
| US4146046A (en) | Coded record and methods of and apparatus for encoding and decoding records | |
| US3766364A (en) | Coded data sensing system | |
| US3637993A (en) | Transition code recognition system |