Paranóias

You will find everything here!

Código de Barras – 57 anos

with 2 comments

Hoje o Google está assim:

Google

Porquê?

O Código de Barras (UPC – Universal Product Code) faz hoje 57 anos.

Na imagem acima podemos ver um exemplo:

  • O código de barras legível por máquinas
  • O número UPC de 12 dígitos legível por humanos

O número de identificação de fabricação da BYG Publishing são os seis primeiros dígitos do número UPC – 639382. Os cinco números seguintes – 00039 – são os números de ítem. Um funcionário da empresa, chamado coordenador UPC, é responsável pela alocação do número de item em produtos, garantindo que o mesmo código não seja utilizado em mais de um produto, retirando códigos à medida que produtos são retirados de linha, etc.

De notar que são todos diferentes, ou seja, não há um número de item igual para dois artigos.

O último dígito de um código UPC é chamado de dígito de verificação. Este dígito permite que o scanner determine se este número foi escaneado corretamente ou não. Aqui está como é calculado o dígito de verificação para os outros 11 dígitos do código, usando o código 63938200039, conforme do “The Teenager’s Guide to the Real World” exemplificado acima:

  1. some o valor de todos os dígitos em posições ímpares (dígitos 1, 3, 5, 7 e 9).
    6 + 9 + 8 + 0 + 0 + 9 = 32
  2. multiplique esse número por 3.
    32 x 3 = 96
  3. some o valor de todos os dígitos em posições pares (dígitos 2, 4, 6, 8 e 10).
    3 + 3 + 2 + 0 + 3 = 11
  4. some este valor ao valor no passo 2.
    96 + 11 = 107
  5. para criar o código verificador, determine o número que, quando adicionado ao número do passo 4, seja múltiplo de 10.
    107 + 3 = 110
    Dessa forma, o dígito verificador é 3.

Cada vez que o scanner lê o código de barras de um item, ele executa este cálculo. Se o dígito de verificação calculado for diferente do dígito de verificação lido, o scanner sabe que algo saiu errado e que este item deve ser escaneado novamente.

Continhas interessantes, não? 🙂

O código de cupom é interessante (caractere de sistema de número 5). Se você já imaginou como um scanner pode ler um cupom e rejeitá-lo se você não tiver comprado o produto, aqui está a sua explicação. Aqui está um código de barras UPC de uma caixa de Post Honey Nut Shredded Wheat:

(leia-se acima: “cupão” – Português Brasil acima.)

Aqui está o cupom do mesmo produto:

Você pode ver que o código de barras deste cupom começa com um 5 indicando que isto é um cupom. O número 43000 é a identificação da empresa Post. Os próximos três dígitos (186) são chamados de código família. Os próximos dois dígitos (70) são um código de valor. O dígito final é o código de verificação normal.

O código família e o código de valor são colocados arbitrariamente pelo coordenador UPC da empresa. Isto é feito porque um cupom é  usado por toda uma família de produtos. Por exemplo, um cupom talvez sirva para quatro diferentes tipos de sabonetes feitos pela mesma empresa. Da mesma forma, o código de valor representa, arbitrariamente, o valor do cupom. A empresa envia ao varejista os dados que contam ao computador do varejista exatamente quais produtos se ajustam ao código de família, e exatamente quantos remover. Quando o cupom é escaneado, o computador POS:

  1. decodifica o código família
  2. verifica para garantir que o cliente comprou um item da família
  3. decodifica o código de valor
  4. envia o desconto novamente à máquina registradora

Na próxima vez em que você for a uma loja, pegue um produto – qualquer produto. Olhe para o seu código UPC: agora você já sabe o que significa!

Agora pergunto… querem saber como descodificar um?!

Então, digamos que você gostaria de decodificar as barras atuais dos códigos de barras e mapear seus números. Isso será algo que o deixará vesgo, porém pode ser feito.

Em primeiro lugar, examine qualquer código de barras de 12 dígitos. Ele é composto por barras pretas e espaços brancos entre as barras. Suponhamos que a mais fina barra ou espaço que você vê (por exemplo, a primeira barra a esquerda) possa ser chamada de “uma unidade largura”. As barras e espaços podem então ser vistos como tendo larguras proporcionais de uma, duas, três ou quatro unidades. Se você examinar qualquer código de barras pode ver exemplos destas quatro larguras.

O começo de qualquer código de barras é “1-1-1”. Isto é, partindo da esquerda, você encontra uma unidade de largura de barra preta seguida de uma unidade de largura de espaço branco seguido por uma unidade de largura de barra preta (barra-espaço-barra). Seguindo o começo do código, os dígitos são codificados assim:

       0 = 3-2-1-1       1 = 2-2-2-1       2 = 2-1-2-2
       3 = 1-4-1-1       4 = 1-1-3-2       5 = 1-2-3-1
       6 = 1-1-1-4       7 = 1-3-1-2       8 = 1-2-1-3
       9 = 3-1-1-2

       0 = 3-2-1-1       1 = 2-2-2-1       2 = 2-1-2-2
       3 = 1-4-1-1       4 = 1-1-3-2       5 = 1-2-3-1
       6 = 1-1-1-4       7 = 1-3-1-2       8 = 1-2-1-3
       9 = 3-1-1-2   
 

(Algo a observar: todas essas codificações apresentam a soma igual a 7).

Então vamos pegar esse código de barras como um exemplo:


o código embutido nas barras é 043000181706:

  • o código de barras começa com o código padrão inicial de 1-1-1 (barra-espaço-barra).
  • o zero é 3-2-1-1 (espaço-barra-espaço-barra).
  • o quatro é 1-1-3-2 (espaço-barra-espaço-barra).
  • o três é 1-4-1-1 (espaço-barra-espaço-barra).
  • os próximos três zeros são 3-2-1-1 (espaço-barra-espaço-barra).
  • no meio existe um padrão 1-1-1-1-1 padrão (espaço-barra-espaço-barra-espaço), que é muito importante pois significa que os números à direita estão visualmente invertidos!
  • o um é 2-2-2-1 (barra-espaço-barra-espaço).
  • o oito é 1-2-1-3 (barra-espaço-barra-espaço).
  • o um é 2-2-2-1 (barra-espaço-barra-espaço).
  • o sete é 1-3-1-2 (barra-espaço-barra-espaço).
  • o zero é 3-2-1-1 (barra-espaço-barra-espaço).
  • o seis é 1-1-1-4 (barra-espaço-barra-espaço).
  • o último caractere é um 1-1-1 (barra-espaço-barra).

Divirta-se decodificando códigos de barras de 12 dígitos!

Para obter mais informações sobre códigos de barras e tópicos relacionados, verifique os links na próxima página.

E, espero que tenham conseguido perceber qual o padrão. Levei aqui alguns bons minutos nisto. Olhos completamente atrofiados que tive que descansar por uns minutos também.

O que percebi é que há tipo um Padrão no meio (aquelas barras mais comprimas entre o 0 e o 1, e que, como se trata de um código de 12 dígitos, em cada lado temos na primeira parte do código o seguinte:

3 (barra-espaço-barra) (padrão) ; 4 (espaço-barra-espaço-barra) ; 4 ; 4 ; 4 ; 5 (padrão) ; 4 ; 4 ; 4 ; 4 ; 4 ; 4 ; 3 (último caractere)

E mais digo… prefiro deixar esta tarefa para as máquinas de códigos de barra. 😮

Que atrofio…. Mas percebi… por exemplo o 3 da primeira parte do código, tem aquela barra grossa (com tamanho de 4 barras normais). Mas… entretenham-se lá, as máquinas.

Parabéns Código de Barra… e, podem ver na íntegra aqui, em How Stuff Works.

Podem também ver aqui outros artigos: 1 ; 2

Written by Nuno França

7 de Outubro de 2009 às 19:20

2 Respostas

Subscribe to comments with RSS.

  1. Gostei das informações acima. Tirei minhas dúvidas! Obrigada!

    Barcodebrasil

    30 de Agosto de 2013 at 15:48


Comment!

Preencha os seus detalhes abaixo ou clique num ícone para iniciar sessão:

Logótipo da WordPress.com

Está a comentar usando a sua conta WordPress.com Terminar Sessão /  Alterar )

Google photo

Está a comentar usando a sua conta Google Terminar Sessão /  Alterar )

Imagem do Twitter

Está a comentar usando a sua conta Twitter Terminar Sessão /  Alterar )

Facebook photo

Está a comentar usando a sua conta Facebook Terminar Sessão /  Alterar )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: