Etiqueter les boîtes de composants

Etiqueter les boîtes de composants

Avec les difficultés d'approvisionnement actuelles, il est crucial d'avoir une gestion des stocks rigoureuse. Nous vous avons déjà présenté deux outils à base de modules Yoctopuce que nous avons mis en place, qui exploitent les étiquettes à code 2D DataMatrix qui se trouvent sur la plupart des bobines de composants électroniques. Aujourd'hui, nous allons voir comment gérer les pièces qui ne disposent pas d'une telle étiquette.


On ne va pas vous le cacher plus longtemps: quand on a goûté au côté pratique d'un code 2D qui inclut directement toutes les informations utiles sur un emballage de composants, on n'a qu'une envie, c'est d'en avoir partout. L'objectif du jour est donc de disposer d'un outil qui permette d'ajouter facilement une telle étiquette à une boîte de composants qui n'en aurait pas.

Pour ne pas devoir ressaisir toutes les informations, on va utiliser notre base de données de composants, puisqu'ils y figurent déjà tous. La simple saisie de la référence du composant, à la main ou avec un pistolet à code barre si disponible, permet de retrouver les informations de base.

Interface de saisie semi-automatique
Interface de saisie semi-automatique


Par contre, il faut être sûr que les informations spécifiques que nous mettrons sur l'étiquettes soient justes, en particulier la quantité. Mais on aimerait aussi s'assurer que le produit corresponde bien. La meilleure façon de vérifier cela est d'utiliser une balance connectée, et de vérifier si le poids mesuré est vraisemblable. Nous allons donc réutiliser la balance présentée il y a quelques mois, fabriquée à l'aide d'un Yocto-Bridge et d'une simple cellule de charge, dont la précision s'avère largement suffisante pour compter des connecteurs à la pièce près:

La balance Yoctopuce
La balance Yoctopuce


Notre base de données de composants inclut déjà le poids net unitaire, puisque c'est une information utile pour les certifications environnementales. Il suffit d'y ajouter une tare d'emballage, puisque les produits sont quasiment toujours emballés dans la même boîte, et très occasionnellement un poids d'emballage unitaire, si le poids brut des pièces emballées est supérieur au poids net final, en raison d'un artéfact d'emballage.

Avec ces informations, il suffit de

  1. peser chaque boîte à étiqueter sur la balance,
  2. vérifier le nombre de pièces attendues
  3. saisir le code de traçabilité

pour pouvoir créer une étiquette DataMatrix. Mais comment produire cette étiquette DataMatrix depuis notre back-end PHP?

La génération du code DataMatrix lui-même peut se faire assez facilement en PHP, à l'aide du fichier correspondant récupéré dans la librairie TCPDF (en license LGPL). Il ne reste alors qu'à dessiner le code sur une image à l'aide de la librairie GD, et à y ajouter les informations textuelles.

Pour l'impression proprement dite, on utilise beaucoup de petites imprimantes à étiquettes Brother chez Yoctopuce. Elles sont assez pratiques, et celles qui ont une connexion réseau comme la QL1110NWB peuvent être pilotées directement via un socket TCP, sans devoir passer par un logiciel ni même un driver supplémentaires. On a donc écrit quelques fonctions qui permettent à notre back-end PHP d'envoyer directement l'image GD de l'étiquette à l'imprimante. Comme on s'est dit que cela pourrait être utile à d'autres, on vous a mis le code à disposition ici. La fonction principale est printDataMatrixLabel, elle prend deux arguments obligatoires: l'adresse IP de l'imprimante, et un tableau de champs MH10.8 à inclure dans le code DataMatrix, par exemple:

printDataMatrixLabel("192.168.1.99", [
  ['code'=>'1V',  'desc'=>'Manufacturer', 'value'=>'EFP Industrie'],
  ['code'=>'1P',  'desc'=>'Mfg Part #',   'value'=>'EH2,5PANO'],
  ['code'=>'4L',  'desc'=>'COO',          'value'=>'FR'],
  ['code'=>'Q',   'desc'=>'Quantity',     'value'=>'1000'],
  ['code'=>'16D', 'desc'=>'D/C [Ymd]',    'value'=>'20220803']
]);


La fonction a un troisième argument optionnel: une image de l'objet dans la boîte, pour l'ajouter à l'étiquette. C'est bien pratique lorsque les références de produits se ressemblent toutes...

Et voilà le résultat
Et voilà le résultat


Commenter aucun commentaire Retour au blog












Yoctopuce, get your stuff connected.