Pour continuer dans la série des framboises au turbin et pour faire suite au projet ‘Une framboise dans la pointeuse‘, voici l’exemple d’un autre Raspberry PI qui a su apporter sa petite pierre dans le quotidien d’une entreprise. Ici aussi, le PI n’était pas indispensable, mais à moindre cout, il a permis de rendre plus conviviale certaines opérations tout en apportant une solution de stockage numérique de données qui étaient auparavant gardées sur papier . Ce n’est pas le projet du siècle, mais celui la n’a requis aucune bidouille électronique et qui sait, peut-être qu’il inspirera certains d’entre vous pour des choses similaires.
Le projet
Le but était de rendre ‘connecté’ un vieux système de pesage poids lourd commun à plusieurs petites entreprises. Cet appareillage Precia-Molen I300 fonctionnait encore très bien mais il fallait revoir le coté pratique. Déjà, pour y accéder. Il fallait, été comme hivers, passer par l’extérieur pour se rendre dans un petit local dédié au pesage. La console d’utilisation n’était pas forcément intuitive et les personnes non habituées avaient toujours tendance à galérer avec ce truc. L’édition des tickets de pesées se faisait sur une vielle imprimante matricielle à papier carbone et bords perforés. En plus d’imprimer des tickets peu lisibles, l’imprimante était souvent en rade à cause du papier humide. Bref comme j’en avait assez d‘aller sans cesse dépanner ce truc, j’avais décidé de confier le boulot à un Raspberry PI.
L’idée
Je voulais que les utilisateurs puissent procéder à des pesées depuis leur navigateur (PC, smartphone …). Tant qu’à faire, enregistrer toutes les infos dans une base de données (plus pratique pour rechercher que dans des dossiers papier) avec la possibilité de joindre des documents à chaque pesée. Et pour finir, la possibilité d’imprimer des fiches de pesées plus lisibles sur n’importe quelle imprimante. Le tout avec une interface la plus sobre possible pour ne pas avoir besoin de former les gens pour ça.
La réalisation
A l’origine, la connexion entre la console I300 et l’imprimante était une liaison série RS232. J‘ai donc détourné l’usage de ce port afin de m’en servir pour dialoguer avec un Raspberry PI. Tout le reste n’est que programme. Comme pour les pointeuses, j’ai développé ça sous Windows avec Visual Studio 2019 et .NET5. C’était pour moi l’occasion de tester System.IO.Ports sur plusieurs plateformes avec le même code. J’ai fait le choix d’une application ASP.NET pages Razor qui fait office de serveur web et de service de liaison avec le port série. L’échange de données en temps réel entre les pages coté client et le service se font par une connexion SignalR (le principe de websocket d’ASP.NET). Avec ces méthodes, l’application peut tourner indifféremment sur n’importe quelle plateforme ou OS du moment que .NET5 soit pris en charge et que l’appareil dispose d’un port série.
A la saisie d’une pesée, tous les champs se comportent comme ceux de n’importe quel formulaire à l’exception du poids qui est fourni automatiquement par le serveur. Les données sont ensuite stockées dans une base SQLServer
Le matériel
Ici pas d’électronique à façon. Juste un Raspberry PI 4 dans un boiter Argon One et un adaptateur USB/Série. Le boiter Argon en alu est déjà équipé d’un système de ventilation donc à part assembler tout ça, je n’ai rien eu à bricoler hormis un cordon de raccordement entre l’I300 (din 8 pins) et l’adaptateur série (db9).
A l’usage
Simple et pratique. Les pesées en attente de retour après une tare sont mises en avant pour les retrouver facilement. Une page permet de lister toutes les pesées avec un filtre par entreprise et par date. On peut donc facilement les retrouver pour y joindre des fichiers (lettre de voiture, BL , BE …) et même imprimer les fiches de pesées en pdf pour les joindre au dossier numérique d’affaire.
Conclusion
Voila 3 mois que ce petit PI a été mis en service et il est devenu totalement transparent. Les utilisateurs se sont habitués à faire les pesées depuis leur bureau en quelques clicks et pour rien au monde il ne voudraient revenir en arrière. Pour moi, cet exemple est très particulier. Il démontre qu’avec un budget matériel insignifiant et quelques lignes de code, on peut moderniser certains procédés en leur apportant de nouvelles fonctionnalités tout en les rendant beaucoup plus simple à utiliser. Une prochaine étape est prévue pour ce projet. J’envisage d’ajouter une camera pour stocker automatiquement une photo de la bascule à chaque pesée.
Chapeau pour ce genre de réalisation. ça me rappelle un sujet de stage que j’ai fait il y a plus de 20 ans..
Ce qui est vraiment important, avant de coder un truc… c’est d’être connecté au besoin terrain. Sans ça, tu peux sortir une pure invention géniale… personne ne l’utilisera.
Bien, mais il y a un defaut de conformité, il faut absolument imprimer le numero de memoire alibi
Bonjour
Il manque juste la reconnaissance des plaques pour remplir automatiquement le champ immat et la société par defaut pour ce camion
Projet très sympa, par contre en effet petit doute sur le côté « légal »/ »certifiant » de ces pesé, enfin ça dépend quel est leurs but ? Du déclaratif ? Ou de la récup d’information pour les boîtes ?
Car en ce qui concerne la lecture des données depuis une balance (pour le commerce en magasin) il est nécessaire de faire certifier par un organisme le code/assembly qui fait la jonction entre la balance et le reste du système d’information.
Pour le coté légal il ni en a pas (mais ça pourrait). Cette bascule n’est plus certifiée depuis longtemps et les données de pesage sont juste utilisées à titre informatif en interne pour les sociétés qui l’utilisent.
Je suis d’accord a 200% avec le commentaire de J2C. Les idées de génies qui mènent à des usines à gaz sont généralement vouées à l’échec ou en tous cas, mal ou sous utilisées. C’est la tout le sens du développement en interne quel que soit la taille des projets. C’est un peu le message que je voulais passer dans la conclusion du billet en écrivant que ce projet était particulier. Ces pesées exposaient tout un tas de petites contraintes et c’était presque une corvée pour les utilisateurs. Depuis la mise en place de ce PI, tous les gens qui ont des pesées à faire me gratifient d’un truc du genre ‘Super ce que tu as fait pour la bascule Bud …’ et pourtant, c’est très certainement le plus petit développement que j’ai fais pour eux depuis bien des années.
Chouette travail, bel exemple pour le Pi, et encore un grand merci de nous faire partager tout ça (ici comme sur le forum !)