U.S. patent application number 11/943242 was filed with the patent office on 2008-05-29 for transmitting enhanced scanner signals on a single channel.
This patent application is currently assigned to Symbol Technologies, Inc.. Invention is credited to Costanzo di Fazio, James R. Giebel, Gary Schneider, Frederick Schuessler.
Application Number | 20080121714 11/943242 |
Document ID | / |
Family ID | 35941660 |
Filed Date | 2008-05-29 |
United States Patent
Application |
20080121714 |
Kind Code |
A1 |
di Fazio; Costanzo ; et
al. |
May 29, 2008 |
Transmitting Enhanced Scanner Signals on a Single Channel
Abstract
A system and method for encoding scanner signal strength and
timing information provided, possibly on multiple signal lines,
from a digitizer circuit into a signal that can be transmitted on a
single line to a modified decoder. A multiplexing device
multiplexes the multiple signals, which can be multi-bit or
dual-DBP signals, into a single signal.
Inventors: |
di Fazio; Costanzo; (East
Patchogue, NY) ; Giebel; James R.; (Centerport,
NY) ; Schneider; Gary; (Stony Brook, NY) ;
Schuessler; Frederick; (Baiting Hollow, NY) |
Correspondence
Address: |
TAROLLI, SUNDHEIM, COVELL & TUMMINO L.L.P.
1300 EAST NINTH STREET, SUITE 1700
CLEVEVLAND
OH
44114
US
|
Assignee: |
Symbol Technologies, Inc.
Holtsville
NY
|
Family ID: |
35941660 |
Appl. No.: |
11/943242 |
Filed: |
November 20, 2007 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
10930652 |
Aug 31, 2004 |
7299985 |
|
|
11943242 |
|
|
|
|
Current U.S.
Class: |
235/462.18 |
Current CPC
Class: |
G06K 7/1452 20130101;
G06K 7/14 20130101 |
Class at
Publication: |
235/462.18 |
International
Class: |
G06K 7/10 20060101
G06K007/10 |
Claims
1-22. (canceled)
23. A method for decoding an encoded scanner signal comprising:
receiving a series of pulses representing timing and strength
information about a given transition in a detected light signal;
comparing the duration of a first pulse in the series of pulses to
a minimum pulse duration, and if the duration of the first pulse is
less than the minimum pulse duration, registering the start of a
detected light signal pulse having a polarity the same as a
polarity of the first pulse; determining a duration of a second
pulse in the series of pulses; registering a strength of the
detected light signal as proportional to the duration of the second
pulse; determining a duration of a third pulse in the series of
pulses; and registering a duration of the pulse in the detected
light signal as the sum of the duration of the first, second, and
third pulses.
24. A method for decoding an encoded scanner signal comprising:
receiving a series of pulses representing timing and strength
information about a given transition in a detected light signal;
comparing a duration of a first pulse and a duration of a second
pulse with a minimum pulse duration and if the first and second
pulses have duration less than the minimum pulse duration,
registering a strong pulse in the detected light signal having a
same polarity as a polarity of the first pulse and having a pulse
duration equal to a sum of the durations of the first and second
pulses and a duration of a third pulse, the third pulse following
the second pulse in the series of pulses.
Description
CROSS-REFERENCE TO RELATED APPLICATION
[0001] The present application is a divisional application of and
claims priority from U.S. non-provisional application Ser. No.
10/930,652, filed Aug. 31, 2004 and entitled "Transmitting Enhanced
Scanner Signals On A Single Channel", which will issue as U.S. Pat.
No. 7,299,985 on Nov. 27, 2007. The aforesaid application Ser. No.
10/930,652 is incorporated herein in its entirety by reference.
TECHNICAL FIELD
[0002] The invention relates generally to optical scanners, and in
particular to scanners used for scanning optical codes such as bar
code symbols.
BACKGROUND
[0003] Optical codes are patterns made up of image areas having
different light reflective or light emissive properties, which are
typically assembled in accordance with a priori rules. The term
"bar code symbol" is sometimes used to describe certain kinds of
optical codes. The optical properties and patterns of optical codes
are selected to distinguish them in appearance from the background
environments in which they are used. Devices for identifying or
extracting data from optical codes are sometimes referred to as
"optical code readers" of which bar code scanners are one type.
Optical code readers are used in both fixed or portable
installations in many diverse environments such as in stores for
check-out services, in manufacturing locations for work flow and
inventory control, and in transport vehicles for tracking package
handling. The optical code can be used as a rapid, generalized
means of data entry, for example, by reading a target bar code from
a printed listing of many bar codes. In some uses, the optical code
reader is connected to a portable data processing device or a data
collection and transmission device. Frequently, the optical code
reader includes a handheld sensor that is manually directed at a
target code.
[0004] Most scanning systems, or scanners, generate a beam of light
which reflects off a bar code symbol so the scanning system can
receive the reflected light. The system then transforms that
reflected light into electrical signals, digitizes the signals into
a digital bar pattern (DBP) signal, and decodes the DBP signal to
extract the information embedded in the bar code symbol. Scanning
systems of this type are described in U.S. Pat. Nos. 4,251,798;
4,360,798; 4,369,361; 4,387,297; 4,409,470; and 4,460,120, all of
which have been assigned to Symbol Technologies, Inc.
[0005] In recent years, enhanced signal processing techniques have
been developed for integrated scanners and decoded scan engines.
The enhanced signal processing techniques convey transition
strength information in addition to the basic transition timing
information that is provided by traditional signal digitizers. For
example, multibit digitized signals are described in U.S. Pat. No.
5,302,813 to Goren, assigned to Symbol Technologies, Inc. and
incorporated herein by reference in its entirety. While these
scanner signals provide more detailed information about the analog
signal being received by the detector, they require more complex
interfaces between the digitizer and the decoder.
SUMMARY
[0006] Enhanced scanner signals that would normally require
multiple signal lines to communicate transition timing and strength
information are encoded into a signal that can be transmitted on a
reduced number of signal lines. This arrangement allows existing
signal line interfaces to be used to transmit the enhanced scanner
signals which may then be decoded by a modified decoder.
[0007] In one embodiment, the digitizer outputs a timing signal
indicative of the polarity and timing of transitions in the
detection signal on one or more timing signal lines and a strength
signal indicative of the strength of the transitions in the
detection signal on one or more strength signal lines. The
multiplexer receives the timing signal and strength signals for a
given transition and encodes the timing and strength signals into a
pulse train that is transmitted on a single signal line. The pulse
train includes a coded indicator pulse indicating the polarity of
the given transition followed by a strength pulse that correlates
to the strength of the given transition. The strength pulse may
have a duration that corresponds to the strength of the given
transition. A trailer pulse may follow the strength pulse, having a
duration that, when added to the duration of the coded indicator
pulse and strength pulse, produces a pulse train having duration
that is approximately equal to a time between the given transition
and a next transition. The coded indicator pulse may have a
duration that is shorter than a code pulse duration threshold.
[0008] In another embodiment, the digitizer outputs a
low-sensitivity timing signal on a first signal line and a
high-sensitivity timing signal on a second signal line. The
multiplexer receives the low-sensitivity timing signal and the
high-sensitivity timing signal and encodes the signals on a single
line by transmitting a modified version of the high-sensitivity
timing signal, wherein the high-sensitivity signal is modified by
flagging strong transitions in the high-sensitivity signal that
have corresponding low-sensitivity signal of the same polarity by
transmitting a pair of relatively short coded indicator pulses at
the start of the strong transition.
BRIEF DESCRIPTION OF THE DRAWINGS
[0009] FIG. 1 is a functional overview of a scanner that
incorporates an embodiment of the present invention;
[0010] FIG. 2 is a timing diagram of a multi-bit DBP signal as it
is encoded according to an embodiment of the present invention;
[0011] FIG. 3 is a timing diagram of a multi-bit DBP signal as it
is encoded according to an embodiment of the present invention;
[0012] FIG. 4 is a block diagram of a encoding system for
performing an embodiment of the present invention;
[0013] FIG. 5 is a flowchart of a method for encoding a multi-bit
DBP signal according to an embodiment of the present invention;
[0014] FIG. 6 is a timing diagram of a dual DBP signal that is
encoded according to an embodiment of the present invention and the
DBP signals that generated the merged signal;
[0015] FIG. 7 is simplified circuit diagram that encodes two DBP
signals according to an embodiment of the present invention;
and
[0016] FIG. 8 is a flowchart outlining a method of decoding an
encoded signal according to an embodiment of the present
invention.
DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS
[0017] FIG. 1 shows a simplified embodiment of a bar code scanner
100. While the bar code scanner depicted in FIG. 1 is a hand held
device, other types of scanners may be used to practice the signal
encoding technique described below. A user aims the scanner 100 at
a bar code symbol 170 without physically touching it. Typically,
scanner 100 operates several inches from the bar code symbol being
read. Scanner 100 my be gun-shaped in a housing 155 having a pistol
grip handle 153. A movable trigger 154 on handle 153 allows a user
to activate a light beam 151 and associated detector circuitry when
the user has pointed scanner 100 at a symbol 170.
[0018] The housing 155 contains a laser light source 146, lens 157,
partially-silvered mirror 147, detector 158, oscillating mirror
159, motor 160, battery 162, CPU 140, and digitizer circuit 145.
The components shown within the hashed line indicated by reference
character 165 are commonly known as a "scan engine" and control the
scanning functions as well as the detection and digitization of the
resulting analog signal. A decoder 175 is shown removed from the
scan engine but located within the housing 155. In some
applications the decoder is located in a remote location such as a
user terminal. The decoder 175 receives the DBP signal from the
digitizer 145 on a single signal line in the described embodiment.
However, any digitizer to decoder interface that utilizes a
digitizer that encodes an enhanced signal onto a reduced number of
signal lines to convey transition timing and strength information
can be used in the practice of the present invention.
[0019] When a user activates the scanner by pulling the trigger
154, the light source 146 generates a light beam 151 along the axis
of lens 157. The lens 157, which is not necessary in all
embodiments, may be a single lens or a multiple lens system. After
passing through the lens 157, the beam 151 passes through the
partially-silvered mirror 147, and if desired, other lenses or beam
shaping structures. The beam 151 then strikes oscillating mirror
159 driven by a scanning motor 160, which together direct the beam
151 in a scanning pattern.
[0020] The light beam 152 is the light from the beam 151 that is
reflected off the symbol 170. The beam 152 returns to the scanner
100 along a path parallel to, or at times coincident with, the beam
151. The beam 152 thus reflects off the mirror 159 and strikes the
partially-silvered mirror 147. The mirror 147 reflects some of the
beam 152 into a light-responsive detector 158 that converts the
light beam 152 into analog electric signals. The electric signals
then pass into the digitizer 145 and decoder 175 to be processed
and decoded to extract the information represented by the bar code.
The microprocessor 140 is also used to control the operation of the
motor 160 to adjust the scanning pattern and provide other
control.
Overview of Basic and Enhanced Signals
[0021] Several types of signals have been used to communicate
information from the digitizer 145 in the scan engine to the
decoder 175. A traditional single-DBP signal is a pulse width coded
(modulated) wave representing specific transition times of the
analog signal from the detector 158 that is transmitted across a
single signal line to the decoder 175. The resulting pulse width
coded wave indicates when (relative to a Start of Scan signal) the
scanning beam transitioned from light to dark areas (and vice
versa) that were sufficiently different in optical contrast to be
detected by the digitizer circuit. The polarity of this signal
indicates the presumed lightness or darkness of the surface as it
is traversed by the scanning beam. No information is provided,
however, as to whether a transition was relatively weak (barely
crossing the threshold) or strong (representing a significant and
sudden change in optical contrast).
[0022] A Multi-bit enhanced scanner signal typically comprises two
time-coordinated signals: timing and strength. The timing signal
again indicates when (relative to a Start of Scan signal)
transitions from light to dark (and vice versa) occurred. The
strength signal (whether Area strength or Edge strength) provides
additional information to the decoder that can be used to determine
which of the timing signal's transitions were due to print defects
or noise, and which transitions truly represent the edges of the
signal's bars and spaces. The relative strength of the transitions
can also provide clues about relative depth of modulation, which
can aid in deblurring the signal. The strength information is
typically conveyed using multiple parallel or serial pulses to
convey an 8-bit value.
[0023] A Dual-DBP signal typically comprises two time-coordinated
signals: each is a traditional DBP signal, but one signal was
generated using a more sensitive digitizer threshold than the
other. The dual-digitizer circuit has been designed so that a
transition on the high-sensitivity digitizer that is confirmed by a
transition that also occurred on the low-sensitivity digitizer is
indicative of a relatively strong analog signal (having a
relatively large amplitude). Transitions on the high-sensitivity
digitizer that are not so confirmed by the low-sensitivity
digitizer are indicative of a relatively weak analog signal.
Therefore the output signal of the high-sensitivity digitizer may
contain more pairs of transitions than the output signal of the
low-sensitivity digitizer. For example, a single bar pulse on a
noisy analog signal may be "broken up" into a bar/space/bar triplet
of pulses on the high-sensitivity digitizers signal due to a subtle
print defect in the bar. The bar may be properly detected by the
low-sensitivity digitizer, thus facilitating proper decoding of the
overall pattern.
[0024] While the enhanced signals provide an improved ability to
decipher bar code symbols of varying quality, they cannot be sent
over the conventional single signal line interface between scan
engines that provide a single DBP signal to a decoder.
[0025] This problem is addressed by multiplexing the enhanced
signals (either multi-bit or dual-DBP) onto a single DBP channel,
so that no hardware modifications are required. Neither the
connectors nor the acquisition ASIC need to change. The
multiplexed-DBP engine-output option can be enabled and utilized by
a scanner driver that is aware of the new feature, but older
versions of the terminal software will by default receive the
standard single-DBP signal. Thus compatibility is maintained
between the hardware and software of current and future terminals
so that new engines can be dropped into existing terminals without
modification, and when desired, the terminal's software can be
upgraded to take advantage of the enhanced signals.
Multiplexing Multi-Bit DBP Signals to a Single Signal
[0026] As described above, a multi-bit DBP signal consists of a
timing signal and a strength signal. As described in U.S. Pat. No.
6,209,788 to Bridgelall et al. and assigned to Symbol Technologies
and incorporated herein by reference in its entirety, in its
present embodiment, the multi-bit DBP signal is transmitted from
the digitizer to the decoder over two lines, a edge strength line
and a polarity signal line as shown generally in FIG. 4. The
strength signal is not limited to one bit (strong or weak), but may
vary over a range (typically 8 bits of range). This use of two
signal lines requires an interface between the digitizer and
decoder that includes an additional signal line when compared to
the tradition single DBP system discussed above.
[0027] It is advantageous, then, to encode the multi-bit
information in a manner that permits the information to be
transmitted across a single line. Precise measurement of the
strength is not necessary since any gradations will be helpful
information for the decoder. Thus, a sufficient approximation of
the varying strength information can be conveyed by using
pulse-width modulation (rather than using multiple parallel or
serial pulses to convey the precise 8-bit value). Timing
information needs to be conveyed also. To do all of this on a
single signal line, the known bandwidth limits of the scanning
system is leveraged. That is, the optical and electronic
characteristics of the system combine to create a lower limit for
how short a pulse can be generated by scanning contrast variations
on the target object. Thus, at the time of a bar/space transition,
an additional "coded indicator", or flag, pulse is introduced,
shorter than the minimum legitimate bar/space pulse, indicating a
"coded" transition. The coded indicator pulse is followed by the
varying length pulse indicating the relative strength of the
transition, in turn followed by a varying length "trailer" pulse
that "fills out" the true duration of the bar or space element. If
a new bar or space does not include this short leading pulse, then
it is treated as "uncoded," and is interpreted as a
minimum-strength "very weak" transition (and no strength-modulated
pulse follows). The decoder can be programmed with the knowledge
that any pulse shorter than the minimum legitimate bar/space
duration is in fact the extra pulse that introduces a "coded"
element (including pulse-width-modulated strength information).
[0028] As is the case with a true multi-bit signal, the multiplexed
multi-bit signal will be able to indicate the sequence of a weak
edge followed by a stronger edge of the same polarity. The
multiplexed multi-bit signal will not always be able to indicate
the converse case (a strong edge followed by a weaker edge of the
same polarity), but this case usually corresponds to a defect or
noise within an element, and little is lost by ignoring a weak
transition following a strong one of the same polarity.
[0029] FIGS. 2 and 3 illustrate the pulse train that is the
multiplexed signal corresponding to various bar code inputs.
"T.sub.min" is the name given to the width of a coded indicator
pulse (shorter than a legitimate bar or space pulse). FIG. 5 is a
flow chart illustrating one method 200 the multiplexer 178 in FIG.
4 can use to multiplex the strength and timing lines into a single
DBP signal. A pair of strength and time inputs is received by the
multiplexer at 210. If the strength signal is less than a
threshold, an uncoded bar/space pulse, detectably longer than
T.sub.min is transmitted to the decoder (220, 225). If the strength
signal exceeds the threshold, a coded indicator pulse is
transmitted having a duration of about T.sub.min in 230. The
polarity of the present transition is compared to the polarity of
the prior transition at 240 and if the polarity has changed, as is
normally the case, a strength pulse is transmitted with a duration
proportional to the strength in 250. If the polarity has not
changed, as is the case with a weak edge followed by a stronger
edge of the same polarity, a second indicator pulse is transmitted
with duration T.sub.min at 235, followed by a strength pulse at
250. At 260 a trailer pulse follows the strength pulse so that the
total time to the next transition is equal to the duration of the
current bar/space element. The decoder 175 (FIG. 4) will decode the
DBP pulse train in a manner that corresponds to the manner of
encoding the information just described as 200.
Multiplexing Dual-DBP Signals to a Single Signal
[0030] As described above, a dual-DBP signal consists of two
traditional DBP signals, generated at different thresholds.
However, this pair of signals can also be logically viewed as a
single (high-sensitivity) DBP signal, accompanied by a second
signal representing a single bit of edge strength information.
Viewed this way, the pair of signals informs the decoder that each
transition of the high-sensitivity signal is either "strong"
(defined as "strong" enough to trigger the low-sensitivity
digitizer too) or "weak" (i.e., not significant enough to trigger
the low-sensitivity digitizer).
[0031] This view of the signal (timing plus one bit of strength)
can be conveyed over a single signal, again by taking advantage of
the known bandwidth limits of the scanning system. A pair of extra
transitions, or coded indicator pulses, are introduced for "coded"
elements, but the second pulse in this case is nominally the same
fixed length as the first (because no varying strength information
is conveyed). By superimposing this extra pair of very-short pulses
(detectably shorter than the minimum real bar/space pulse) on the
high-sensitivity DBP signal, each transition can be flagged as
either strong or weak. Each "strong" transition is flagged in the
described embodiment with an extra pair of short coded indicator,
or flag, pulses, but in other embodiments, "weak" transitions could
be so flagged instead. It may be advantageous to flag strong
transitions, based on the assumption that the weakest transitions
will correspond to the smallest bars and spaces (which leave the
least "room" for the extra pair of pulses).
[0032] The single multiplexed (or "merged") DBP signal, as would be
derived from a portion of a dual-DBP signal, is shown graphically
in FIG. 6. The precise durations of the two short coded indicator
pulses (indicating each "strong" edge) are not critical, so long as
they are measurably shorter than the shortest legitimate DBP pulse
that the scanning system normally produces. This coding scheme is
advantageous because of its ease of implementation in simple analog
circuitry, so that it can be incorporated into analog ASICs.
[0033] Although this scheme encodes no variable data in the second
short pulse, the second pulse ensures that the multiplexed output
corresponds in polarity to the high-sensitivity input (except
during each second short pulse). This provides some noise immunity
for the de-multiplexing process, and allows the decoder to at least
recover the high-sensitivity signal even if it "misses" one or more
of the short pulses.
[0034] FIG. 7 is a simplified implementation of a multiplexer
circuit 705 that encodes dual-DBP signals to a multiplexed (or
composite) DBP signal as illustrated in FIG. 6. The circuit 705
contains two delay blocks 710, 720 and two XOR gates 750, 790. The
circuit 705 has two input signals: a low-sensitivity DBP signal 703
and a high-sensitivity DBP signal 706 that are produced by the
Dual-DBP digitizer. The circuit 705 has one output, which is the
multiplexed or composite DBP signal.
[0035] A low sensitivity signal 703 from the Dual-DBP digitizer is
input to the first delay block 710. The output of the first delay
block 710 is input to the first XOR gate 750. The other input to
the XOR gate 750 is the output of the second delay block 720 that
acts on the output of the first delay block 710. The output of the
first XOR gate 750 is input to the second XOR gate 790 that has as
its other input the high-sensitivity signal 706. The circuit 705
injects a pulse of duration equal to the time delay produced by
each of the delay blocks 710, 720 whenever the low-sensitivity DBP
signal 703 makes a transition and assuming that the
high-sensitivity DBP signal 706 also makes a transition.
[0036] FIG. 8 is a flowchart that outlines a method that can be
used by the decoder 175 to decode the DBP output of the circuit in
FIG. 7 back into high-sensitivity and low-sensitivity signals as
stored in corresponding buffers. At 710-730, a determination is
made as to whether there are any further transitions to be decoded,
and if not, decoding is terminated. If there are further
transitions, at 750 the current transition is examined and if the
duration since the last transition is not less than a minimum
threshold duration, indicating that a weak transition has been
detected, the transition is stored as a new element in the
high-sensitivity buffer, and the time is added to the current
element in the low-sensitivity buffer at 755. If the duration since
the last transition is found to be less than the minimum pulse
duration threshold at 750, at 760 the next pulse is examined to see
if it is a coded indicator pulse (also having duration less than
the minimum pulse duration threshold). If the pulse is not a coded
indicator pulse, then the first pulse is determined to be noise and
is merged with the preceding elements in the high and
low-sensitivity buffers. If the pulse is a coded indicator pulse,
it is determined that the pulse indicates a strong transition. If
(due to noise) an odd number of weak transitions preceded the pulse
the previous weak transition is promoted to a strong edge at 770.
Since a new strong transition is detected, a new element is stored
in both the high and low-sensitivity buffers corresponding to the
sum of the three pulses (the two short pulses and the long pulse
that followed). Outputting the contents of the high and
low-sensitivity buffers will produce two outputs roughly
corresponding to the inputs that were encoded by the circuit shown
in FIG. 7.
[0037] It can be seen from the foregoing description, that
multiplexing a plurality of scanner timing and strength signals
onto a single signal line simplifies the interface between the
digitizer and decoder. Although the invention has been described
with a certain degree of particularity, it should be understood
that various changes can be made by those skilled in the art
without departing from the spirit or scope of the invention as
hereinafter claimed.
* * * * *