Pourquoi construire un baromètre USB DIY quand on peut en acheter un?

Il arrive un moment dans beaucoup de projets d’ingénierie où l’on regarde une carte breakout à 10 $, un microcontrôleur à 15 $ et un câble USB, et où l’on se dit : « Je peux transformer ça en baromètre USB en un après-midi. » C’est une pensée parfaitement raisonnable. Le MS5611 et le BMP390 sont d’excellents circuits intégrés. Arduino et ESP32 permettent un prototypage rapide. La version sur plaque d’essai fonctionne du premier coup. Puis vient la deuxième pensée : « Je peux faire tenir ça dans un format clé USB. Ce sera parfait ! »

Cet article s’adresse à l’ingénieur qui en est arrivé à cette deuxième pensée ou qui est déjà en train de construire. Non pas pour vous en dissuader, mais pour étaler le portrait complet afin que vous puissiez prendre la décision avec tous les chiffres en main.

Le prototype, c’est la partie facile

Disons que vous construisez un baromètre USB autour du BMP390, l’un des derniers capteurs de pression barométrique de Bosch. Vous achetez une carte breakout Adafruit pour environ 11 $. Vous la câblez à un Arduino Nano (15 $) ou un ESP32 (8 $) via I2C quatre fils : VCC, GND, SDA, SCL. Vous installez la bibliothèque Adafruit BMP3XX, téléversez le sketch d’exemple, ouvrez le moniteur série, et voilà : pression atmosphérique, température, altitude. Prototype fonctionnel en 45 minutes. Peut-être moins si vous l’avez déjà fait.

Si votre capteur est un MS5611 sur une carte breakout GY-63 (6 à 12 $ selon la source), le processus est similaire. Bibliothèque différente, même câblage I2C, même résultat. Le MS5611 utilise un die MEMS de TE Connectivity avec un ADC ΔΣ 24 bits et des coefficients de compensation calibrés en usine stockés en PROM. Le BMP390 utilise un die MEMS de Bosch avec son propre modèle de compensation. Les deux produisent d’excellentes données brutes.

À ce stade, la facture totale de matériel est inférieure à 30 $ et tout fonctionne. C’est le moment où le projet semble être presque terminé.

Il ne l’est pas.

Ce qui sépare un prototype d’un produit fiable

Le prototype sur plaque d’essai répond à une question : « Puis-je lire la pression atmosphérique sur mon ordinateur? » La réponse est oui. Mais dans la plupart des contextes professionnels, la vraie question est différente : « Puis-je lire la pression atmosphérique sur mon ordinateur de manière fiable, reproductible et avec une précision connue, pendant des semaines ou des mois, sans surveiller le matériel en permanence? »

Cette question mène à une liste d’exigences très différente.

Le boîtier. La plaque d’essai ne survivra pas dans un laboratoire, une salle de serveurs ou un banc d’essai. Vous avez besoin d’un boîtier. Si vous voulez le format clé USB, il vous faut un boîtier sur mesure, et « boîtier sur mesure » signifie soit une conception imprimée en 3D (ce qui nécessite une imprimante 3D, du temps de CAO et des itérations d’ajustement et de tolérances), soit une boîte de projet du commerce que vous modifiez avec des découpes. Le boîtier doit être ventilé pour que le capteur barométrique soit exposé à l’air ambiant, tout en étant protégé de la poussière et des chocs mécaniques. Si votre prototype utilise une carte breakout séparée câblée à un microcontrôleur, vous avez maintenant deux PCB et un câble à loger dans un boîtier qui nécessite aussi un connecteur USB avec dispositif anti-traction. Cette étape seule peut prendre une journée complète.

Le PCB sur mesure. L’alternative consistant à ne pas entasser une plaque d’essai dans une boîte est de concevoir un PCB dédié qui intègre le circuit intégré du capteur, le microcontrôleur et le connecteur USB sur une seule carte. C’est la voie propre, mais elle implique KiCad ou Altium, un délai de fabrication PCB (1 à 3 semaines chez JLCPCB ou PCBWay), l’approvisionnement en composants, la soudure par refusion du capteur MEMS (le BMP390 se présente dans un boîtier LGA-10 de 2,0 × 2,0 mm non soudable à la main) et au moins un cycle de révision quand la première carte ne fonctionne pas tout à fait. Pour une production unitaire ou en petite série, cette voie ajoute des semaines et des centaines de dollars.

La robustesse du firmware. Le sketch d’exemple fonctionne en démonstration. Pour un déploiement, vous avez besoin de gestion d’erreurs (que se passe-t-il quand le bus I2C se fige?), de minuteries de surveillance (que faire si le microcontrôleur se bloque?) et d’un comportement de reconnexion USB propre. Si votre PC redémarre, le port série revient-il proprement? Sous Windows, la numérotation des ports COM est notoirement instable; débranchez et rebranchez l’appareil et il peut apparaître sous un numéro de port COM différent, cassant votre chaîne de données. Ce sont des problèmes résolubles, mais chacun consomme des heures d’ingénierie.

La compensation en température. Le MS5611 et le BMP390 appliquent tous deux une compensation interne en température, mais la qualité de la compensation dépend de l’implémentation. La fiche technique du MS5611 décrit un algorithme de compensation du second ordre pour les températures inférieures à 20 °C et une correction supplémentaire en dessous de −15 °C. Toutes les bibliothèques Arduino n’implémentent pas l’algorithme complet. Si votre application couvre une large plage de températures, il vous faudra peut-être vérifier (ou réécrire!) le code de compensation. Le BMP390 gère la compensation en interne dans son ASIC, ce qui est plus pratique mais signifie aussi que vous ne pouvez ni inspecter ni corriger l’algorithme.

L’étalonnage et la traçabilité. La précision de votre baromètre DIY dépend de l’étalonnage en usine du circuit intégré, de la disposition de votre PCB (le routage des pistes à proximité du capteur peut introduire des gradients thermiques) et de la qualité de l’alimentation (le bruit sur VCC affecte les lectures de l’ADC). Dès la sortie de la boîte, une carte breakout MS5611 fournit une précision de ±1,5 mbar dans des conditions idéales. Mais vous n’avez aucun certificat pour le prouver. Pour beaucoup d’applications d’ingénierie et de laboratoire, « ça lit environ 101,3 kPa » ne suffit pas; vous avez besoin d’un énoncé de précision appuyé par un étalonnage traçable. Si votre client, votre système qualité ou votre cadre réglementaire exige une traçabilité ISO 17025, votre baromètre DIY ne peut pas la fournir.

La fiabilité à long terme. Les broches exposées s’oxydent. Les connexions sur plaque d’essai développent des défauts de contact intermittents. Les adaptateurs USB-série (surtout les clones bon marché basés sur le CH340) sont connus pour perdre des données lors d’un enregistrement soutenu. La carte breakout BMP390 d’Adafruit est bien faite, mais elle a été conçue pour le prototypage, pas pour une installation permanente dans un environnement où elle tournera sans surveillance pendant des mois. Ce n’est pas un défaut du produit, c’est une différence d’usage prévu.

Le vrai coût d’un baromètre USB DIY

Voici un bilan honnête de ce que coûte la transformation d’un prototype fonctionnel sur plaque d’essai en un baromètre USB déployable. Les heures d’ingénierie supposent un ingénieur compétent qui a déjà fait ce type de travail.

Élément Coût
Carte breakout BMP390 ou MS5611 6 – 12 $
Microcontrôleur (Arduino Nano, ESP32, etc.) 8 – 20 $
Câble USB, connecteurs, composants passifs 3 – 5 $
Boîtier (impression 3D ou boîte de projet) 5 – 15 $
PCB sur mesure (optionnel, par unité en petite série) 15 – 50 $
Sous-total : matériel 37 – 102 $
Développement et débogage du firmware 4 – 12 heures
Conception et itération du boîtier 2 – 6 heures
Tests et validation 2 – 4 heures
Code d’intégration port série (Python, LabVIEW, etc.) 2 – 6 heures
Sous-total : temps d’ingénierie 10 – 28 heures

Si votre temps d’ingénierie coûte 50 $/heure (conservateur pour un ingénieur professionnel), la composante main-d’œuvre seule représente 500 à 1 400 $. Le coût total du baromètre DIY n’est donc pas de 25 $: il est de 537 à 1 502 $, selon le nombre de problèmes rencontrés et le niveau de finition requis.

Et ce calcul n’inclut pas le coût de la maintenance continue : les mises à jour du firmware quand la chaîne d’outils Arduino change, le remplacement des composants qui tombent en panne, ou le temps passé à diagnostiquer pourquoi les lectures ont dérivé après six mois de fonctionnement continu.

Ce que vous obtenez pour 158 $

Le Dracal BAR20 utilise le même circuit intégré MS5611 que l’on retrouve sur la plupart des cartes breakout populaires. Il intègre le capteur, un ADC ΔΣ 24 bits, la compensation en température (y compris l’algorithme complet du second ordre), la communication USB et un boîtier robuste dans une clé USB de 62 × 20 × 10 mm. Chaque unité est individuellement calibrée en usine, et des certificats de traçabilité ISO 17025 sont disponibles sur demande.

Côté logiciel, le BAR20 est livré avec des outils gratuits qui éliminent entièrement le problème d’analyse du flux série. L’outil en ligne de commande (dracal-usb-get) retourne la mesure sous forme d’un simple nombre. L’API REST JSON expose les données du capteur via HTTP pour l’intégration web ou applicative. DracalView fournit la visualisation graphique, la journalisation et la conversion d’unités via une interface graphique. Des exemples de code sont disponibles en Python, C, C++, C#, Java, Node.js, LabVIEW, et plus encore. Ces outils fonctionnent sous Windows, macOS et Linux.

La variante BAR20-CAL ajoute un mécanisme d’étalonnage utilisateur en 3 points, où les décalages de calibration sont stockés directement sur l’appareil, et non pas sur votre PC. Vous pouvez ainsi déplacer l’instrument d’un ordinateur à l’autre sans perdre votre étalonnage.

Autrement dit, les 158 $ incluent le capteur, l’électronique, le boîtier, le firmware, le logiciel, l’étalonnage et le soutien technique. Les heures que vous auriez passées à construire, déboguer et maintenir une solution DIY peuvent être consacrées à ce que le baromètre était censé servir en premier lieu.

Quand le construire soi-même reste pertinent

Il existe des raisons légitimes d’emprunter la voie du DIY, et cet article serait incomplet sans les reconnaître.

L’apprentissage. Si l’objectif est de comprendre le fonctionnement des capteurs barométriques MEMS, le comportement des protocoles I2C et SPI, ou la mise en œuvre des algorithmes de compensation en température, construire un baromètre à partir d’une carte breakout est un excellent exercice. La fiche technique du MS5611 (TE Connectivity AN520) est un cours magistral en mathématiques de compensation de capteurs. La valeur éducative est réelle, et elle ne peut pas être remplacée par l’achat d’un produit fini.

Les formats non standard. Si votre baromètre doit s’intégrer dans un boîtier spécifique qu’aucun produit commercial ne peut accommoder — par exemple un tube étroit, un châssis de drone sur mesure ou une chambre scellée avec passage étanche — alors un PCB sur mesure construit autour du circuit intégré nu est peut-être la bonne approche. 

Le volume important. Si vous avez besoin de 10 000 unités d’un baromètre intégré dans un produit que vous fabriquez, concevoir une carte sur mesure autour du BMP390 ou du MS5611 ramènera le coût unitaire bien en dessous de 158 $. À cette échelle, le coût d’ingénierie est amorti sur le volume de production et l’analyse change fondamentalement. (Cela dit, Dracal offre également des options d’intégration OEM pour les applications en volume.)

Les spécifications qui n’existent pas sur le marché. Si vous avez besoin d’un capteur barométrique avec un taux d’échantillonnage spécifique, une résolution ADC particulière ou une configuration physique qu’aucun produit commercial ne propose, vous n’avez pas d’autre choix que de le construire.

Pour tous les autres, i.e. pour l’ingénieur qui a besoin d’une lecture fiable et calibrée de la pression atmosphérique sur un PC pour un laboratoire, un système de test ou une application de surveillance, l’analyse acheter-ou-construire penche fortement du côté de l’achat.

 

Et si j’ai aussi besoin de la température et de l’humidité?

Le BAR20 mesure uniquement la pression atmosphérique. Si votre projet nécessite également la mesure de la température et de l’humidité relative en plus de la pression, le Dracal PTH450 combine ces trois paramètres dans le même format USB, avec la même interface CLI, la même API et le même logiciel gratuit. Pour les ingénieurs qui prévoyaient de construire un capteur USB multiparamétrique autour d’une combinaison BME280 ou BMP390 + SHT35, le PTH450 élimine tout le défi de l’intégration.

BAR20 de Dracal et autres capteurs

Le Dracal BAR20 est un baromètre USB prêt à l’emploi qui offre une alternative simple à la construction d’un capteur de pression atmosphérique personnalisé avec un microcontrôleur et une carte de dérivation série. Il est compatible avec Windows, macOS et Linux, et s’intègre à n’importe quel environnement logiciel grâce à son interface CLI, son port COM virtuel ou son API REST JSON.

Toujours offert gratuitement avec nos produits!

 

FACILE À INTÉGRER DANS VOTRE PROPRE SYSTÈME

 

LOGICIEL GRATUIT DE VISUALISATION, JOURNALISATION ET CALIBRATION
  • Prêt à l’emploi en moins de 3 minutes
  • Fonctionne sous Windows, Mac OS X et Linux
  • Graphique et enregistrement des données en temps réel
  • Intervalle d’enregistrement jusqu’à 0,5 seconde et unités configurables (°C, °F, K…)
  • Prise en charge simultanée d’un nombre illimité de capteurs Dracal
  • Calibration par utilisateur simplifiée (pour les produits avec l’option -CAL)
  • Connectivité avec la passerelle Wi-Fi/Ethernet SensGate

 

DES PRODUITS DIGNES DE CONFIANCE

Approuvés par des ingénieurs, des scientifiques et des chercheurs du monde entier

Partout dans le monde, des milliers d’entreprises se fient à nos produits:

Votre projet pourrait-il bénéficier des solutions Dracal?

Parlez-nous-en, et nous déterminerons rapidement ensemble si c’est la solution qu’il vous faut.

"*" indicates required fields

Nom complet*

Notre travail est de simplifier votre travail.

 

Découvrez nos produits