[3/3] Du hardware au cloud : Concevoir un PCB

Dans l' article précédent , j'ai décrit le test réalisé avec le capteur magnétique MMC5883MA et expliqué les résultats obtenus en mesurant le champ magnétique avec et sans la présence d'un véhicule. Cependant, avant de tester les autres capteurs (comme je l'avais prévu auparavant), j'ai décidé de me lancer dans un défi auquel tout développeur de matériel doit être confronté à un moment donné : concevoir et produire une carte de circuit imprimé (PCB) .

Les maquettes sont des outils fondamentaux pour le prototypage matériel. Ils nous permettent de modifier et de tester la conception du circuit autant de fois que nécessaire, jusqu'à obtenir la meilleure composition. Malgré cela, ces types de circuits ne sont pas destinés à élaborer des produits finaux. Les connexions électriques fournies par les maquettes sont temporaires par nature, ce qui signifie qu'elles sont faibles et peu fiables. De plus, ils ont tendance à occuper plus d’espace que ce dont ils ont réellement besoin.

En utilisant des PCB, nous sommes en mesure de mettre en œuvre la conception finale d'un projet matériel avec des connexions fiables et une plus grande robustesse, en plus de réduire l'espace nécessaire en permettant l'utilisation de composants plus petits, qui sont généralement de technologie de montage en surface (SMT) .

Aujourd'hui, il existe une grande variété de logiciels destinés à la conception de PCB . J'ai décidé d'utiliser Eagle , qui est l'un des plus populaires. Le prototype à implémenter dans le PCB est basé sur le circuit construit dans l' article précédent , conçu pour tester le capteur magnétique MMC5883MA . Néanmoins, à cette occasion, j'ai utilisé la SODAQ ONE à la place du NodeMCU ESP8266 , dans le but de tester facilement le capteur magnétique LSM303AGR , actuellement intégré sur cette carte.

De plus, j'avais auparavant acheté un capteur infrarouge en saillie, de IS31SE5000 , que je n'avais pas pu tester auparavant sur le prototype breadboard en raison de son packaging. J'ai donc voulu profiter de cette conception et inclure également le circuit d'application typique de ce capteur infrarouge, afin de pouvoir tester son comportement et évaluer sa capacité de détection de véhicules.

En bref, pour cette étape du projet, je souhaitais intégrer les trois capteurs mentionnés dans un simple PCB et pouvoir transmettre ses mesures via LoRaWAN à l'aide du RN2903 , également intégré sur la carte SODAQ ONE. De plus, j'ai trouvé approprié d'ajouter un étage de régulation de puissance pour réguler la tension d'entrée et protéger les composants.

Diagramme de blocs

Il convient de mentionner que le PCB est destiné à utiliser un capteur à la fois. Pour y parvenir, une « logique de sélection de capteur » est ajoutée à la conception, qui consiste en un connecteur mâle à une seule rangée avec 6 broches et deux cavaliers, pour sélectionner les entrées SCL et SDA pour le port I2C de la carte SODAQ. De plus, un commutateur DIP a été ajouté pour désactiver l'alimentation du capteur inutilisé, afin de consommer moins d'énergie. Le schéma fonctionnel qui décrit la composition du circuit est présenté ci-dessous.

L'étage de régulation de puissance est basé sur le régulateur de tension LM317T . Le circuit a été construit à l'aide de la fiche technique du LM317 et configuré pour fournir 3,3 V, la tension nécessaire au SODAQ et aux capteurs.

Aigle

Eagle est un logiciel d'automatisation de la conception électronique (EDA), optimisé par Autodesk, qui fournit des outils utiles et intuitifs pour concevoir des PCB. De plus, il dispose d’une énorme communauté dans le monde entier, ce qui implique que vous pouvez facilement trouver de la documentation et des exemples, ainsi que des réponses aux questions.

Une conception dans Eagle peut être divisée en deux parties principales : le schéma et la disposition du PCB. Le schéma est la partie où les composants du circuit sont sélectionnés et les connexions entre eux sont établies. La disposition des PCB fait référence à la distribution et au placement physique des composants.

Avant d'expliquer comment le schéma et la disposition du PCB de mon projet ont été réalisés, il est nécessaire d'expliquer l'un des concepts les plus importants de la conception Eagle : les bibliothèques.

Bibliothèques

Une bibliothèque est la représentation complète d'un composant électronique dans Eagle. Il contient toutes ses informations, des noms des broches aux mesures physiques. Si vous souhaitez utiliser un composant dans un projet Eagle, il est obligatoire d'avoir la bibliothèque pour ce composant. Par défaut, Eagle inclut une grande quantité de bibliothèques des composants les plus couramment utilisés dans les circuits. Cependant, à un moment donné, vous pourriez avoir besoin d'un composant qui n'est pas inclus. Dans ce cas, deux options s'offrent à vous : rechercher la bibliothèque du composant (il en existe une grande variété sur internet grâce à la communauté Eagle) ou la créer vous-même.

Dans mon cas, j'ai dû utiliser trois composants spécifiques qui n'étaient pas inclus dans les bibliothèques Eagle : les deux capteurs et la carte SODAQ ONE. Après quelques recherches infructueuses, j'ai décidé de les créer moi-même. Pour créer une bibliothèque, il vous suffit d'aller dans le panneau de configuration d'Eagle et de cliquer sur le menu « Fichier », suivi de « Nouveau » puis de « Bibliothèque ».

Une nouvelle fenêtre s'ouvrira. Vous y trouverez quatre espaces nommés Appareil, Empreinte, Package 3D et Symbole. La première étape consiste à créer un " Symbole ", c'est-à-dire le diagramme symbolique qui représentera l'appareil dans le schéma. Pour cela, cliquez sur le bouton « Ajouter un symbole... », ou sur l'icône en haut marquée du « 1 » dans l'image ci-dessous.

Il faut ensuite créer une " Footprint ", qui correspond à la représentation du dispositif physique, et doit avoir les dimensions précises du composant ainsi que la bonne répartition des broches. Cela peut être fait en cliquant sur le bouton « Ajouter une empreinte... » en bas, ou sur l'icône en haut marquée « 2 » sur l'image ci-dessous.

La dernière étape consiste à ajouter un « Appareil ». Cet élément est une fusion entre le Symbole et l'Empreinte, où il faut préciser quelles parties du Symbole correspondent à quelle partie physique de l'appareil. Pour cela, cliquez sur le bouton « Ajouter un appareil... » ou en cliquant sur l'icône en haut marquée du « 3 ».

L'aperçu des résultats est affiché sur le panneau de droite de la fenêtre. Dans mon cas, comme la carte SODAQ avait des headers mâles dans ses pins afin de pouvoir être facilement placée sur une breadboard, la création de la librairie pour le SODAQ ONE a été très simple car il m'a suffi d'ajouter deux headers femelles de 12 pins chacun ( Je voulais que la carte SODAQ soit amovible). Quelque chose de similaire s'est produit avec le capteur magnétique, car j'ai acheté la carte d'évaluation MMC5883MA-B, qui possède également des connecteurs mâles.

Néanmoins, le développement de la bibliothèque pour le capteur infrarouge a été très difficile pour moi car je n'avais jamais travaillé avec des composants surfaciques. Il s’agit d’un très petit composant et je devais être extrêmement précis quant aux tailles et aux distances.

Après quelques heures de travail, voici les bibliothèques résultantes :

  • SODAQ UN :
  • Capteur magnétique (carte d'évaluation) MMC5883MA-B :

  • Capteur infrarouge IS31SE5000 :

Il est important de noter que les bibliothèques créées par l'utilisateur se trouvent dans le menu Bibliothèques/bibliothèques du panneau de gauche du panneau de configuration d'Eagle.

Schématique

Après avoir préparé toutes les bibliothèques nécessaires, il est temps d'intégrer les composants dans un schéma. Pour créer un nouveau schéma, allez dans le panneau de configuration d'Eagle et cliquez sur le menu « Fichier », puis « Nouveau » et après « Schéma ».

Dans la fenêtre du schéma, pour ajouter un composant allez dans la barre d'outils (généralement à gauche), utilisez l'outil " Ajouter une pièce " en cliquant sur l'icône marquée " 1 " dans l'image ci-dessous. Pour réaliser les connexions entre les broches des composants, utilisez l'outil « Net » en cliquant sur l'icône marquée « 2 ».

Après avoir ajouté tous les composants de ma conception et effectué les connexions respectives, voici le résultat :

PCB

Après avoir terminé le schéma, l'étape suivante consiste à créer un nouveau " Board ". Pour ce faire, cliquez sur l'icône " Générer/passer à la carte " en haut de la fenêtre du schéma (marquée du carré rouge sur l'image ci-dessous).

Cela ouvrira une nouvelle fenêtre, où vous trouverez tous les composants utilisés dans le schéma, avec de petites lignes les reliant qui représentent les connexions établies dans le schéma. Vous trouverez également un espace vide qui représente la carte physique du PCB. Tous les composants doivent être organisés et répartis au mieux sur cet espace vide. Ensuite, les petites lignes doivent être converties en routes, qui sont les connexions physiques entre les composants du PCB. Pour acheminer le circuit, il est nécessaire d'utiliser l'outil " Route Airwire ", qui se trouve dans le panneau de gauche.

Il est important de mentionner que le routage peut être réalisé en une ou plusieurs couches. De plus, de nombreux paramètres doivent être gardés à l'esprit lorsque vous êtes à cette étape de la conception du PCB. Certains d'entre eux sont : l'épaisseur des routages, la distance minimale entre les composants, la distance minimale entre les routages consécutifs, la largeur des trous, etc. Tous ces paramètres de conception doivent être pris en charge par le fabricant de PCB que vous choisissez. Enfin et surtout, vous devez être très prudent avec le calque que vous utilisez.

Après quelques heures de travail supplémentaire, j'ai atteint mon objectif de router tous mes composants en une seule couche. Comme je travaillais avec un composant superficiel, j'ai dû le mettre sur la même couche des itinéraires. Voici le résultat :

Fichiers Gerber

La dernière étape pour produire un PCB consiste à envoyer la conception à fabriquer. Bien qu'il soit également possible d'imprimer le circuit soi-même, dans ce cas, je voulais le faire de manière plus professionnelle, j'ai donc cherché des fabricants locaux. Pour pouvoir envoyer votre conception, vous devez générer les fichiers Gerber de votre circuit. Pour apprendre à faire, j'ai suivi ce tutoriel. Après avoir exporté les fichiers correspondants, je les ai envoyés au constructeur.

Quelques jours plus tard, j'ai reçu six exemplaires de mon PCB. Je dois admettre que j'étais très excité de voir que ce que j'avais créé prenait vie lentement. Honnêtement, ces avancées sont celles qui pourraient vous motiver le plus lorsque vous réalisez un projet matériel à partir de zéro.

J'avais hâte de prouver si ma conception était correcte et si le circuit fonctionnerait ou non. Alors, sans plus attendre, j'ai commencé à souder tous les composants. Malheureusement, alors que je m'apprêtais à souder le capteur infrarouge (la partie la plus difficile), je me suis rendu compte que j'avais commis une erreur avec le Footprint : les broches étaient inversées. J'étais préoccupé par mon erreur mais je savais que cette première expérience avec des composants surfacés m'aiderait beaucoup dans les conceptions futures. Voici à quoi ressemblait le PCB une fois que j'ai fini de souder les composants :

Enfin, j'étais prêt à tester le reste du circuit. J'ai donc ajouté une batterie et allumé ma gateway . Au bout de quelques secondes, je recevais les données des mesures du champ magnétique sur mon compte Ubidots ! Cela signifiait que le comportement du PCB était comme prévu.

La conception de PCB est un vaste monde où les techniques, les logiciels et les outils sont améliorés chaque jour. Dans cet article, j'ai essayé de décrire le processus de base pour faire passer votre circuit du prototype au PCB, mais il reste encore un long chemin à parcourir. J'espère que mon expérience pourra devenir un guide pour ceux qui débutent. Cependant, le plus important est de ne pas abandonner à la première erreur et de ne pas cesser d'explorer et d'améliorer vos capacités pour produire des circuits de mieux en mieux.

Restez attentif aux prochains posts pour connaître la suite du processus !