Como os Codigos de Barras Codificam Dados: Das Listras do Supermercado aos QR Codes
Aprenda como os codigos de barras realmente codificam dados usando padroes binarios, digitos de verificacao e correcao de erros. EAN-13, Code 128, QR codes explicados.
como funcionam os codigos de barrasgerador de codigo de barrascodigo de barras EAN-13como criar um codigo de barrascodificacao de codigo de barras explicada
Gerador de Codigo de Barras
A ferramenta gratuita citada neste artigo — experimente diretamente no seu navegador.
Toda vez que uma caixa escaneia suas compras, um laser le um padrao matematico preciso codificado em linhas pretas e brancas. Mas como os codigos de barras realmente codificam dados? A resposta e mais elegante do que a maioria das pessoas percebe, e entende-la revela por que os codigos de barras sao um dos sistemas de dados mais confiaveis ja construidos. Este guia explica os mecanismos de codificacao reais por tras de cada formato principal de codigo de barras, das listras em uma caixa de cereal ao codigo QR no seu cartao de embarque.
Uma Breve Historia: Da Patente ao Supermercado
A historia comeca com Norman Woodland e Bernard Silver, que registraram a patente americana 2612994 em 1949. Woodland, inspirado pelo codigo Morse, estendeu pontos e traco em linhas de larguras variadas. A tecnologia ficou em grande parte inativa por decadas ate que o escaneamento a laser se tornou pratico.
O primeiro escaneamento comercial de codigo de barras ocorreu em 26 de junho de 1974, em Troy, Ohio, quando um pacote de chiclete Wrigley's Juicy Fruit foi escaneado em um supermercado Marsh. Aquele unico escaneamento provou que o sistema funcionava em velocidade de varejo, e a cadeia de suprimentos moderna nasceu.
Hoje, a GS1, a organizacao global de padroes, gerencia os padroes de codigo de barras usados em mais de 150 paises. Aproximadamente 6 bilhoes de codigos de barras sao escaneados todos os dias em todo o mundo.
Como os Codigos de Barras 1D Codificam Informacoes
Os codigos de barras unidimensionais tradicionais codificam dados atraves das larguras de barras e espacos alternantes. A ideia chave e que um scanner nao le cor: ele le transicoes entre escuro e claro, e mede qual a largura de cada elemento.
A maioria dos sistemas modernos de codigo de barras 1D usa uma abordagem de codificacao baseada em modulos. Um "modulo" e a barra ou espaco mais estreito possivel em um determinado simbolo. Elementos mais largos sao multiplos exatos dessa largura de modulo.
EAN-13: O Padrao Global do Varejo
EAN-13 (European Article Number, 13 digitos) e o codigo de barras em quase todos os produtos de consumo vendidos fora da America do Norte. Sua estrutura e:
Posicao
Digitos
Significado
1-3
Prefixo pais/regiao
Prefixo GS1 (ex: 789-790 = Brasil)
4-8
Codigo fabricante
Atribuido pela GS1 a empresa
9-12
Codigo produto
Atribuido pelo fabricante
13
Digito de verificacao
Calculado a partir dos primeiros 12
Calculo do digito de verificacao EAN-13: Para a cadeia de 12 digitos 590123412345:
Pegar os digitos em posicao par (posicoes 2, 4, 6, 8, 10, 12): 9, 1, 3, 1, 3, 5. Multiplicar cada um por 3, soma = 66.
Total = 17 + 66 = 83.
Digito de verificacao = proximo multiplo de 10 menos total = 90 - 83 = 7.
O EAN-13 completo e 5901234123457.
UPC-A: O Padrao Norte-Americano
UPC-A e o codigo de barras de 12 digitos usado nos Estados Unidos e Canada. E essencialmente um EAN-13 com um zero inicial implicito. Sua estrutura:
Digito 1: Digito do sistema de numeracao (0 = alimentacao padrao, 2 = produtos de peso variavel, 3 = medicamentos, 5 = cupons)
Digitos 2-6: Codigo fabricante (5 digitos, atribuido pela GS1)
Digitos 7-11: Codigo produto (5 digitos, atribuido pelo fabricante)
Digito 12: Digito de verificacao (mesma formula de pesos alternantes 1/3)
Code 39: O Primeiro Codigo de Barras Alfanumerico
Code 39 foi inventado em 1974. Foi o primeiro codigo de barras a codificar letras alem de numeros. A logica de codificacao esta embutida no nome: cada caractere e representado por 9 elementos (5 barras e 4 espacos), e exatamente 3 desses 9 elementos sao largos. "Tres de nove" da ao Code 39 seu nome alternativo.
Code 128: Codificacao ASCII de Alta Densidade
Code 128 e um formato de codigo de barras muito mais denso que pode codificar todos os 128 caracteres ASCII. Cada caractere e representado por 3 barras e 3 espacos de larguras variadas, e a largura total de qualquer caractere e sempre exatamente 11 modulos. O Code 128 tem tres subtipos:
Subtipo
Codifica
Code 128A
Maiusculas, digitos, caracteres de controle
Code 128B
Maiusculas e minusculas, digitos, caracteres especiais
Code 128C
Apenas pares numericos (densidade de digitos dobrada)
Ferramenta relacionada
Gerador de Codigo de Barras
Use diretamente no seu navegador. Sem registro, sem download, sem dados armazenados.
QR Codes: Codigos de Barras 2D e o Poder da Correcao de Erros
Os QR codes (codigos de resposta rapida) foram inventados pela Denso Wave em 1994 para rastrear pecas de automoveis durante a fabricacao. Ao contrario dos codigos de barras 1D que codificam dados em um eixo, os QR codes codificam dados em uma matriz 2D de quadrados pretos e brancos.
Os QR codes podem conter dramaticamente mais dados do que os codigos de barras 1D:
Tipo de dados
Capacidade maxima
Apenas numerico
7.089 caracteres
Alfanumerico
4.296 caracteres
Binario (bytes)
2.953 bytes
Caracteres Kanji
1.817 caracteres
Correcao de Erros Reed-Solomon: Por que os QR Codes Sobrevivem a Danos
Reed-Solomon e um algoritmo matematico que adiciona dados redundantes ao lado dos dados originais. Se parte do QR code estiver danificada, obscurecida ou ausente, os dados redundantes permitem ao scanner reconstruir a mensagem original.
Os QR codes suportam quatro niveis de correcao de erros:
Nivel
Dados restaurados
Uso tipico
L (Baixo)
~7%
Ambientes limpos
M (Medio)
~15%
Uso geral
Q (Quartil)
~25%
Ambientes industriais
H (Alto)
~30%
Quando um logotipo sera adicionado
E exatamente por isso que voce pode colocar o logotipo de uma empresa no centro de um QR code e ele ainda escaneia: o logotipo cobre algumas celulas, mas a redundancia Reed-Solomon permite ao scanner reconstruir os dados ausentes.
Comparacao de Formatos
Formato
Tipo
Max. caracteres
Correcao de erros
Uso comum
EAN-13
1D
13 digitos
Digito de verificacao
Produtos de varejo mundiais
UPC-A
1D
12 digitos
Digito de verificacao
Varejo America do Norte
Code 39
1D
Variavel
Opcional
Industrial, militar, saude
Code 128
1D
Variavel (todo ASCII)
Caractere de controle
Envio, logistica
QR Code
2D
Ate 7.089 numerico
Reed-Solomon (7-30%)
URLs, pagamentos, ingressos
Perguntas Frequentes
Por que todo codigo de barras tem um digito de verificacao?
Um digito de verificacao e um digito matematicamente derivado anexado aos dados do codigo de barras. Quando um scanner le o codigo de barras, ele recalcula o digito de verificacao a partir dos dados lidos e o compara com o digito impresso. Se nao coincidirem, o scanner rejeita a leitura e tenta novamente. Isso detecta o erro de escaneamento mais comum: ler incorretamente um unico digito.
Qual e a diferenca entre EAN-13 e UPC-A?
UPC-A e um sistema de 12 digitos desenvolvido nos Estados Unidos em 1974. EAN-13 e um sistema de 13 digitos desenvolvido na Europa em 1976 como um superconjunto do UPC-A. Todo codigo de barras UPC-A pode ser convertido para EAN-13 adicionando um zero na frente. Os scanners modernos lem ambos os formatos.
Por que os QR codes podem ter logotipos?
Os QR codes podem ter logotipos porque a correcao de erros Reed-Solomon adiciona dados redundantes. Quando um logotipo cobre parte das celulas do QR code, essas celulas cobertas sao tratadas como apagamentos. O algoritmo Reed-Solomon pode reconstruir os dados apagados desde que o dano total nao exceda o nivel de correcao de erros.
O que significa "Code 128"?
"Code 128" se refere ao fato de que o padrao codifica o conjunto completo de 128 caracteres ASCII. O Code 128 foi desenvolvido pela Computer Identics Corporation em 1981 e tornou-se um dos formatos de codigo de barras lineares mais amplamente utilizados.
Pronto para gerar seu proprio codigo de barras? Use o Gerador de Codigo de Barras para criar codigos EAN-13, UPC-A, Code 128, Code 39 ou QR instantaneamente, sem software para instalar.
Ferramenta relacionada
Gerador de Codigo de Barras
Use diretamente no seu navegador. Sem registro, sem download, sem dados armazenados.