|
Description  |
|
|
BACKGROUND OF THE INVENTION
The use of a universal product code (UPC) has gained wide acceptance in the
retail industries, particularly in the grocery and food industry, although
it is not necessarily so limited in use and can be expected to gain even
wider acceptance in the future.
The principle involved is the use of a bar code which uniquely identifies
each assigned product by a series of lines and spaces of varying widths
which may be decoded to a multiple digit representation. The unique
identification is the subject of the UPC and has been standardized for a
wide range of products.
At the point of sale, the bar code is read by suitable scanning apparatus
and the identification utilized for diverse purposes such as inventory
control, pricing, etc., all as is well known.
The use of this bar code has imposed severe problems upon the graphics arts
industry whose function is to prepare the labeling, etc., which bears the
proper bar code symbol for the product in question. That is to say, the
printing of the bar code in mass production normally relies upon a
flexographic or an offset printing process from which the widths and
spacings of the bar code lines and spaces therebetween must be controlled
accurately so that the scanning apparatus may read the bar code with high
degree of accuracy. This problem is well known and special apparatus has
been developed to aid the graphics art processor in maintaining the
requisite quality control. Examples of such apparatus are disclosed in the
U.S. Pat. No. 4,360,798 of 11/23/82 to Swartz et al, a divisional
application of U.S. Pat. No. 4,251,798, and in U.S. Pat. No. 4,396,361,
the disclosures of which are incorporated herein by reference. Basically,
what apparatus of this type does is to scan the bar code which has been
printed and, in controlled and specified fashion derive a "readability
measure" criteria therefrom which apprises the user of the quality of the
printed bar code from which adjustments, changes, etc., of the printing
process may be made. This "readability measure" is referenced the "Percent
Decode" or PD and is based upon many factors which may affect the bar
code's symbol readability and which in reality is useful only to the
printer. A partial list of these factors includes print contrast, uniform
barwidth growth, asymmetric barwidth growth, extent and size of any spots
or voids, substrate opacity, showthrough, and scatter. In each case, there
exists a transition band over which symbol readability is very strongly
affected by small changes in the parameter in question. In theory, there
should exist for each parameter an absolute cut off point above which
readability is 100%, and below which readability is 0%. However, the
algorithm upon which the PD is based generates a "conservative" (insofar
as the end user is concerned) statistical value for PD from a single scan,
and which PD may be of any value, as low as 10%, for example. This anomaly
raises many problems in the industry and has little to do with verifying
to the ultimate user the quality of the printed bar code with which he
must deal.
The anomaly is created by the fact that the bar codes are checked at
locations which are not the end user location, and the end user must
therefore blindly accept a product which is represented to him as being of
proper quality insofar as readability of the bar code is concerned. As
noted, the bar code is normally checked at more than one location. First,
the printer checks the bar code which he is printing, usually on a quality
control basis during the printing process, and it is here that the system
is truly operative, because it enables the printer to take corrective
measures in response to deteriorating print quality. However, the absolute
value of the PD is of little meaning except as to variations and changes
therein (i.e., deterioration), especially as concerns the next person
processing the labels to which the bar codes are being applied. That is to
say, there is no guarantee that the next processor (the processor who
applies the labels to the goods, for example) will read the same PD as did
the printer, even though he may be using identical equipment. Thus, this
next processor must arbitrarily decide what PD he will establish as being
sufficient to meet the needs of the end user.
In this way, whether the end user receives his goods directly from the
printer or from a processor applying labels to the goods, he is at the
mercy of a guessing game. For example, the printer may check the bar code
on a quality control sample basis after the printing process and
determine, for example, that the PD is 40%, which the printer may decide
will be acceptable to the label applier, and that batch of printed
material may be checked by the label applier and found to check with a PD
of 20%. This packager must decide whether that value of PD is going to
meet the needs of the end user.
The variation in PD may be due entirely to the fact that the printer used
one apparatus for checking whereas the packager used another apparatus,
even though both were identical in make and type of apparatus and thus
ostensibly identical as to result. On the other hand, the variation may
also be due to the fact that the apparatus attempts to simulate, based
upon a single scan, the statistical average of many different scans having
different orientations of the bar code relative to the scanning head.
Since neither used an apparatus which is the same as the scanning
apparatus which will be used at the point of end use, say the checkout
counter scanner at a supermarket, the PD determined either by the printer
or the subsequent packager has little if any significance to the end user
and may, in fact, confer little or no confidence to the end user that the
bar code as scanned and determined at the point of use will be adequate
for the intended purpose. Since the end user will suffer from any error in
reading of the bar code (whether the error is due to an incorrect number
being read or no number being read), the current situation is entirely
inadequate insofar as the end user is concerned.
To summarize the background of this invention to this point, great
difficulty is encountered in the process of printing bar codes, packaging
goods with the bar code readable thereon and accurately reading the bar
code on the packaged goods at the point of sale. Many variables are
involved in this chain of the process. First of all, the readabilty of the
bar code at the point of sale depends upon the quality control of the
printing process. Secondly, the bar code must be readable at each
potential point of sale. Because the scanning laser device at each point
of sale may "see" the bar code in its own unique way which may be
different from what will be "seen" at any other similar device at any
other point of sale, a tremendous difficulty is encountered because of
this factor alone.
At any point of sale, two important factors in reading the bar code are
critical. First and foremost, the correct UPC number must be read,
otherwise the entire purpose of using UPC designation is lost. Secondly
and by no means of lesser importance, reading should be successful upon
the first scan of the bar code, otherwise the rapidity and proper flow of
tallying the results of scanning and reading at the point of sale is
seriously affected.
Thus, the mere fact that the bar code is readable on the first scan is not
sufficient unless that read corresponds with the correct UPC number which
that bar code is supposed to represent. On the other hand, if it takes
more than one scan of the bar code to produce a UPC number output, that
output must be the correct UPC number. That is to say, it is imperative
that the first successful "read" corresponds with the correct UPC number.
The results of quality control at the steps in the chain prior to the
ultimate and final scan of the bar code absolutely determines the success
of the entire system.
BRIEF SUMMARY OF THE INVENTION
Accordingly, it is of primary concern in connection with this invention to
provide method and apparatus for quality control of bar code printing
which is directly related to the requirements of the end user and which
generates data meaningful to and upon which the end user may rely with
confidence.
However, it is to be understood that the invention is not limited to the
UPC system and in fact is applicable to any system in which codes or the
like are produced, by whatever reproduction method, to identify particular
data required by the end user. To this end, the underlying advantage of
this invention resides in the ability to allow cooperation among the
person or persons supplying the labels and/or packaging or the like and
the end user, in order to select the most statistically significant
requirement suited to that particular end user.
An object of the invention is to provide a method and apparatus by which
the graphics art producer may perceive trends during the printing process
which, if left unchecked, could result in reading errors at the point of
sale while, at the same time, provides data which is meaningful to the end
user.
Another object of the invention is to provide a method and apparatus which
provides a consistent and meaningful measurement of bar code readability
from the inception of the bar code generating process through any
intermediate processors so that quality control of bar code readability
may be assured more readily to the ultimate user at the point of sale.
The invention is oriented toward the end user to assure a more significant
and meaningful indicator of the performance which may be expected from the
bar code labels upon which the end user relies for proper operation of his
retail business. It cannot reasonably be expected that bar codes on the
consumer items will be read with 100% accuracy if the cost of using this
convenience is to be kept within an affordable price. However, the end
user requires an indicator which relates to a parameter which allows him
to calculate the potential business loss due to incorrect bar code
reading. Such an indicator is provided by this invention. With the
apparatus of this invention, the indicator is the percentage of correct
bar code "reads" which he may expect to obtain with the items with which
he is supplied. If used by the printer, the percent accuracy is determined
and this accuracy may be passed on to the processor who provides the end
user with the finished product, properly labeled and having a reliable bar
code label thereon. When the processor in turn uses the apparatus of this
invention, he too will be in possession of a reliable and meaningful
percentage figure in which the end user may place trust.
The currently available equipment is informative principally and almost
solely to the operator of printing equipment and requires temporal
sampling in order to provide meaningful results to the printer for
controlling the printing run. That is, as noted above, the currently
available equipment indicates trends in the form of PD readings which are
occurring during the printing process and which, if left unchecked,
ultimately will result in such a degradation of the bar codes being
printed that they will be useless. The end user is not interested in the
PD because it has no real meaning to him.
The invention as disclosed and claimed herein provides an indication of the
percentage of "misreads" (i.e., either an inability to read or an
incorrect read) which may be expected at the user end of the chain. To
this end, the scanner utilized in this invention is a flattop scanner of
the type used by the end user, in combination with a dedicated processor,
keyboard, display and suitable software. The dedicated computer is
interfaced with the scanner so as to provide on/off control as well as to
receive and decode the electronic output of the scanner to identify
numerically the bar code passed through the scanner's laser beam. A
keyboard is electronically linked to the computer to permit entry of
commands as well as numerical identification of the symbol to be scanned.
The digital display is electronically linked to the computer to provide
visual identification of the UPC number corresponding to the bar code
scanned, to display comparison of this number with the correct number and,
by command from the keyboard, to provide statistical analysis regarding
the symbols which have been scanned. A strip printer may be linked with
the computer to provide print-out of the statistical analysis. The
software program contains the logic to control the laser scanner, decode
the electronic output from the scanner to provide the UPC numerical
identification of the bar code scanned, to store the correct code or
codes, to provide comparison of the scanned symbol with the correct symbol
in memory, and to cause the various displays.
BRIEF DESCRIPTION OF THE DRAWING FIGURES
FIG. 1 is a diagrammatic illustration of a system according to this
invention;
FIGS. 2a and 2b represent a logic flow diagram according to one embodiment
of the invention; and
FIGS. 3a and 3b represent another logic flow diagram according to another
embodiment of the invention.
DETAILED DESCRIPTION OF THE INVENTION
With reference to FIG. 1 at this time, reference character 10 indicates a
flat top laser scanner which preferably is a Spectra physics, Inc. model
8610 or other store quality helium-neon laser scanner having equal bar
code sensitivity. The serial output of the scanner 10 is coupled through
the I/O device 12 having bus connection with the microprocessor 14 or
equivalent computer. The computer components include the program ROM 16,
the data RAM 18 and the non-volatile storage 20. The parallel I/O device
22 electronically links the computer system to the display unit 24 which
may be of conventional nature and to the conventional keyboard unit 26.
The printer 28 which may optionally be provided is coupled with the serial
I/O device 12. All of the above components are available as items of
commerce and will be well understood by those skilled in the art.
It is, however, pointed out that the scanning unit 10 should be of the type
equivalent to a so-called store unit, that is, it should be a unit
identical to or closely resembling the type of scanner which the end user
will employ. This assures that the results of the program hereinafter
described will most closely approximate the results which the end user
will experience so that the statistical analysis provided by the invention
will be meaningful to such end user. In this regard, the end user will
know the percentage of "misreads" which he can tolerate and the supplier
of his goods may thus assure, with this invention, that the requisite
percentage is supplied to the end user. The printer may also employ this
invention to obtain not only data meaningful to him concerning whether the
printing process is degrading, but also he may pass on to the next
processor data which, in turn, is meaningful to the end user.
The end user will require a percentage of "good" reads which typically may
prove to be in the range of about 91-95%. This percentage is established
by cooperation among the printer, the packager and the end user and this
is easily assured by the invention. It is to be noted, as explained
hereinbefore, that the particular percentage may be different for
different end users and it is in this particular aspect that the invention
derives a significant advantage over other systems which are available in
the prior art.
The software logic flow will be apparent from FIG. 2. Whenever the system
is powered up, the scanner is reset as at 30 and the main menu is
displayed as indicated at 31. The main menu reads: ENTER COMMAND: 1/SETUP,
2/GO, 3/RST SCNR, */DISABLE, #/ENABLE LASER. Assuming the operator wishes
to test a new bar code symbol which has never been tested before, "1" (for
setup) is pressed on the keyboard and in response thereto, the setup menu
is displayed as indicated by the logic at 34. Otherwise, the logic loops
as indicated at 33 awaiting a keystroke entry. The setup menu reads: ENTER
SCAN CODE. PRESS "0" TO ENTER CODE FROM SCANNER. The operator thus has two
options, he may manually enter the scan code from the keyboard or he may
enter the code by passing a bar code known to be correct over the scanner.
If the former, the logic at 35 responds at the line 36 to the entry "0" to
cause the scanner input to be displayed as at 37 and the main menu is
redisplayed as at 39 and the system loops as at 40, awaiting the next
keystroke. If, for some reason the display does not indicate the correct
UPC number on the display, or the operator has changed his mind, "3" is
pressed to reset the scanner and clear memory as at 58 and redisplay the
main menu as at 59 and loop awaiting the next keystroke.
If the setup was correct and the desired number was displayed as at 38,
when the main menu is redisplayed as at 39, the operator next enters the
keystroke "2" and the test information is displayed as at 47. This display
initially reads: TEST CODE A021900027256 NO. READ 0; CURRENT NO. ERROR 0,
assuming that the correct UPC number was as indicated, i.e.,
A021900027256. The operator then proceeds to begin the test procedure by
passing the bar code labels over the scanner. The serial input from the
scanner is read as at 48 and the logic at 49 causes the first input to be
compared with the correct UPC number. If correct, the "yes" answer at 50
causes the scan count to be updated as at 51. The display will now read:
TEST CODE A021900027256 NO. READ 1; CURRENT NO. READ 0 unless the operator
has pressed a key during the scan input, in which case the logic at 54,
56, 57 loops the system back to the condition awaiting an initial
keystroke as at 32. If this operator error logic was not activated, the
system loops as at 55 awaiting the next scan input.
For purposes of this description, it will be assumed that for the
particular end user in question, it has been established by and among the
printer, packager and end user that the number of bar codes which must be
tested is thirteen and that the number of correct reads must be at least
91%. Using this arbitrary example, assume that at the end of the thirteen
scans, the display reads: TEST CODE A021900027256 NO. READ 13, CURRENT
A073040154156 NO. ERROR 1. The "CURRENT A073040154156" indicates that this
number, rather than the correct number A021900027256 was read to produce
the "NO. ERROR 1". The percentage statistical analysis corresponds to a
percentage in excess of the required 91% (12/13.times.100). Accordingly,
the test has indicated that the batch of goods from which the statistical
sample was selected may be represented as passing the end user's
requirements.
The logic at 42 responds to the first keystroke during "setup" after
pressing the "1" key, so long as this first key is not "0", and displays
this key as the first entry from the keyboard as the desired UPC number to
be tested. The logic then loops back as indicated at 43, 44 awaiting the
next keyboard entry. When all of the desired keyboard entries have been
made, the operator enters the "#" key which causes the logic, at 43, 45 to
store all digits in RAM, redisplay the main menu and loop back to the
logic at 32.
The logic at 60, responsive to the "*" key after the logic at 32 is
present, turns off the laser scanner and loops back to the logic at 32.
This prevents spurious input from the scanner during a manual input of the
desired UPC number and, after the desired UPC number has been entered
manually (the logic has now looped back to 32), the "#" key may be pressed
to reactivate the scanner to begin a test.
The logic flow illustrated in FIGS. 3a and 3b differs from that described
above with relation to FIGS. 2a and 2b principally in that if entry of the
correct bar code is made by scanning a correct symbol, the logic rather
than returning to the main menu as described above, goes directly to the
test mode. Also, the first number scanned during the test mode will be
displayed rather than waiting for the tenth scan. Thus, instead of reading
"TEST CODE A021900027256 NO. READ 1; CURRENT NO. READ 0" as noted above,
the display will be TEST CODE A021900027256 NO. READ 1; CURRENT
A021900027256 NO. ERROR 0.
For convenience, primed reference characters are employed in FIGS. 3a and
3b which correspond generally with their unprimed counterparts in FIGS. 2a
and 2b.
* * * * *
|
|
|
|
|
Description  |
|