Les codes-barres sont générés de manière à ce que la « lecture directe » par un être humain ne soit pas une priorité. Cependant, cela ne nous empêche pas d'en connaître le mécanisme exact. Le processus ne prend que quelques millisecondes pour un ordinateur, mais ce « bip » anodin représente une quantité importante d'informations : pays, nom de l'entreprise, produit, et une vérification finale destinée à confirmer la lecture correcte du code.

Comment lire les codes-barres… sans lecteur de code-barres
Code-barres

Brève histoire du code-barres

Comme pour beaucoup d'autres inventions, l'histoire du premier code-barres destiné aux produits de grande consommation remonte à la fin des années 1940. Plusieurs noms sont associés à sa création, mais les premiers sur la liste sont Norman Joseph Woodland et Bernard Silver. Les deux ont breveté une version initiale basée sur un dessin circulaire, et selon Woodland lui-même, inspirée du code Morse.

Woodland a fini sous l'aile d'IBM, qui a montré un grand intérêt pour le système (elle a même tenté d'acheter le brevet), mais a admis que la puissance de traitement nécessaire n'était pas encore disponible. 70 ans plus tard, les codes-barres sont imprimés sur presque tout ce que vous pouvez imaginer. Aliments, médicaments, outils, vêtements… si c'est vendu à l'unité, en paquet ou au poids, il y a de fortes chances que vous en voyiez un.

Comment fonctionnent les codes-barres

Maintenant, la question magique est… comment fonctionnent-ils ? Comment un laser peut-il extraire des nombres de lignes si fines ? Évidemment, si un problème survient lors de la lecture, nous avons toujours la possibilité de saisir les chiffres à la main, mais tout commence par une norme, et c'est là qu'intervient l'organisation GS1, dont le siège est à Bruxelles.

Avec plus de 100 bureaux dans le monde et un million et demi d'entreprises enregistrées, vous devez essentiellement traiter avec eux si vous avez besoin de codes-barres pour vos produits. Les deux formats les plus populaires sont UPC-A et EAN-13. On suppose que UPC-A est utilisé aux États-Unis et au Canada, mais la magie du commerce international rend très simple de trouver des exemples des deux formats.

Comment lire les codes-barres… sans lecteur de code-barres
Les codes GS1. Notre article se concentre sur UPC-A.

Prenons le cas de UPC-A : tout code comporte 95 barres (oui, 95) qui peuvent être noires ou blanches, avec trois piliers de séparation qui marquent le début, le centre et la fin. Les piliers consomment 11 barres (le motif est 3-5-3), laissant un total de 84 barres pour stocker l'information. Ces 84 barres sont divisées en douze groupes (un par chiffre) de sept barres. La configuration des barres établit le codage du groupe et, par extension, le chiffre que l'on souhaite représenter. Wikipédia a fait le gros du travail en publiant un graphique précis avec chaque combinaison possible :

Comment lire les codes-barres… sans lecteur de code-barres
Les différences sont subtiles, mais critiques

Il y a quelque chose d'étrange dans cette image, n'est-ce pas ? On s'attend à ce que le codage de chaque chiffre soit le même des deux côtés du code, mais ce n'est pas le cas. En fait, un œil entraîné détectera probablement une subtilité : les barres blanches dans la moitié gauche sont toujours paires, tandis que dans la moitié droite elles sont impaires. Pourquoi ? Parce que cela garantit le processus de lecture même lorsque le code est à l'envers, ce qui arrive très souvent. Si le lecteur reconnaît que les barres blanches du côté gauche apparaissent comme impaires, il sait automatiquement qu'il doit commencer à lire du côté droit.

Que nous dit le chiffre en lui-même ? Une fois de plus, nous restons dans le domaine de UPC-A, et nous découvrons que les trois premiers chiffres représentent le pays. Si vous avez quelques codes sous les yeux et souhaitez les explorer, vous pouvez cliquer ici pour accéder à la table officielle des préfixes GS1, ou bien utiliser ce moteur de recherche international (il suffit d'écrire le code, mais il y a une limite de recherches par jour). Le reste du code inclut l'entreprise et le produit.

C'est ici que GS1 gagne son argent : les grands acteurs de chaque marché ont une énorme quantité de produits, ils exigent donc que la section « pays + entreprise » du code soit courte, sinon ils ne seraient pas en mesure de générer des codes-barres pour tout leur catalogue. En revanche, les entreprises avec de petites offres (dix produits ou moins) peuvent accéder à un préfixe beaucoup plus économique.

Comment lire les codes-barres… sans lecteur de code-barres
Un exemple de code UPC-A sur une souris Logitech : 09785506395-3

La conclusion de cet article appartient au dernier chiffre du code-barres UPC-A, qui est essentiellement le checksum, un contrôle qui confirme la lecture correcte du code. Comment le calculer ? D'abord, on additionne les six chiffres aux positions impaires du code, et on multiplie par trois. Ensuite, on additionne les cinq chiffres aux positions paires. Puis on additionne les résultats des deux opérations. La dernière étape consiste à prendre ce nombre et à ajouter le chiffre de vérification, qui devrait transformer le résultat en un multiple de 10. Faisons le test avec le code de notre souris Logitech :

  1. (0 + 7 + 5 + 0 + 3 + 5) = 20
  2. (20 x 3) = 60
  3. (9 + 8 + 5 + 6 + 9) = 37
  4. (60 + 37) = 97
  5. (97 + 3) = 100

Comme le montre l'image.