IDENTIFICATION AUTOMATIQUE ET CODES-BARRESpascal.ajoux.free.fr/pdf/codesbarres.pdf ·...

download IDENTIFICATION AUTOMATIQUE ET CODES-BARRESpascal.ajoux.free.fr/pdf/codesbarres.pdf · IDENTIFICATION AUTOMATIQUE ET CODES-BARRES par Pascal VRIGNAT - IUT de CHATEAUROUX INTRODUCTION

If you can't read please download the document

Transcript of IDENTIFICATION AUTOMATIQUE ET CODES-BARRESpascal.ajoux.free.fr/pdf/codesbarres.pdf ·...

  • IDENTIFICATION AUTOMATIQUE ET CODES-BARRES

    par Pascal VRIGNAT - IUT de CHATEAUROUX

    INTRODUCTIONne entreprise produit les biens ou les servicespour lesquels elle a t cre, mais n'a pas pourobjectif la production d'informations sur elle

    mme: la saisie des informations doit doncconsommer le moins possible de ressourceshumaines, matrielles et financires de l'entreprise.Cet objectif peut tre atteint de deux faons: par lestechniques de l'identification automatique et par laconnexion directe des matriels de production sur lesystme informatique... et bien sr en associant cesdeux techniques. L'identification automatique est unensemble de techniques comprenant le code-barres,la reconnaissance optique de caractres, lareconnaissance de formes ("vision"), l'entre vocale,les tiquettes radio, les cartes magntiques, etc...

    L'identification automatique fait dj partie de notrequotidien: dans les supermarchs, les bibliothques,les centres de transfusion sanguine, pour laprogrammation des magntoscopes, sur leschques, les lettres et les paquets, les mdicaments,les journaux, dans les entreprises, lesadministrations, etc...

    Dans les entreprises, l'identification automatique estapplique dans la plupart des services: rception desmarchandises, stockage dans les entrepts etmagasins, suivi de la production, contrle de laqualit, prparation des commandes etconditionnement des produits, suivi des stocks,gestion des expditions, suivi des documents et desoutillages, saisies des temps, contrle d'accs,gestion des investissements et immobilisations, triautomatique de produits et colis, gestion desgaranties, suivi de la maintenance et des rparations,automatismes industriels, etc...

    Photo n1 : lectures de codes-barres sur des objets dfilants

    Dans tout ces domaines, l'identification automatiquepermet : le suivi instantan et prcis des vnements,

    quels qu'ils soient, le contrle des matires premires, la suppression des arrts de production par suite

    de manque de matires premires, le suivi de l'avancement de la production et de

    tout autre vnement, l'enregistrement et le suivi des produits envoys

    en rfection et rparation, et, donc, l'liminationdes dfauts et l'accroissement de la qualit,

    l'optimisation de l'utilisation des ressourceshumaines, matrielles et financires,

    l'optimisation du stockage, l'acclration et la vrification des livraisons,

    Autrement dit: une meilleure gestion

    HISTORIQUEL'origine des codes-barres remonte 1949 , avec l'invention d'un code-barres circulaire (NJ WOODLAND) quine sera pas utilis en pratique. En 1960, SYLVANIA imagine un symbole d'identification des wagons de chemin defer faisant appel des barres et des espaces. L'ide qui apparue ds les annes de l'aprs-guerre, est deremplacer la lecture des trous des bandes perfores par des successions de noirs et de blancs.

    La socit INTERFACE MECANISMES (qui deviendra plus tard INTERMEC) commence ainsi son activit enfabricant des lecteurs de bandes de ce type, destins remplacer les lecteurs de bandes perfores.

    En 1970 est cr aux Etats-Unis un comit ayant pour but de dfinir une codification adapte aux problmes de lagrande distribution: le "US SUPERMARKET AD HOC COMMITTEE ON UNIVERSAL PRODUCT CODING", ouplus simplement l'U.P.C. Ce comit se met au travail et en 1973 le code U.P.C. est adopt. Entre temps, en 1970,PLESSEY introduit son code-barres dans les applications bibliothcaires, et, en 1971, MONARCH invente le codeCODABAR (dit galement Monarch) et le Docteur ALLAIS, d'INTERMEC, propose le code 2 parmi 5 entrelac.

    U

  • En 1974, sur une demande de la socit BOEING, INTERMEC invente le premier code alphanumrique: lecode 39. Puis, les choses s'acclrent. Le code E.A.N. (European Article Numbering), version internationale del'U.P.C. est adopt en 1977. La mme anne, le CODABAR est choisi par l'American Blood Bank Commission, etl'administration amricaine commence des tudes ayant pour but le choix d'une symbologie dans le cadre du projetLOGMAR.

    De nouvelles symbologies sont cres pour rpondre des besoins sans cesse plus varis et sophistiqus: code128 (Computer Identics) et code 93 (INTERMEC) pour les utilisateurs cherchant un code alphanumrique dense etpouvant coder tous les caractres du jeu ASCII, et, trs rcemment, une nouvelle gnration de codes tagesextrmement denses: les codes 49 (INTERMEC), 16 K, et PDF 417.

    D'autres symbologies, rellement bi-dimensionnelles sont galement apparues (code 1). On ne peut plus ici parlervraiment de codes-barres, mais de codes matriciels, l'information tant code par points carrs. Ce type desymbologie permet une densit trs importante (encore suprieure au PDF 417).

    CODES-BARRES ET SECTEURS DACTIVITES

    Tableau n1 : Codes-barres et secteurs dactivits

    Lensemble des codes-barres est lgifr. L'AFNORpropose des documents.Pour exemple :

    NF Z 63-300-1 Mars 1988 Traitement del'information. Reconnaissance des caractres.Codes barres - Vocabulaire et gnralits.

    6 NF EN 798 Dcembre 1995 Codes-barres.Spcifications des symbologies.

    7 NF EN 796 Dcembre 1995 Codes-barres.Identifiants de symbologies.

    9 FD Z 63-301 Septembre 1995 Codes-barres.Guide de choix et de mise en oeuvre.

    Etc

    OBJECTIF DU TRAVAIL A MENERLobjectif principal du travail mener, est depouvoir dcoder le contenu dun code-barres detype EAN 13 sur un objet dfilant transport parun tapis roulant. En fonction du dcodage delhistorique de la boite de conserve (marque xx),celle-ci sera aiguille sur le tapis vers une destinationprdtermine lavance. Lensemble sera gr parun automate programmable industriel.Ce code numrique trs dense est spcifi par leGENCOD pour les applications de la grandedistribution. Les symboles EAN codent 13 ou 8chiffres, le cas le plus normal tant 13 caractres(toujours numriques). En plus de ces caractres, esttoujours encode une cl de contrle. Pour certainesapplications particulires de ce code, des caractressupplmentaires sont ajouts la droite du symbolede base, spars de celui-ci par un espace(identification des journaux et magazines). Le codeEAN utilise une technique de dcodageparticulirement adapte aux symboles imprims surles emballages par les moyens d'imprimerie

    traditionnels. Aux USA, ce code correspond au codeUPC. Pour permettre une lecture omnidirectionnelleplus aise, le symbole peut tre dcod en deuxparties puis reconstitu: ainsi, chaque moiti peutfacilement tre plus haute que large.

    3 5864510 0018 1digit de contrle "DC"

    code interface produit "CIP"code national unifi fournisseur "CNUF"

    identifiant du pays (3=France)

    Figuren1:Contenu du codeEAN 13

    LLLLLLaaaaaa ddddddiiiiiissssssttttttrrrrrriiiiiibbbbbbuuuuuuttttttiiiiiioooooonnnnnn

    EAN 13

    EAN 8

    EAN 128

    UPC A

    UPC E

    ISBN

    LLLLLLaaaaaa ssssssaaaaaannnnnntttttt

    CIP 39

    CODE 128

    PZN

    MSI

    MONARCH

    LLLLLL'''''' iiiiiinnnnnndddddduuuuuussssssttttttrrrrrriiiiiieeeeee

    CODE 39

    2/5 Entrelac

    CODE 128

    ITF

  • PRESENTATION DE LA PARTIE OPERATIVE A GERERLa figure n2 prsente la vue de dessus de la partie oprative capable de grer physiquement le triage des boitesde conserves. Laiguillage sera fera en pilotant le vrin pneumatique n1 ou n2. On pourra de cette faon, enfonction du cahier des charges de lapplication effectuer diffrents modes de tri.

    DETAIL DU MATERIEL ET DES LOGICIELS MIS EN JEUX POUR LALECTURE ET LE TRAITEMENT DES DONNEES SUR LES CODES-BARRESLECTURE

    Lecteur dcodeur intgr de chez DATALOGICDL (rfrence : DS2100 4Watts),

    Emission laser classe II multi-trames,Distance de lecture : 50 400mm avec desrsolutions de 0.8mm 0.2mm,Protocoles de communication : RS232 / RS485.(Liaison SUBD 25pts)Stockage de la configuration dans une mmoireEEPROM Logiciel de configuration du lecteur :WINHOST V1.21 1998 (environnement Windows). Une alimentation 1A/24Vdc

    Photo n2 : Lecteur de codes-barres de chezDATALOGIC.DL

    TRAITEMENT

    Automate programmable industriel de chez SCHNEIDER (rfrence :TSX 3722001) : une carte de communication PCMCIA RS485 (rfrence : TSX SCP114), un cordon de liaison pour la carte (rfrence : TSX SCPCX4030), une carte dentres/sorties TOR (rfrence : TSX DMZ28DR). Logiciel de programmation : PL7 MICRO V1.8-IE42 1997. (environnement Windows)

    TRAVAUX A MENER POUR POUVOIR GERER LA FUTURECOMMUNICATION ENTRE LE LECTEUR ET LAUTOMATECONFIGURATION DU LECTEUR DE CODES-BARRES

    La premire tape, consiste fabriquer un adaptateur laide de prises de type SUBD25 pour pouvoir fairecommuniquer le lecteur avec un PC en vue de le configurer via le port srie (ne pas oublier de ramener surladaptateur lalimentation 24Vdc !). A laide du logiciel WINHOST, on pourra paramtrer la liaison srie, la normedu code-barres lire, la qualit (couleur noire, verte sur ltiquette) de limpression du code dcoder surlobjet

    Figuren2:Vuededessusdu tapisroulant

    Alimentationmanuelle

    des boites

    Lecteur decodes-barres

    Moto/rducteur

    Dtecteuropto-lectronique

    Boite

    Vrin n1pneumatique

    Vrin n2pneumatique

    Rceptacle n1

    Rc

    epta

    cle

    n2

    Armoire lectriqueet sa boutonnerie

  • Dans notre cas, le lecteur est paramtr suivant le tableau n2 :

    Options For All codesDecoding Safety 1Code 1Type EAN 13Code 2Type DisableCode 3Type DisableCode 4Type DisableCode 5Type DisableCode 6Type DisableMain Int.ConfigurationBaud Rate 9600Parity NoneData Bits 8Stop Bits 1Handshake None

    Tx EnabledProtocol Type No ProtocolSiemens Protocol NOT APPLICABLEMUX32 Protocol NOT APPLICABLEOutput LinesNo Read Output PulseRight Output PulseAUX.Int.Auxiliary InterfaceBaud Rate 9600Parity NoneData Bits 8Stop Bits 1Handshake NoneCommunication Mode Local EchoOperating Mode SelectionOperating Mode AutomaticReading ParametersBeam Shutter TriggeredOverflow 28sScanner Resolution High

    Tableau n2 : Configuration du lecteur

    Une fois la configuration effectue et stocke dans la mmoire EEPROM du lecteur, laide du modeHyperterminal de Windows, nous pouvons effectuer une premire lecture de codes-barres (affichage du contenudu code lcran exemple : 3 564700 005910 : Boite de champignons de Paris/Notre Jardin/200grs).

    PROGRAMMATION DE LAUTOMATE PROGRAMMABLE INDUSTRIEL

    La deuxime tape, consiste paramtrer dans un premier temps la configuration de la carte PCMCIA TSXSCP114 :

    La position de la carte est : 00.0..1, La voie de communication est : 1, La liaison est de type : mode caractres, Vitesse de transmission : 9600Bits/s, Donnes : 8Bits, Stop : 1Bit, Parit : sans.

  • La liaison physique entre le lecteur et la carte de communication de lautomate programmable industriel sefera de SUBD25 points SUBD25 points (Attention la connexion : gestion de la liaison srie).

    La dernire tape qui se rvle tre la plus dlicate est de programmer lautomate en Rception dune chanede caractres. Pour cela, nous utiliserons la fonction : INPUT_CHAR().La fonction INPUT_CHAR permet de grer une attente de rception dune chane de caractres. Le message reuest mmoris dans un tableau d'octets %MB:n.Cette fonction permet de recevoir jusqu' 4 K octets (120 octets pour la prise terminal).Deux possibilits sont offertes :

    lecture d'un nombre de caractres, lecture d'un message.

    Dans tous les cas, une remise zro de la mmoire du coupleur peut tre demande pour le prochain messageafin d'viter de recevoir des donnes obsoltes.

    Syntaxe :

    INPUT_CHAR(Adresse, RAZ, Nb de caractres lire, Chane reue, Paramtres de gestion)

    La base du programme qui permet de rcuprer le contenu du code EAN 13 lu dans lAPI est :

    Commentaires du programme :Les paramtres de gestion sont communs toutesles fonctions de communication asynchrones.Ils se composent :

    d'un paramtre qui donne des informations surl'activit de la fonction,

    d'un paramtre qui prcise le numro d'changeidentifiant la transaction en cours,

    d'un paramtre contenant le compte-rendu del'change (compte-rendu de communication etcompte-rendu de l'opration),

    d'un paramtre de time-out qui permet decontrler l'absence de rponse,

    d'un paramtre de longueur qui permet demmoriser le nombre d'octets mettre ou lenombre d'octets reus.

    Ces paramtres ncessitent un tableau de quatre mots conscutifs respectant la structure suivante :

    Numro du mot Octet poids fort Octet poids faible%MWi Numro d'change Bit d'activit%MWi+1 Compte-rendu de l'opration Compte-rendu

    de communication%MWi+2 Time-out%MWi+3 Longueur

    Tableau n3 : Paramtres ncessaires la communication

    Toujours mettre jour le paramtre longueur avant chaque lancement d'une fonction de communication. Bit d'activitCe bit signale l'tat de l'excution de la fonction. Il est mis 1 lors de son lancement et il retombe 0 la fin de sonexcution.Par lintermdiaire de %M10 (Bit) = 1, laide du premier numro du mot (%M96 :X0 (Bit dactivit) ) la gestion de larception de la chane de caractres peut se faire. On peut assimiler ce mot une gestion de front montant ddiactivant la communication.La signification de la ligne de programme pour notre application est :

    %M10 %MW96:X0

    (1)

    Liste des renvois du rung :

    (1) :INPUT_CHAR(ADR#0.1.SYS,1,0,%MB200:20,%MW96:4)

    %L1OPERATE

    INPUT_CHAR(ADR#0.1.SYS, 1, 0, %MB200:20, %MW96:4)Adresse del'metteur dumessage

    RAZ Lecture detoute lachane decaractres

    Contenu dumessage reuen octets

    Compte-rendud'change etlongueur dela chane reue

  • Le nombre de caractres reus slve 14. On pourra noter que la rservation contenu du message en octets slve 20 octets. Cette rservation a t choisie pour ne pas tre borne uniquement au contenu du code EAN13.

    RESULTATS OBTENUSTESTS HORS PROGRAMME AUTOMATE DANS LE MODE : STOP

    Deux tests hors programme sont possibles pour valider la rception de la chane de caractres. Dans un premiertemps lAPI tant en STOP , dans le mode Mise au point de la carte PCMCIA nous pouvons lancer lepremier test. Il permet de valider la fonction Arrt sur silence. Cette fonction dtecte la fin de la rception parabsence de caractre pendant une priode de temps (dlai en ms).

    Dans la configuration de la carte de communication on rajoutera :

    un arrt sur silence dfinit 20mS.

    Ce premier test nous donne comme rsultats : Emission Requte : Rception, Message Reu : Nombre de caractres reus = 16 Rsultat en ASCII = .3564700005965.. Rsultat en Hexa = 02 33 35 36 34 37 30 30 30 30 35 39 36 35 0D 0A

    Nous retrouvons bien aprs la rception de la chane de caractres : Retour chariot (CR=16#0D), Retour la ligne (LF=16#0A).

    Ces caractres pourront faire lobjet dune intention particulire dans le futur programme !

    Le deuxime test consiste lancer une rception de la chane de caractres.Dans la configuration de la carte de communication on rajoutera : un arrt en rception sur le caractre 1 dfinit comme : >Arrt, >CR (retour chariot), 13, un arrt en rception sur le caractre 2 dfinit comme : >Arrt, >LF(retour ligne), 10.

    Ce deuxime test nous donne comme rsultats : Emission Requte : Rception, Message Reu : Nombre de caractres reus = 14 Rsultat en ASCII = .3564700005965 Rsultat en Hexa = 02 33 35 36 34 37 30 30 30 30 35 39 36 35

    TESTS AVEC PROGRAMME AUTOMATE DANS LE MODE : RUN

    LAPI tant en RUN (donc programme actif), nous pouvons diter une table anime. Lobjectif est de sparerlensemble des caractres reus de la lecture du code-barres.

    Repre Symbole Valeur courante%MB200 $02%MB201 3%MB202 5%MB203 6%MB204 4%MB205 7%MB206 0%MB207 0%MB208 0%MB209 0%MB210 5%MB211 9%MB212 6

    %MB213 5%MB214 6%MB215 $00%MB216 $00%MB217 $00%MB218 $00%MB219 $00%MB220 $00%MW96 16#1501%MW97 0%MW98 0%MW99 0

    Tableau n4 : Rsultats de la table anime

  • Le code barres est donc bien dcortiqu , il ne reste plus qu dvelopper le programme pour pouvoir dansnotre application, aiguiller des botes de conserve diffrentes suivant les critres de choix correspondant au cahierdes charges de lapplication.

    CONCLUSIONLa technique du code-barres s'est impose dans la plupart des applications de l'identification automatiqueapplique la gestion d'une entreprise. En effet, le code-barres prsente un certain nombre de caractristiquespropres qui se sont rvles tout--fait adaptes ce domaine. D'autres techniques d'identification automatiquesont employes dans de nombreux domaines et permettent de rsoudre certains problmes pour lesquels le code-barres n'apporte pas de solution idale. Toutes ces techniques coexistent et se compltent. Bien entendu, il existedes applications o on peut envisager l'une ou l'autre technique et hsiter, par exemple, entre le code-barres et lavision, ou entre le code-barres et l'tiquette radio, etc... Nanmoins, ces "zones de recouvrement" sont trs limites,et on ne peut pas vraiment parler de concurrence entre les diffrentes techniques de l'identification automatique. Aucontraire, certaines applications peuvent faire appel plusieurs de ces techniques. La fabrication des automobiles,par exemple, fait appel la fois aux codes-barres et aux tiquettes radio.

    CONTACTPascal VRIGNAT

    Enseignant au Dpartement GEIIIUT de Chteauroux

    2 Avenue Franois MITTERRAND36000 Chteauroux

    : 02-54-08-25-50E-mail : [email protected]

    Photo n1: lectures de codes-barres sur des objets dfilantsAutrement dit: une meilleure gestionHISTORIQUETableau n1: Codes-barres et secteurs dactivitsLECTURE

    CONCLUSION