Código Universal de Produtos

Origem: Wikipédia, a enciclopédia livre.
(Redirecionado de Universal Product Code)
Um código de barras UPC

O Código Universal de Produto (UPC ou código UPC) é uma simbologia de código de barras amplamente utilizada mundialmente para rastreamento de itens comerciais em lojas.

A simbologia escolhida possui barras (ou espaços) de exatamente 1, 2, 3 ou 4 unidades de largura cada; cada dígito decimal a ser codificado consiste em duas barras e dois espaços escolhidos para ter uma largura total de 7 unidades, tanto na forma de paridade "par" quanto na forma de paridade "ímpar", o que permite a varredura em qualquer direção. "Padrões de guarda" especiais (3 ou 5 unidades de largura, sem codificação de dígito) são misturados para ajudar na decodificação.

Um UPC (tecnicamente, um UPC-A) consiste em 12 dígitos atribuídos exclusivamente a cada item comercial. A organização internacional GS1 atribui os dígitos usados tanto para o UPC quanto para o código de barras do Número de Artigo Internacional (EAN) relacionado.[1] As estruturas de dados UPC são um componente dos Números Globais de Itens Comerciais (GTINs) e seguem a especificação GS1 global, que é baseada em padrões internacionais.

História[editar | editar código-fonte]

Wallace Flint propôs um sistema de checkout automatizado em 1932 usando cartões perfurados. Bernard Silver e Norman Joseph Woodland, um estudante de pós-graduação do Drexel Institute of Technology, desenvolveram um código no estilo alvo e solicitaram a patente em 1949.[2][3]

Na década de 1960 e início da década de 1970, as ferrovias da América do Norte experimentaram códigos de barras multicoloridos para rastrear vagões, mas esse sistema acabou sendo abandonado[4] e substituído por um sistema baseado em rádio chamado Identificação Automática de Equipamento (AEI).

Em 1973, um grupo de associações comerciais da indústria de alimentos formou o Uniform Product Code Council (UPCC) que, com a ajuda dos consultores Larry Russell e Tom Wilson da McKinsey & Company, definiu o formato numérico que formou a base do Uniform Product Código.[5] Empresas de tecnologia, incluindo Charegon, IBM, Litton-Zellweger, Pitney Bowes-Alpex, Plessey-Anker, RCA e Scanner. O Comitê de Seleção de Símbolos finalmente optou por implementar a proposta da IBM desenhada por George J. Laurer, mas com uma ligeira modificação na fonte na área legível por humanos.

O primeiro item com a marca UPC a ser escaneado em um caixa de varejo foi um pacote de 50 chicletes Wrigley's Juicy Fruit, comprado no supermercado Marsh em Troy, Ohio, às 8h01 em 26 de junho de 1974.[6] A caixa registradora NCR registrou 67 centavos.[7] O carrinho de compras também continha outros itens com código de barras, mas o chiclete foi o primeiro retirado no caixa. Um fac-símile do pacote de chicletes foi exibido no museu de história americana do Smithsonian Institution em Washington, DC.[8][9]

Murray Eden foi consultor da equipe que criou o código de barras Universal Product Code.[10][11] Como presidente de um comitê de cientistas do Instituto de Tecnologia de Massachusetts, ele ajudou a "selecionar um símbolo que resistiria à inevitável onda de tecnologia que estava por vir".[12] Ele escolheu a fonte e teve a ideia de adicionar números na parte inferior, que é um sistema à prova de falhas, caso o leitor de código de barras não esteja funcionando corretamente.[13][14]

Proposta IBM[editar | editar código-fonte]

Por volta do final de 1969, a IBM, do Research Triangle Park (RTP), na Carolina do Norte, designou George Laurer para determinar como fazer um scanner e uma etiqueta de supermercado. No final de 1970, Heard Baumeister forneceu equações para calcular caracteres por polegada alcançáveis por dois códigos de barras IBM, Delta A e Delta B. Em fevereiro de 1971, Baumeister juntou-se à Laurer.

Delta B comparou as larguras das barras com a largura do espaço e os bits de código. Isso era extremamente sensível à propagação da tinta, onde níveis inadequados de tinta ou pressão fariam com que ambas as bordas de uma barra se espalhassem para fora ou encolhessem.

Em meados de 1971, William "Bill" Crouse inventou um novo código de barras chamado Delta C[3] Ele alcançou quatro vezes mais caracteres por polegada do Delta B.

Delta C alcançou seu desempenho mais alto usando apenas bordas iniciais ou finais que não foram afetadas pela distribuição uniforme da tinta. O código proporcionou melhor desempenho quando tinha um conjunto de caracteres definido com uma distância de referência fixa que abrangia a maior parte ou, de preferência, todos os caracteres.

O selo UPC mostrando as características gerais das propostas de Baumeister

Na primavera de 1972, Baumeister anunciou um avanço. Ele propôs um rótulo com barras um pouco maiores que a distância entre todas as barras que precisavam ser lidas em uma única passagem. Esta etiqueta pode ser digitalizada com um simples scanner "X", apenas um pouco mais complexo do que o scanner a laser de linha reta. No dia seguinte, Baumeister sugeriu que se o rótulo fosse dividido em duas metades, o comprimento das barras poderia ser cortado quase pela metade.

Estas duas propostas reduziram a área do alvo em um terço e depois em um sexto. A imagem à direita mostra o rótulo proposto por Baumeister. Ele não especificou nenhum código de barras específico, pois isso era bem compreendido. Exceto pelo código de barras e dez dígitos a etiqueta UPC hoje é sua proposta. Pouco depois, Baumeister transferiu-se para outra área da RTP.

Mais tarde, Laurer pediu ajuda a Crouse sobre como o scanner poderia detectar uma etiqueta. Juntos, eles definiram barras de proteção e uma definição de como detectar o rótulo. As barras de proteção também forneceram identificação para discriminação de meio rótulo e barras de treinamento para os circuitos de limite do scanner. Laurer tinha uma definição completa do rótulo e começou a escrever sua proposta.[15]

Em 1º de dezembro de 1972, a IBM apresentou a proposta de Laurer ao Super Market Committee em Rochester, Minnesota, local onde a IBM desenvolveria o scanner. Durante a apresentação, Crouse fez uma demonstração de laboratório onde leu rótulos semelhantes a UPC com sua varinha de anel. Além de ler as etiquetas normais, ele leu a grande etiqueta central de duas páginas no livreto da proposta. Ele então abriu uma página que mostrava uma foto de itens etiquetados sobre uma mesa. As etiquetas eram pequenas e defeituosas devido à resolução da foto impressa, mas a varinha leu muitas delas. Esta demonstração mostrou a robustez do código Delta C puro. A proposta foi aceita.

Como dezoito caracteres não eram suficientes, Laurer tentou adicionar uma unidade ao conjunto de caracteres. Isso rendeu vinte e seis caracteres Delta C que poderiam fornecer os dois conjuntos de caracteres decimais, mas também adicionou quatorze por cento à largura do rótulo e, portanto, à altura. Isso seria um aumento de trinta por cento na área ou uma etiqueta de 1,7”x1,03”. Laurer sentiu que isso não era aceitável.

Laurer voltou ao conjunto de caracteres original com vinte caracteres, mas quatro deles eram dois pares com a mesma leitura Delta C. Ele decidiu usar todos eles. Para distinguir entre os pares, ele mediria a largura de uma barra em cada um dos pares para distingui-los um do outro. Para cada par, essas barras teriam uma ou duas unidades de largura.

Laurer não aplicou as equações de Baumeister a este conjunto. Ele sentiu que apenas uma medição da largura da barra não seria muito séria. No final das contas, seria necessário um aumento de mais de cinquenta por cento na largura e na altura para um aumento de área de mais que o dobro. Laurer admitiu mais tarde que esses quatro caracteres em cada conjunto foram responsáveis pela maioria dos erros de leitura do scanner.

David Savir, um matemático, recebeu a tarefa de provar que o símbolo poderia ser impresso e atenderia aos requisitos de confiabilidade, e provavelmente não tinha conhecimento das equações de Baumeister. Ele e Laurer adicionaram mais dois dígitos aos dez para detecção e correção de erros.

Exigir que cada largura de bit seja lida com precisão basicamente anulou a vantagem Delta C, exceto para a medição de referência Delta C. Apenas o estranho conjunto de caracteres e o tamanho do rótulo permanecem como uma sombra do código Delta C. O tamanho ainda era o calculado para Delta C puro. Se o tamanho da etiqueta tivesse sido recalculado adequadamente, levando em consideração as medidas de largura de barra exigidas, a etiqueta teria sido grande demais para ser aceitável.

A engenharia mecânica e o projeto de circuitos eletrônicos geralmente exigem projetos de pior caso usando tolerâncias conhecidas. Muitos engenheiros que trabalhavam com códigos de barras tinham pouca experiência com essas coisas e usavam métodos um tanto intuitivos. Esta foi a causa do fraco desempenho do código Delta B e muito provavelmente da falha do scanner alvo da RCA.

Composição[editar | editar código-fonte]

Cada código de barras UPC-A consiste em uma faixa digitalizável de barras pretas e espaços brancos acima de uma sequência de 12 dígitos numéricos. Nenhuma letra, caractere ou outro conteúdo de qualquer tipo pode aparecer em um código de barras UPC-A. Existe uma correspondência um-para-um entre um número de 12 dígitos e uma faixa de barras pretas e espaços brancos, ou seja, existe apenas uma maneira de representar visualmente cada número de 12 dígitos e existe apenas uma maneira de representar cada faixa de barras pretas e espaços em branco numericamente.

A área escaneável de cada código de barras UPC-A segue o padrão S L LLLLLMRRRRR R E, onde os padrões de guarda S (início), M (meio) e E (final) são representados da mesma maneira em cada código de barras UPC-A e no L As seções (esquerda) e R (direita) representam coletivamente os 12 dígitos numéricos que tornam cada UPC-A único. O primeiro dígito L indica um sistema numérico específico a ser usado pelos dígitos seguintes. O último dígito R é um dígito de verificação de detecção de erro, que permite que alguns erros sejam detectados na digitalização ou entrada manual. Os padrões de guarda separam os dois grupos de seis dígitos numéricos e estabelecem o tempo.

UPC-A UPC-E

UPC-A 042100005264 é equivalente a UPC-E 425261 com o padrão de paridade "EOEEOO", que é definido pelo sistema numérico UPC-A 0 e pelo dígito de verificação UPC-A 4.

Ver também[editar | editar código-fonte]

  • GS1 – Organização internacional de padrões da cadeia de suprimentos

Referências[editar | editar código-fonte]

  1. «GS1 BARCODE CHART». GS1 US. 3 de abril de 2013. Consultado em 7 de junho de 2011. Arquivado do original em 7 de janeiro de 2012 
  2. US patent 2612994 
  3. a b «UPC - The Transformation of Retail». IBM. 7 March 2012. Consultado em 12 November 2021. Arquivado do original em 12 November 2021  Verifique data em: |acessodata=, |arquivodata=, |data= (ajuda)
  4. «A Brief History of the Bar Code». Esquire. 153 (3): 42. March 2010. Cópia arquivada em 1 June 2016  Verifique data em: |arquivodata=, |data= (ajuda)
  5. «Our innovative history – McKinsey firsts». mckinsey.com. 2013. Arquivado do original em 12 de setembro de 2013  (see slide 10 of 18)
  6. Nelson, Benjamin (1997). Punched Cards to Bar Codes: A 200 Year Journey with Descriptions of over 260 Codes. Peterborough, N.H.: Helmers Publishing. ISBN 978-091126112-7 
  7. Alfred, Randy. «June 26, 1974: By Gum! There's a New Way to Buy Gum». Wired. Arquivado do original em 24 August 2010  Verifique data em: |arquivodata= (ajuda)
  8. Heller, Nathan. «Scanning Species». Harvard Magazine 
  9. «The History of the Bar Code». Smithsonian. 23 de setembro de 2015. Consultado em 12 de agosto de 2021. Cópia arquivada em 9 de fevereiro de 2022 
  10. «Oral-History: Murray Eden - Engineering and Technology History Wiki». ethw.org. 10 de novembro de 1999. Consultado em 4 de janeiro de 2021. Cópia arquivada em 21 de janeiro de 2021 
  11. National Commission on Productivity and Work Quality (1975). Technology Applied to the Food Industry: A Preliminary Report (em inglês). [S.l.: s.n.] Consultado em 14 January 2021. Cópia arquivada em 19 March 2022  Verifique data em: |acessodata=, |arquivodata= (ajuda)
  12. Haberman, Alan L. (2001). Twenty-Five Years Behind Bars: The Proceedings of the Twenty-Fifth Anniversary of the U.P.C. at the Smithsonian Institution, September 30, 1999 (em inglês). [S.l.]: Harvard University Wertheim Publications Committee. pp. 74,108. ISBN 978-0-674-00657-7 
  13. Casanova, Stephanie (18 August 2020). «Murray Eden, a biomedical engineer with a love of singing, dies in Tucson at 99». Arizona Daily Star (em inglês). Consultado em 14 January 2021. Arquivado do original em 14 January 2021  Verifique data em: |acessodata=, |arquivodata=, |data= (ajuda)
  14. Roth, Brad (17 April 2020). «Murray Eden». Medium (em inglês). Consultado em 14 January 2021. Arquivado do original em 21 January 2021  Verifique data em: |acessodata=, |arquivodata=, |data= (ajuda)
  15. «Alumni Hall Of Fame Members». University of Maryland Alumni Association. The University of Maryland. 2005. Consultado em 10 June 2009. Cópia arquivada em 23 June 2007  Verifique data em: |acessodata=, |arquivodata= (ajuda)

Leitura adicional[editar | editar código-fonte]

  • US, publicado em 11 May 1972 
  • US, publicado em 2 July 1959  Railroad bar code.
  • US, publicado em 17 August 1967 
  • US, publicado em 28 June 1971 

Ligações externas[editar | editar código-fonte]