Searching \ for 'Bar code scanning' in subject line. ()
Make payments with PayPal - it's fast, free and secure! Help us get a faster server
FAQ page: piclist.com/techref/index.htm?key=bar+code+scanning
Search entire site for: 'Bar code scanning'.

Truncated match.
PICList Thread
'Bar code scanning'
1996\08\26@034112 by Onat Ahmet

flavicon
face
Hi;

This one is about bar code scanning. I want to read bar codes
with a wand type scanner. (Both UPC and code39 would be nice, but
I can live with UPC only) The problem is, given the wide range and
fluctuations of the scanning speed, it seems difficult to calculate
the widths of the bars... Is there a simple method? Any code
fragments laying around? Please note that, what I am after is
not a decoding routine, but something that will enable me to
calculate the (ratios of) the widths of the bars and spaces.

Any pointers to FAQs, or Usenet groups are also appreciated.

Since barcodes were introduced 25 years ago, I guess they should
not require great computing power to read!

Thanks!

| Ahmet ONAT  Kyoto Univ. Japan                                 |
| E-mail    : spam_OUTonatTakeThisOuTspamkuee.kyoto-u.ac.jp                           |
| WWW page  : http://turbine.kuee.kyoto-u.ac.jp/staff/onat.html |
|             My 6 leg walker, RC airplanes & more in home page |

1996\08\26@040226 by fastfwd

face
flavicon
face
Onat Ahmet <.....PICLISTKILLspamspam@spam@MITVMA.MIT.EDU> wrote:

> This one is about bar code scanning. I want to read bar codes
> with a wand type scanner. (Both UPC and code39 would be nice, but I
> can live with UPC only) The problem is, given the wide range and
> fluctuations of the scanning speed, it seems difficult to calculate
> the widths of the bars... Is there a simple method?

Ahmet:

Most bar codes include a constant pattern at both edges of the code
so you can calibrate your decode routine to the scanning speed...
It's real simple.

A quick web search shows that the December '94 issue of "Circuit
Cellar Ink" magazine allegedly contains an article on bar-code
decoding algorithms... Maybe you can find some pointers there.

-Andy

Andrew Warren - fastfwdspamKILLspamix.netcom.com
Fast Forward Engineering, Vista, California
http://www.geocities.com/SiliconValley/2499

1996\08\26@055249 by Lee Jones

flavicon
face
> This one is about bar code scanning. I want to read bar codes
> with a wand type scanner. (Both UPC and code39 would be nice, but
> I can live with UPC only) The problem is, given the wide range and
> fluctuations of the scanning speed, it seems difficult to calculate
> the widths of the bars... Is there a simple method?

I don't have any advice if you want to compute the absolute widths
of the elements.  But I don't think you need that.  You can just
measure the ratios between light and dark and deduce if a bar was
"wide" or "narrow".  From that information, you can decode it.

I'd recommend "Handbook of Bar Coding Systems" by Harry E Burke.
My copy is copyright 1984 by NCR Corporation.  It's published by
Van Nostrand Reinhold.  It's not too thick and used to run ~$50.
An appendix at the back covers a dozen bar code standards.

You might also contact the "code control organizations".  UPC is
UPC Council in Dayton Ohio at 513-435-3870.  Code-39 is Interface
Mechanisms in Lynnwood Washington at 206-743-7036.  Both contacts
are from the vendor list in the above books bibliography.

                                               Lee

-------------------------------------------------------------------
Jones Computer Communications             .....leeKILLspamspam.....frumble.claremont.edu
509 Black Hills Dr, Claremont, CA 91711         voice: 909-621-9008
-------------------------------------------------------------------

1996\08\26@060326 by Onat Ahmet

flavicon
face
       I don't have any advice if you want to compute the absolute widths
       of the elements.  But I don't think you need that.  You can just
       measure the ratios between light and dark and deduce if a bar was
       "wide" or "narrow".  From that information, you can decode it.
                                                       Lee

Hi;

To make myself clearer; I have no intention of measuring the *absolute*
widths of the bars and spaces; my problem is: How can I be sure of my
readings when the speed of the wand type scanner is fluctuating.
Or, maybe this is not a big problem at all?

Thanks for the info; I have received a couple of answers, hours after
sending in my question! PIC list is wonderful!

| Ahmet ONAT  Kyoto Univ. Japan                                 |
| E-mail    : EraseMEonatspam_OUTspamTakeThisOuTkuee.kyoto-u.ac.jp                           |
| WWW page  : http://turbine.kuee.kyoto-u.ac.jp/staff/onat.html |
|             My 6 leg walker, RC airplanes & more in home page |


---------------------------------------

The original question is included below for your convenience:

----------------------
This one is about bar code scanning. I want to read bar codes
with a wand type scanner. (Both UPC and code39 would be nice, but
I can live with UPC only) The problem is, given the wide range and
fluctuations of the scanning speed, it seems difficult to calculate
the widths of the bars... Is there a simple method? Any code
fragments laying around? Please note that, what I am after is
not a decoding routine, but something that will enable me to
calculate the (ratios of) the widths of the bars and spaces.

Any pointers to FAQs, or Usenet groups are also appreciated.

Since barcodes were introduced 25 years ago, I guess they should
not require great computing power to read!

Thanks!

1996\08\26@083547 by Walter Banks

picon face
Onat Ahmet wrote:

> This one is about bar code scanning. I want to read bar codes
> with a wand type scanner. (Both UPC and code39 would be nice, but
> I can live with UPC only) The problem is, given the wide range and
> fluctuations of the scanning speed, it seems difficult to calculate
> the widths of the bars... Is there a simple method? Any code
> fragments laying around? Please note that, what I am after is
> not a decoding routine, but something that will enable me to
> calculate the (ratios of) the widths of the bars and spaces.
>
> Any pointers to FAQs, or Usenet groups are also appreciated.
>
> Since barcodes were introduced 25 years ago, I guess they should
> not require great computing power to read!

Your right bar codes don't require a lot of computing power to read.
A long time ago I wrote code in a UCSD pascal system running on an apple
to read both UPC and CODE 39.

Basically bar code is is another communication format. To get information
you need clocking information to measure progress along the code,
calibration information to get a sense of the information and the
information itself.  Most barcode formats are designed with redundant
information in the code so that reading algothrims can do consistency
checks in the decoding process.

The two formats that you mention CODE39 and UPC are good representations
of two different types of barcode.

Code 39  is a character oriented barcode where each character is
represented by 9 bars. 5 dark bars with 4 white spaces inbetween is the
normal. Three of the bars are wide (typically 3 times the narrow) and
the remainder are narrow. The trick to reading this code is to
determine which of the bars are wide.  Each character is decoded
separtely. Code39 records usually start and stop with a "*" so the
reader knows that it decoded the whole record and not just part of it.


UPC is one of two fixed formats  11 digit and 6 digit. The 11 digit
format contains a guardband for speed calibration, 6 digits, a center
guardband, 6 more digits of information and a right guard band. The
symbol yields 11 digits of information and a check digit. Each digit is
encoded in a 7 unit wide space consisting of 4 bars. Two light and two
dark. The code is well thought out. It can be easily read forwards,
backwards and the cola bottle can be read full or empty. UPC is
suprisingly tolerant of printing and operator tolerances.  6 Digit UPC
uses left guard band 7 digits and a different right guard band.

We did some tests on people that may be of some use. The fastest speed
you will see in hand read code is about 42 inches per second. (A little
more than one meter per second)


Walter Banks
http://www.bytecraft.com

1996\08\29@075725 by alexg

flavicon
face
Onat Ahmet wrote:
>
> Hi;
>
> This one is about bar code scanning. I want to read bar codes
> with a wand type scanner. (Both UPC and code39 would be nice, but
> I can live with UPC only) The problem is, given the wide range and
> fluctuations of the scanning speed, it seems difficult to calculate
> the widths of the bars... Is there a simple method? Any code
> fragments laying around? Please note that, what I am after is
> not a decoding routine, but something that will enable me to
> calculate the (ratios of) the widths of the bars and spaces.

       The way I found is to change the reference every time I see a thin bar.
This way the reference should be good enough for decoding even if the
speed varies a lot. It all depends on which kind of Bar code you have,
code39 and ITF just have two bar widths but for UPC you have four. That
makes everything a little more critical. It is not a good idea to change
the reference if it varies much more than expected because it is
probably a reading error from the wand or an abrupt variation caused by
some "obstacle" in the wand's way.

>
> Any pointers to FAQs, or Usenet groups are also appreciated.
>
> Since barcodes were introduced 25 years ago, I guess they should
> not require great computing power to read!
>

       You will find out that there is not much written about the subject. It
seems like the people that have the algorithms prefer to keep them for
themselves. If you want I have a routine in 8031 assembler and FORTH
that decodes 2 of 5 codes. I am now working in a routine that can read
and decode the code on the fly using a state machine. If you are
interested we can work together on that.

Best regards,
Alexandre Guimaraes
alexgspamspam_OUTiis.com.br

More... (looser matching)
- Last day of these posts
- In 1996 , 1997 only
- Today
- New search...