A propos des codes barres américains UPC
(Composition, calcul du code de contrôle...)

EN BREF EN BREF EN BREF EN BREF EN BREF EN BREF EN BREF
Signification Origine Versions Types de données Longueurs Algorithme de la
clé de contrôle
   Universal
   Product
   Code
U.S.A. UPC-A
UPC-E
UPC-D
numériques
numériques
numériques
12 chiffres
6 chiffres
variable
...
EN BREF EN BREF EN BREF EN BREF EN BREF EN BREF EN BREF

Il s'agit du plus ancien code barres mis en place à grande échelle pour le marquage des produits de grande consommation. A l'heure actuelle, ce marquage, utilisé aux Etats Unis et au Canada est en voie de disparition (au profit de l'EAN 13).

Il existe 3 versions du code UPC :
- Le code "standard" est basé sur 12 caractères.
- Le code simplifié est basé sur 6 caractères seulement et est destiné aux supports ne pouvant acceuillir un code plus important, souvent par manque de surface de marquage.
- Enfin un code de longueur variable est disponible pour des usages souvent internes à une entreprise ou un groupement.


U P C - A
exemple UPC A (2,6 Ko)

Le 1er
chiffre identifie l'usage
du code :
0 - normal
1 - (NON UTILISE)
2 - produits vendus au poids; marquages internes aux magasins
3 - médicaments et autres produits de santé
4 - produits non alimentaires; marquages internes aux magasins
5 - coupons promotionnels, marketing
6 - normal
7 - normal
8 - (NON UTILISE)
9 - (NON UTILISE)
Ce chiffre entre en compte pour la représentation graphique du code barres.
Le premier groupe de 5 chiffres désigne le fournisseur.
Il est attribué par le Uniform Code Council, organisme national de codification des Etats Unis et du Canada, qui en assure la gestion. 100.000 fournisseurs différents peuvent ainsi être identifiés.
Le second groupe de 5 chiffres désigne l'article. Il est attribué par le fournisseur lui-même, qui est donc libre de coder ses articles comme il l'entend. 100.000 articles différents peuvent ainsi être identifiés pour chaque fournisseur.
Le dernier
chiffre sert de contrôle pour éviter toute erreur de lecture. Son calcul est basé sur un algorithme de type modulo 10, détaillé ci-dessous.


Pour calculer le code de contôle (le 12ème et dernier chiffre), la procédure est la suivante :

Soit le code UPC A de départ : 0 0 1 2 3 4 5 6 7 8 9 X
Addition des chiffres figurant à des positions impaires : + 0 + 2 + 4 + 6 + 8 + = 20
Addition des chiffres figurant à des positions paires : 0 + 1 + 3 + 5 + 7 + 9 = 25
...multiplication du dernier résultat par 3 : 25 x 3 = 75
Addition des résultats issus des rangs pairs et impairs : 20 + 75 = 95*
Recherche du multiple de 10 immédiatement supérieur * = 100
dont on retranche le chiffre précédent : 100 - 95 = 5

Le code barre complet sera donc bien   exemple UPC A (2,6 Ko)


* Lorsque ce chiffre est lui-même un multiple de 10, le code de contrôle est égal à 0.

Pour réaliser le codage des chiffres sous leur aspect de barres, on procède comme suit :



Les 6 premiers chiffres sont codés
selon la colonne A.

Les 6 chiffres suivants sont codés
selon la colonne B.

Colonne A   Colonne B
0001101
0011001
0010011
0111101
0100011
0110001
0101111
0111011
0110111
0001011
0
1
2
3
4
5
6
7
8
9
1110010
1100110
1101100
1000010
1011100
1001110
1010000
1000100
1001000
1110100

Voici donc le codage de nos 12 chiffres (chacun sur 7 bits de valeur 0 ou 1) :

0     0 1 2 3 4     5 6 7 8 9 5
   
A   A A A A A   B B B B B B
   
0001101   0001101 0011001 0010011 0111101 0100011   1001110 1010000 1000100 1001000 1110100 1001110

Il reste à placer les repères de début (101), de milieu (01010) et de fin (101), qui deviendront des barres d'une longueur légèrement supérieure, et au final notre suite binaire sera...

101 0001101 0001101 0011001 0010011 0111101 0100011 01010 1001110 1010000 1000100 1001000 1110100 1001110 101

...où chaque "0" deviendra un espace vide et chaque "1" une barre verticale sombre; deux barres consécutives formant un trait plus épais.
Chaque chiffre étant composé de l'alternance ESPACE + BARRE + ESPACE + BARRE (ou BARRE + ESPACE + BARRE + ESPACE), un code barres UPC A comporte donc au final :
2 barres de début + (6 x 2 barres) + 2 barres au milieu + (6 x 2 barres) + 2 barres en fin = 30 barres noires.
U P C - E
exemple UPC E (2,6 Ko)