Projet de redessinage Vectorscope KiCad | Hackaday

Quand j’ai vu le badge Supercon Vectorscope de cette année, j’ai décidé que je devais en construire un pour moi-même. Comme je ne pouvais pas y assister en personne, j’ai immédiatement commandé les PCB et les pièces. Notant que le référentiel GitHub ne contenait que le fichier KiCad PCB et non les schémas et le fichier de projet associés, j’ai supposé que c’était parce que tout le monde était pressé pendant les jours précédant le week-end Supercon. Cependant, j’ai appris plus tard qu’il n’y avait pas vraiment de projet KiCad : la conception originale avait été réalisée dans Circuit Maker et le PCB avait été converti en KiCad. J’ai pensé : « à quel point cela peut-il être difficile ? » et j’ai décidé de m’essayer à la réalisation du projet KiCad.

Heureusement, je n’ai pas eu à repartir de zéro. Les schémas du PCB ont été fournis, mais uniquement sous forme de fichiers image. Ils sont bien présentés et ne souffrent heureusement pas du fléau de nombreux schémas de nos jours – des « listes d’accès visuelles » qui ne sont ni de bons schémas ni des listes d’accès utiles. Au contraire, ces schémas, bien qu’ayant un flux de haut en bas légèrement peu orthodoxe, sont un exemple de bonne conception schématique.

Lignes graphiques vers les traces de PCB

La première chose que j’ai examinée était les fonctionnalités du fichier PCB, car j’espérais extraire les noms de réseau des traces. Malheureusement, lorsque j’ai regardé les traces, il ne s’agissait que de lignes graphiques. Grâce à mes recherches précédentes sur les forums d’utilisateurs de KiCad, je savais que revenir en arrière d’un PCB à un schéma était un flux de travail non naturel. Mais j’ai été surpris que dans les versions récentes de KiCad (j’utilise la v7), il existe une fonctionnalité permettant de convertir les lignes graphiques en traces.

Une bizarrerie non évidente à prendre en compte : cette opération duplique les lignes graphiques sélectionnées avant de les convertir en traces, ce qui entraîne des éléments qui se chevauchent. Cela peut prêter à confusion, car la trace nouvellement créée est présentée par PCBNEW comme se trouvant sous la ligne graphique d’origine, donnant l’impression que la conversion a échoué. La solution consiste à supprimer immédiatement les éléments sélectionnés et les pistes converties resteront. Vous pouvez le faire sur un tableau entier à la fois en désactivant tout sauf les éléments graphiques dans le filtre de sélection et en sélectionnant simplement un calque entier pour la conversion.

Empreintes de pièces

Lors de la conception d’un PCB, la tâche consistant à mapper les symboles schématiques dans leurs empreintes physiques correspondantes peut s’avérer fastidieuse. La plupart des outils de CAO modernes, avec leurs schémas de gestion des pièces correspondants, rendent ce processus plus facile que jamais, mais cela peut toujours s’avérer un casse-tête lorsque vous utilisez des pièces qui ne figurent pas dans les bibliothèques. Nous revenons en arrière dans cette conception, donc je n’étais pas vraiment sûr des problèmes qui pourraient exister. Mais un rapide coup d’œil au fichier PCB montre que les pièces sur la carte sont en réalité des empreintes de pas. Cela semble prometteur, passons donc à la réalisation des schémas.

Génération automatique de schémas ?

Le flux de conception habituel va des schémas au PCB, que vous utilisiez un outil de CAO ou que vous fassiez tout à la main. Les modifications apportées à un schéma sont reflétées sur la disposition du PCB. Les outils modernes de CAO de PCB peuvent mettre à jour automatiquement une conception de PCB à partir des schémas, en mettant à jour la liste réseau et en ajoutant et/ou supprimant des pièces selon les besoins. Ces outils tentent même de placer de nouvelles pièces pour vous. Même s’il ne s’agit que d’un groupe confus d’empreintes, c’est plus facile que d’ajouter chaque partie manuellement. Mais pouvez-vous aller dans l’autre sens ?

Il existe également des processus établis de longue date pour aller dans l’autre sens, du PCB aux schémas, qui existent depuis plus longtemps que les outils de CAO informatisés. La plus courante d’entre elles est peut-être l’annotation rappelée. Une fois la configuration terminée, le concepteur réordonnera les indicateurs de référence sur la carte afin qu’ils apparaissent dans un certain ordre et soient faciles à trouver par les personnes travaillant sur le PCB. Nous sautons souvent cette étape pour les types de petites cartes que les gens fabriquent aujourd’hui, mais si vous créez une conception Eurocard 9U d’un carré d’environ 350 mm, vous devez vraiment re-séquencer les désignateurs de référence et annoter le schéma.

Exemples de portes et d’entrées multiples

Un autre exemple de ce flux inverse est l’échange de portes, ainsi nommé parce qu’il était très courant dans les anciennes conceptions utilisant des puces logiques TTL de la série 74. Ces puces ont plusieurs portes par puce, des portes logiques uniques avec plusieurs entrées, ou les deux. Heureusement, les outils de CAO tels que KiCad proposent également ces fonctionnalités.

Mais nous sommes à l’opposé de la situation normale « avoir un schéma et vouloir remplir un nouveau PCB vierge ». Puis-je demander à KiCad de remplir de la même manière un schéma à partir d’un PCB existant, aussi laid et désorganisé soit-il ? Conceptuellement, cela ne semble pas exagéré, compte tenu des capacités existantes de KiCad. Mais en pratique, la réponse est non.

Faire des schémas

Sans surprise, j’ai dû redessiner ces schémas à partir de zéro. Heureusement, ce projet ne comporte pas beaucoup de pièces et beaucoup de ces pièces sont standard et se trouvent dans KiCad ou dans mes propres bibliothèques. Muni de la documentation originale, j’ai procédé au dessin des schémas dans KiCad. Plutôt que de faire une copie exacte des schémas existants, j’ai décidé de réorganiser le flux du circuit dans la direction plus familière de gauche à droite.

J’ai commencé avec uniquement les puces et composants principaux, en ignorant au début les connexions et les composants discrets. Certaines pièces ne figuraient pas dans mes bibliothèques et ont dû être construites dans l’éditeur de symboles KiCad. Je commence normalement avec une grande feuille schématique, sachant que la page peut toujours être redimensionnée plus tard si nécessaire (j’ai deviné A3, ce qui s’est avéré correct). Avec toutes les puces sur la page, vous devez déplacer les éléments jusqu’à ce que le flux visuel sur la page décrive le flux logique réel de la conception. Semblable au placement de composants sur une nouvelle configuration de PCB, il n’existe pas de processus clair pour placer des symboles schématiques sur une page vierge. Mais voici quelques concepts généraux que j’ai appris au fil des années et que je trouve utiles :

  1. Prenez du recul par rapport aux circuits et considérez les entrées, les sorties et les fonctionnalités de la conception globale comme s’il s’agissait d’une boîte noire.
  2. Le flux va de gauche à droite, les entrées à gauche, les sorties à droite.
  3. Les connecteurs se placent sur les bords de la feuille, ou pour les grands designs, placez tous les connecteurs sur la page 1.
  4. Regroupez les circuits par fonction sur la page, ou pour les grandes conceptions, dans des feuilles hiérarchiques.
  5. Évitez autant que possible les connexions cachées contenant uniquement le nom du signal (celles sans fil) – essayez de disposer les pièces de manière à ce que toutes les broches puissent être connectées par des fils.
  6. Utilisez des bus de signaux le cas échéant et lorsque cela facilite le flux visuel du circuit.

Il existe de nombreuses exceptions et contradictions dans ces lignes directrices. Et la qualité des résultats peut être subjective : pour le même circuit, deux ingénieurs différents pourraient tous deux préparer deux schémas différents mais bons.

Connaissez vos outils, modifiez vos symboles

Si vous avez déjà dessiné un circuit sur papier, vous créez généralement des puces à partir d’un rectangle vide, puis ajoutez des signaux là où ils sont nécessaires pour faire circuler les choses. Pour de nombreuses puces, comme un verrou 8 bits, la disposition logique de votre circuit correspond aux diagrammes de symboles standard fournis par le fabricant et/ou vos bibliothèques d’outils de CAO. Mais c’est loin d’être universel, surtout lorsqu’il s’agit de puces complexes comme les microprocesseurs ou les FPGA.

Ajustement du symbole schématique Pico

N’hésitez pas à modifier les symboles schématiques pour qu’ils correspondent à vos besoins si nécessaire (en veillant à utiliser une copie du symbole spécifique au projet local). N’oubliez pas la fonctionnalité plusieurs portes par IC de votre outil EDA, comme un inverseur hexagonal ou un comparateur quadruple. Cela peut être utilisé pour diviser les gros copeaux en morceaux plus petits et gérables. Ceci est souvent utilisé pour séparer les broches d’alimentation des grosses puces en symboles distincts. Mais vous pouvez subdiviser davantage la puce en symboles plus petits selon les besoins du flux de signal global de votre conception.

Mais le réglage le plus utile consiste probablement à réorganiser simplement l’emplacement des broches sur le symbole et sa taille pour mieux correspondre à votre circuit. Considérez le symbole schématique d’un module Raspberry Pi Pico, qui est disposé selon un modèle familier par numéro GPIO. Ensuite se trouve le même module Pico après avoir été modifié pour s’adapter aux schémas redessinés du Vectorscope.

Conclure

Il y a eu quelques problèmes entre les schémas d’origine et la disposition du PCB, mais ceux-ci ont été résolus. Certaines empreintes de pièces sur le PCB ne sont pas des empreintes après tout. Au lieu de cela, ils apparaissent comme un ensemble de pads indépendants. Et certaines pièces présentent un écart entre le modèle du PCB et les pièces achetées auprès de la nomenclature.

Seuls quelques-uns des réseaux du schéma original ont des noms, et les autres sont simplement vierges. Dans les schémas, j’ai essayé de choisir des noms de réseau raisonnables pour les réseaux. Je pense que cela sera utile lorsque j’établirai éventuellement la connexion entre les schémas et le PCB.

À ce stade, j’ai terminé ce que je voulais au début : créer un schéma KiCad pour le projet Vectorscope. Le projet KiCad n’est pas cohérent à 100 %, mais j’ai fouillé les quelques pièces manquantes et résoudre ces problèmes ne demandera pas un énorme effort. Ces problèmes sont expliqués dans le lis-moi du référentiel GitHub du projet.

François Zipponi
Je suis François Zipponi, éditorialiste pour le site 10-raisons.fr. J'ai commencé ma carrière de journaliste en 2004, et j'ai travaillé pour plusieurs médias français, dont le Monde et Libération. En 2016, j'ai rejoint 10-raisons.fr, un site innovant proposant des articles sous la forme « 10 raisons de... ». En tant qu'éditorialiste, je me suis engagé à fournir un contenu original et pertinent, abordant des sujets variés tels que la politique, l'économie, les sciences, l'histoire, etc. Je m'efforce de toujours traiter les sujets de façon objective et impartiale. Mes articles sont régulièrement partagés sur les réseaux sociaux et j'interviens dans des conférences et des tables rondes autour des thèmes abordés sur 10-raisons.fr.