Définition et gestion des règles de conception
La boîte de dialogue PCB Rules and Constraints Editor est accessible en choisissant la commande Design » Rules dans les menus principaux.
La commande Rules n’apparaît pas dans le menu Design ? Vérifiez si la boîte de dialogue PCB Rules and Constraints Editor est disponible – en savoir plus.
La boîte de dialogue PCB Rules and Constraints Editor comporte deux sections :
-
L’arborescence de gauche répertorie les différentes catégories de règles. Développez une catégorie pour afficher les types de règles individuels disponibles. Développez un type de règle pour afficher toutes les règles de ce type actuellement définies.
Consultez la page PCB Design Rule Types et ses sous-pages pour plus d’informations sur les types de règles disponibles et leurs contraintes.
-
La partie droite de la boîte de dialogue présente des informations en fonction de l’élément actuellement sélectionné dans l’arborescence : soit un résumé des règles définies du type ou de la catégorie sélectionné(e), soit toutes les règles définies pour l’ensemble du système, soit, si une règle précise est sélectionnée, les contraintes de cette règle.
-
Cliquez sur le dossier racine pour accéder, dans la zone principale d’édition de la boîte de dialogue, à une liste récapitulative de toutes les règles spécifiques qui ont été définies pour tous les types de règles de conception dans toutes les catégories.
-
Cliquez sur un dossier de catégorie pour accéder à une liste récapitulative de toutes les règles spécifiques qui ont été définies pour tous les types de règles de conception associés à cette catégorie.
-
Cliquez sur un dossier de type de règle pour accéder à une liste récapitulative de toutes les règles spécifiques qui ont été définies pour ce type.
Dans une liste récapitulative, chaque règle est indiquée selon les éléments suivants :
-
Name - le nom de la règle.
-
Priority - la priorité actuelle de la règle.
-
Enabled - si la règle est actuellement activée ou désactivée (cliquez pour basculer cet état). Une règle désactivée apparaîtra grisée dans une liste récapitulative.
-
Type - le type de règle.
-
Category - la catégorie de règle à laquelle elle appartient.
-
Scope - la portée de la règle (c’est-à-dire à quel(s) objet(s) elle s’applique).
-
Attributes - les attributs de contrainte qui ont été définis pour la règle.
Cliquez sur l’entrée d’une règle spécifique dans le panneau d’arborescence des dossiers (ou double-cliquez sur son entrée dans une liste récapitulative) pour accéder aux contrôles permettant de gérer sa définition :
-
Name - le nom actuel de la règle. Il peut être modifié selon les besoins.
-
Comment - ce champ affiche tout commentaire ajouté à la règle, par exemple une description explicite de l’usage de la règle.
-
Unique ID - l’identifiant unique de la règle. Chaque règle est elle-même un objet de conception, et donc un élément de données tangible. L’utilisation d’un ID garantit son unicité. Là où l’ID unique prend toute son importance, c’est pour une règle créée dans le domaine schématique. Lors de l’ajout de paramètres de règle de conception à des objets dans un schéma, un ID unique est attribué à chaque paramètre de règle. Les mêmes ID sont attribués aux règles de conception correspondantes créées dans le PCB. Grâce à cet ID unique, les contraintes d’une règle peuvent être modifiées côté schéma ou côté PCB, puis les changements propagés lors de la synchronisation.
-
Test Queries - cliquez pour ouvrir la boîte de dialogue Test Queries Result dialog, qui affiche le nombre d’objets affectés par la règle en tenant compte des spécialisations de règle que vous avez définies. Cela vous permet de voir s’il existe des objets qui répondent à la requête et également de vérifier que l’ensemble des objets affectés par les filtres et les règles correspond bien à ce que vous souhaitez.
-
Rule Scoping Controls - cette zone fournit des contrôles permettant de déterminer la portée de la règle en termes d’objets auxquels elle s’applique ou entre lesquels elle s’applique.
-
Constraints - cette zone de la boîte de dialogue présente les contraintes applicables au type de règle en cours de modification. Utilisez les différents contrôles pour configurer ces contraintes selon les besoins. Appuyez sur F1 au-dessus de la zone des contraintes pour accéder à une page correspondant à ce type de règle, dans la section PCB Design Rule Types de la documentation.

La boîte de dialogue PCB Rules and Constraints Editor – le centre de commande pour la gestion des règles de conception.
-
Le moteur de recherche de la boîte de dialogue permet de l’utiliser dans un mode de recherche simple en saisissant le ou les mots-clés Name, Type, Category ou Attribute appropriés dans le champ principal Search .
-
Cliquez sur le bouton Switch to Document View en bas de la boîte de dialogue pour ouvrir le Constraints Editor, qui est un document de règles interactif.
Passer en revue les règles de conception
La nouvelle carte créée par défaut par le logiciel inclura des règles qui ne sont pas nécessaires dans toutes les conceptions, et de nombreuses autres règles de conception devront être ajustées pour répondre aux exigences de votre conception. Pour cette raison, il est très important de passer en revue les règles de conception. Cela peut être fait dans le PCB Rules and Constraints Editor. Sélectionnez Design Rules en haut de l’arborescence à gauche, puis parcourez la colonne Attributes pour toutes les règles afin de repérer rapidement celles dont les valeurs doivent être ajustées.
Lorsque vous créez une nouvelle carte, elle inclut des règles de conception par défaut qui peuvent ne pas être nécessaires pour votre conception. Les règles redondantes peuvent être désactivées en cliquant sur l’entrée Design Rules ou sur une entrée de catégorie spécifique dans le PCB Rules and Constraints Editor et en désactivant les règles (décochez les cases dans la colonne Enabled).
La carte par défaut utilise également les unités impériales. Si votre carte utilise le système métrique, de nombreuses valeurs de règle, comme l’expansion du masque de soudure, passeront de valeurs arrondies comme 4mil à 0.102mm, ou la valeur par défaut de Minimum Solder Mask Sliver passera de 10mil à 0.254mm. Bien que ce chiffre le moins significatif, par exemple 0.002mm, soit négligeable lorsqu’il s’agit de générer les sorties, vous pouvez modifier ces paramètres dans les règles de conception si cela vous dérange.

Lors de l’examen des règles de conception, notez que l’ordre des colonnes peut être modifié si nécessaire.
Règles de conception par défaut
Lorsqu’un nouveau document PCB est créé, il inclut un certain nombre de règles par défaut, qui doivent exister pour assurer le bon fonctionnement du système de vérification des règles de conception. Si une règle par défaut est supprimée, elle est automatiquement recréée lorsque le PCB Rules and Constraints Editor est fermé. S’il existe des règles de conception que vous ne souhaitez pas utiliser, la bonne approche pour les gérer consiste à les désactiver.
Pour désactiver une règle, basculez l’option Enable correspondante pour cette règle dans l’une des listes récapitulatives situées à droite de la boîte de dialogue PCB Rules and Constraints Editor. Une règle désactivée apparaît « grisée ». Pour en savoir plus sur la désactivation des règles de conception.
Utilisez l’option Enable pour désactiver une règle dont vous n’avez pas besoin. Une règle désactivée apparaît « grisée ».
Les valeurs des règles par défaut sont définies en interne en mils et peuvent avoir des valeurs qui ne conviennent pas à vos conceptions. Pour utiliser vos propres règles et valeurs par défaut, vous pouvez :
-
créer et utiliser un modèle de projet, ou
-
créer un fichier de carte vide approprié avec les règles configurées selon vos besoins, puis faire une copie de la carte pour votre nouveau projet, ou
-
exporter votre ensemble de règles modèles vers un fichier de règles PCB (*.RUL), puis importer ces règles dans votre conception de carte actuelle. Pour en savoir plus sur l’exportation et l’importation des règles de conception.
Cliquez sur le bouton Create Default Rules pour régénérer l’ensemble par défaut des règles de conception pour le PCB. Si vous supprimez des règles, vous pouvez récupérer votre liste de règles par défaut en cliquant sur ce bouton. Si une règle par défaut a été modifiée, cela ne la réinitialisera pas et ne la remplacera pas.
Création d’une nouvelle règle
Pour ajouter une nouvelle règle de conception depuis la boîte de dialogue PCB Rules and Constraints Editor, accédez au type de règle requis et sélectionnez-le dans l’arborescence de gauche, puis cliquez sur le bouton New Rule sous la liste récapitulative des règles, ou faites un clic droit sur le type de règle requis puis sélectionnez New Rule dans le menu contextuel.
La nouvelle règle sera ajoutée à l’arborescence des dossiers et apparaîtra également dans la liste récapitulative de ce type de règle. Le nom de la règle apparaîtra en gras pour indiquer qu’elle est nouvelle et n’a pas encore été « appliquée ».

Exemple de création d’une nouvelle règle de conception PCB.
Lorsqu’une nouvelle règle est ajoutée, un nom par défaut lui est initialement attribué en fonction du type de règle concerné. Par exemple, si vous ajoutez une nouvelle règle Clearance, le nom par défaut sera Clearance. Si cette dénomination par défaut n’est pas modifiée, l’ajout d’une autre nouvelle règle du même type donnera le même nom de règle avec un suffixe numérique incrémenté (c.-à-d. Clearance_1, Clearance_2, etc.).
Lorsqu’une nouvelle règle est créée pour un type de règle particulier, elle reçoit automatiquement la priorité 1 (la priorité la plus élevée). Si d’autres règles de ce type existent, leurs priorités seront décalées (abaissées) d’un rang en conséquence. Elles sont alors considérées comme modifiées, même si elles n’ont pas été spécifiquement modifiées au niveau de la portée/des contraintes. Toutes ces règles existantes de ce type seront donc affichées comme modifiées (en gras avec un astérisque).
Pour accéder aux attributs de portée et de contrainte de la règle, cliquez soit sur l’entrée de la règle dans le volet d’arborescence des dossiers, soit double-cliquez sur son entrée dans une liste récapitulative. La fenêtre principale d’édition de la boîte de dialogue changera pour donner accès aux commandes permettant de définir les attributs de portée et de contrainte de cette règle.

Accès aux commandes détaillées de la règle, y compris la portée et les contraintes.
Pour définir complètement la nouvelle règle :
-
Donnez à la règle un nom explicite pour qu’elle soit identifiable.
-
Définissez la portée de la règle en sélectionnant des options de portée dans le(s) menu(s) déroulant(s), ou en saisissant une requête (ou des requêtes pour une règle binaire).
-
Définissez les contraintes de la règle.
-
Définissez la priorité de la règle.
Utilisation de l’assistant de règles pour créer une nouvelle règle
Une nouvelle règle peut également être créée à l’aide du Design Rule Wizard. L’accès se fait directement à l’aide de la commande Design » Rule Wizard ou en cliquant sur le bouton Rule Wizard en bas de la boîte de dialogue PCB Rules and Constraints Editor.
Le bouton Rule Wizard sera indisponible s’il existe des modifications apportées à des règles existantes qui n’ont pas encore été « appliquées ».
Utilisez les pages du Wizard pour créer une nouvelle règle de conception. Les étapes sont les suivantes :
-
Choisissez le type de règle requis et donnez-lui un nom explicite (et un commentaire si nécessaire).
-
Définissez la portée de la règle. Vous aurez la possibilité d’affiner davantage la portée grâce à une version du Query Builder intégrée à l’assistant.
-
Définissez la priorité de la règle.
Si l’option Launch main design rules dialog est activée sur la dernière page du Wizard, la boîte de dialogue PCB Rules and Constraints Editor s’ouvrira après avoir cliqué sur le bouton Finish. Cette boîte de dialogue peut être utilisée pour modifier les contraintes de votre règle nouvellement créée.

Utilisez le Design Rule Wizard pour simplifier la création de règles.
Duplication d’une règle existante
Pour créer rapidement une copie identique d’une règle existante, utilisez la fonction de duplication. Cette fonction est accessible de deux façons :
-
Utilisez l’arborescence de gauche pour accéder à la règle existante requise, faites un clic droit puis choisissez Duplicate Rule dans le menu contextuel.
-
Accédez au type de règle spécifique dans l’arborescence de gauche, sélectionnez la règle à dupliquer dans la liste récapitulative à droite, puis cliquez sur le bouton Duplicate Rule sous la liste.

Simplifiez la création de règles similaires à l’aide de la fonction de duplication de règle.
La règle dupliquée portera le même nom que l’originale, avec l’ajout d’un suffixe (par ex. _1) pour la distinguer. Sa définition (portée, contraintes, etc.) sera identique à celle de l’originale. En termes de priorité, elle recevra la priorité immédiatement inférieure à celle de la règle d’origine. Ainsi, par exemple, si la règle d’origine a la priorité 1, la copie recevra la priorité 2.
Création d’une règle depuis le panneau PCB Filter
Comme une règle de conception est définie pour s’appliquer à un ensemble cible d’objets de conception, il peut être plus simple (et plus rapide) d’identifier d’abord ces objets, puis de créer une règle de conception qui les cible. Le panneau PCB Filter permet de créer une règle de conception dont la portée utilise l’expression de requête actuellement définie dans le panneau. Ainsi, plutôt que d’avoir du mal à visualiser ce que votre expression de requête might cible, utilisez le panneau PCB Filter pour tester et ajuster une expression de requête jusqu’à ce que seuls les objets requis soient filtrés. En créant ensuite une règle qui utilise cette expression de requête, vous avez la garantie de cibler le bon ensemble d’objets.
Pour ajouter une nouvelle règle de conception :
-
Cliquez sur le bouton Create Rule. La boîte de dialogue Choose Design Rule Type apparaîtra. Cette boîte de dialogue répertorie chacune des catégories de règles et chacun des types de règles disponibles dans le document PCB.
-
Choisissez le type de règle à créer puis cliquez sur OK (ou double-cliquez directement sur l’entrée).
-
La boîte de dialogue PCB Rules and Constraints Editor apparaîtra. Une règle du type choisi est créée et la fenêtre principale d’édition de la règle s’affiche, prête à définir des contraintes spécifiques pour la règle. L’option de portée de la règle est définie sur Custom Query, et l’expression de requête du panneau PCB Filter est saisie en conséquence dans la zone de requête.
-
Modifiez le nom et les contraintes de la règle selon les besoins. Modifiez également sa priorité si nécessaire (elle recevra la priorité la plus élevée par défaut).

Créez une nouvelle règle de conception directement depuis le panneau PCB Filter – l’expression de requête du filtre est utilisée comme portée de la règle.
Réutilisation des expressions de requête précédentes
Au fil du temps, un certain nombre d’expressions de requête utiles seront créées lors du placement et du routage de différentes cartes. En général, vous souhaiterez appliquer et réappliquer les mêmes requêtes, non seulement dans la même conception mais aussi d’une conception à l’autre. Pour le permettre, le panneau PCB Filter prend en charge les notions d’Historical et de Favorite requêtes.
Lorsqu’une requête est saisie et appliquée depuis le panneau, elle est ajoutée à une « liste d’historique » des requêtes. En outre, cette requête peut être ajoutée à une « liste de favoris » des requêtes en cliquant sur le bouton Add To Favorites. Utilisez les boutons History et Favorites du panneau pour accéder aux onglets correspondants du même nom dans la boîte de dialogue Expression Manager afin de consulter ces listes.

Accédez à l’historique des expressions de requête appliquées et créez une liste d’expressions favorites à réutiliser encore et encore.
Pour utiliser une expression dans l’une ou l’autre liste, double-cliquez sur son entrée ou sélectionnez son entrée puis cliquez sur le bouton Apply Expression. La boîte de dialogue Expression Manager se fermera et l’expression sera chargée dans la zone Filter du panneau PCB Filter.
Cette fonctionnalité simplifie (et accélère) la création de règles avec la portée requise – récupérez une expression de requête de l’historique ou des favoris, vérifiez qu’elle cible toujours l’ensemble d’objets requis (appliquez le filtre), puis créez une règle qui utilise cette expression dans sa portée, comme détaillé dans la section précédente.
Définir la portée d’une règle de conception
L’éditeur PCB d’Altium Designer est un environnement piloté par des règles. Les exigences de conception sont appliquées au moyen d’un ensemble bien défini de règles de conception qui définissent collectivement les contraintes de la carte. Les règles de conception ciblent des objets spécifiques dans une conception. Pour que le système de règles PCB sache à quels objets une règle donnée s’applique, il doit connaître la portée de cette règle, c’est-à-dire l’étendue de son application. Le Scoping, ou ciblage de la règle, s’effectue dans la boîte de dialogue PCB Rules and Constraints Editor.
Les règles de conception par défaut, ou une nouvelle règle ajoutée, auront la portée par défaut All, ce qui signifie qu’elle s’appliquera à all objects sur la carte. À l’aide de la liste déroulante, une portée de règle simple peut être configurée rapidement.

Définissez la portée d’une règle de conception afin de définir son application aux objets de conception.
Plutôt que d’être limitée à une liste prédéfinie d’options de ciblage possibles, chaque règle de conception peut avoir une portée plus précise en écrivant ce qu’on appelle une Query.
Pour saisir une requête, réglez la première liste déroulante Where The Object Matches sur Custom Query. Elle affichera la requête actuellement utilisée par le moteur de règles pour cette règle en fonction des paramètres actuels des listes déroulantes.
Une requête est essentiellement une instruction au logiciel qui définit l’ensemble des objets de conception à cibler. Les requêtes sont écrites à l’aide de mots-clés de requête. De la même manière qu’une requête peut être écrite dans un panneau Filter pour trouver un ensemble spécifique d’objets, une requête peut également être écrite pour définir les objets ciblés par chaque règle. Par exemple :
InNet('VBAT') And OnLayer('Bottom Layer')
Si cette requête était utilisée comme portée pour une règle Width, chaque fois que vous routeriez le net VBAT et passeriez à la couche inférieure, la largeur de piste changerait automatiquement pour la largeur spécifiée dans les contraintes de cette règle. De plus, lors de l’exécution d’une vérification des règles de conception, tout routage du net VBAT sur la couche inférieure devrait avoir la largeur spécifiée, sous peine d’être signalé comme violation.

La définition de la portée des règles repose sur le système de requêtes. Utilisez l’option Custom Query pour voir la requête actuelle et la modifier à l’aide des mots-clés de requête si nécessaire.
Selon que la règle est unaire ou binaire, vous devrez définir respectivement une ou deux portées. Pour une règle de conception unaire, des contrôles seront fournis pour définir une seule portée de règle. Utilisez les options disponibles dans la zone Where The Object Matches pour aider à construire l’expression de requête, qui sera affichée dans la zone à sa droite. Pour une règle de conception binaire, des contrôles pour Where The First Object Matches et Where The Second Object Matches seront fournis afin de définir les deux portées de règle. Utilisez les listes déroulantes disponibles de chacune pour aider à construire l’expression de requête. Les contrôles sont les mêmes, que vous définissiez une ou deux portées de règle.
Lorsque des modifications sont apportées aux désignateurs de composants PCB ou aux noms de polygones, les références dans les règles de conception utilisant des requêtes personnalisées sont mises à jour automatiquement. Les requêtes faisant référence aux désignateurs de composants PCB dans les règles de conception sont modifiées lorsque les désignateurs sont réannotés, mis à jour par un ECO, ou modifiés manuellement sur la carte.
La mise à jour des requêtes de règle lorsque les désignateurs de composants sont modifiés est disponible lorsque l’option PCB.Rules.UpdateQueryOnComponentDesignatorChange est activée dans la boîte de dialogue Advanced Settings.
La mise à jour des requêtes de règle lorsque les noms de polygones sont modifiés est disponible lorsque l’option PCB.Rules.UpdateQueryOnPolygonNameChange est activée dans la boîte de dialogue Advanced Settings.
S’il y a une erreur de syntaxe dans la requête, la règle sera considérée comme non valide et sera mise en évidence en rouge dans la boîte de dialogue PCB Rules and Constraints Editor, à la fois dans l’arborescence des règles à gauche et dans toute vue récapitulative (catégorie de règle ou type de règle) dans laquelle la règle apparaît. En outre, le texte du type de règle et de la catégorie de règle est également affiché en rouge dans l’arborescence des règles à gauche. Ainsi, si vous avez réduit une zone de l’arborescence des règles contenant une règle non valide, vous en serez tout de même averti à un niveau supérieur de la hiérarchie. Un message d’avertissement apparaîtra également si vous tentez de fermer la boîte de dialogue. Une portée de règle comportant une erreur de syntaxe peut considérablement ralentir le processus d’analyse DRC en ligne et par lots. Veillez à corriger toute portée de règle qui n’est pas syntaxiquement correcte.
Options de portée
Des options de portée simples sont fournies pour vous permettre de générer rapidement des requêtes de portée. Sélectionnez l’une des options dans le premier champ de liste déroulante et, si nécessaire, utilisez la ou les listes déroulantes suivantes pour sélectionner la cible appropriée, telle qu’un net, une couche, une empreinte, un boîtier, etc. Les options de portée présentées sont adaptées au type de règle.

Créez rapidement une requête à l’aide des options de portée simples.
Voici quelques exemples d’options de portée simples :
-
All - génère une requête de portée qui cible tous les objets de conception.
-
Net - génère une requête de portée qui cible tous les objets d’un net spécifique. Une liste déroulante supplémentaire apparaît, à partir de laquelle vous pouvez sélectionner le net souhaité dans une liste de choix disponibles, y compris No Net.
-
Net Class - génère une requête de portée qui cible tous les objets d’une classe de nets spécifique. Une liste déroulante supplémentaire apparaît, à partir de laquelle vous pouvez sélectionner la classe de nets souhaitée dans une liste de choix disponibles, y compris All Nets.
-
Layer - génère une requête de portée qui cible tous les objets sur une couche spécifique. Une liste déroulante supplémentaire apparaît, à partir de laquelle vous pouvez sélectionner la couche souhaitée dans une liste de choix disponibles.
-
Net and Layer - génère une requête de portée qui cible tous les objets d’un net spécifique et sur une couche spécifique. Deux listes déroulantes supplémentaires apparaissent à partir desquelles vous pouvez sélectionner le net et la couche souhaités.
Lorsque vous définissez la portée de la règle à l’aide des options de portée simples, une requête est tout de même créée. La requête s’affiche si vous sélectionnez Custom Query dans le premier champ de liste déroulante.
L’option Custom Query vous permet d’écrire votre propre requête, peut-être plus complexe mais aussi plus spécifique. Vous pouvez saisir directement votre propre requête spécifique pour la portée de la règle dans la zone de requête à droite. Sinon, deux fonctionnalités sont disponibles pour aider à la création d’expressions de requête logiques. Il s’agit du Query Builder et du Query Helper. Elles peuvent être utiles lorsque vous n’êtes pas sûr de la syntaxe d’une requête ou des mots-clés disponibles.

Utilisez l’option Custom Query pour élaborer une expression de requête plus complexe.
-
Si vous maîtrisez le langage de requête, vous pouvez saisir directement une expression de requête dans la zone de requête. Vous pouvez également coller une expression de requête depuis votre éditeur favori directement dans la zone, ou copier une expression de requête dans un éditeur externe, ou même coller la requête dans la seconde portée d’une règle binaire. Cela est particulièrement utile si les deux portées sont complexes et ne diffèrent que légèrement.
-
Le Query Builder est une méthode plus simple de construction d’une requête qui utilise des types et des valeurs de condition contextuels, vous permettant de construire uniquement à l’aide de « briques » pertinentes. Pour une construction avancée de requêtes avec spécification complète des mots-clés et syntaxe des opérateurs, utilisez le Query Helper.
Définir la portée d’une règle avec le Query Builder
Lorsque l’option Custom Query est sélectionnée, cliquez sur le bouton
pour ouvrir la boîte de dialogue Building Query from Board, qui vous permet de créer une requête pour cibler des objets spécifiques dans le document de conception par la construction simple d’une chaîne d’instructions conditionnelles.
La section de gauche de la boîte de dialogue sert à spécifier la ou les condition(s) requise(s) pour cibler l’ensemble des objets nécessaires. Chaque condition est composée d’un Condition Type et d’un Condition Value. Les listes déroulantes correspondantes se remplissent avec des entrées pertinentes pour construire une portée pour le type de règle actuel et avec les valeurs du type de condition choisi, respectivement.
À mesure qu’une condition est définie, un aperçu de la requête en cours de construction s’affiche dans la section de droite de la boîte de dialogue. Les conditions peuvent être combinées avec AND et/ou OR, et la priorité peut également être intégrée (au moyen de parenthèses/retraits) afin d’affiner l’ensemble d’objets ciblés. Lorsque l’expression de la requête a été définie comme souhaité, un clic sur OK chargera l’expression dans la région de requête de la boîte de dialogue PCB Rules and Constraints Editor.
Notez que des parenthèses ouvrantes et fermantes supplémentaires sont ajoutées respectivement au début et à la fin de l’expression de requête lorsqu’elle est présentée dans la boîte de dialogue PCB Rules and Constraints Editor.

Utilisez le Query Builder pour construire une expression de requête logique au moyen d’une série d’instructions conditionnelles.
Définir la portée d’une règle avec le Query Helper
Lorsque l’option Custom Query est sélectionnée, cliquez sur le bouton
pour accéder à la boîte de dialogue Query Helper dialog. Le moteur de requête sous-jacent analyse la conception PCB et répertorie tous les objets disponibles, ainsi que des mots-clés génériques à utiliser dans les requêtes.
Le fonctionnement du Query Helper est assez intuitif, encore plus si vous le décomposez en trois zones distinctes comme illustré dans l’image ci-dessous :

Exemple de requête complexe définie à l’aide du Query Helper.
Ces zones sont les suivantes :
-
Query Region – utilisez cette région de la boîte de dialogue pour composer une expression de requête. L’expression actuellement en vigueur pour la portée de la règle sera disponible dans cette région, par défaut, lorsque la boîte de dialogue est ouverte. Vous pouvez saisir directement dans cette région ; une « liste d’invite » contextuelle de mots-clés ou d’objets possibles apparaîtra pour vous aider.
-
Operators – cette région de la boîte de dialogue fournit une gamme d’opérateurs mathématiques et logiques à utiliser lors de la construction d’une expression. Cliquez sur un bouton pour ajouter cet opérateur à l’emplacement actuel du curseur dans l’expression de requête de la région Query ci-dessus.
-
Categories, Keywords and Objects – cette région de la boîte de dialogue donne accès aux fonctions PCB, aux listes d’objets PCB et aux fonctions système disponibles, qui peuvent être utilisées pour créer l’expression de requête. En cliquant sur une sous-catégorie dans chacune de ces trois zones, une liste des mots-clés ou objets correspondants s’affichera dans la région de droite. Repérez le mot-clé ou l’objet à utiliser dans la chaîne de requête, puis double-cliquez sur son entrée ; celle-ci sera insérée à l’emplacement actuel du curseur dans l’expression de requête de la région Query ci-dessus.
Utilisez le bouton
(en bas à gauche de la boîte de dialogue) pour vérifier qu’une expression est syntaxiquement correcte. Lorsque l’expression de la requête a été définie comme souhaité, un clic sur OK chargera l’expression dans la région de requête de la boîte de dialogue PCB Rules and Constraints Editor.
Lorsque vous utilisez la boîte de dialogue
Query Helper pour construire une requête, cliquer sur un mot-clé dans l’une des listes disponibles puis appuyer sur
F1 permet d’accéder à la documentation de ce mot-clé particulier dans la
Query Language Reference.
Priorité des opérateurs dans les expressions de requête
Avant de quitter cette section, il vaut la peine d’examiner l’ordre de priorité appliqué aux opérateurs utilisés dans les expressions logiques de requête. Après tout, sans cette connaissance, une expression pourrait ne pas cibler les objets requis.
Les parenthèses ont la priorité la plus élevée dans l’ordre de priorité défini pour les différents opérateurs, lequel détermine la manière dont les requêtes sont interprétées par le logiciel (lorsque l’utilisateur n’a pas fourni de parenthèses). La séquence de cet ordre, de la plus élevée à la plus faible, est la suivante :
-
Parenthèses
-
Not
-
^, *, /, Div, Mod, And
-
+, -, Or, Xor
-
=, <>, <, >, <=, >=
-
&&, ||
Cet ordre de priorité est similaire à celui utilisé dans les langages de type Pascal. Les ambiguïtés sont résolues en procédant de gauche à droite. Les parenthèses sont évaluées de l’intérieur vers l’extérieur et les niveaux égaux sont évalués de gauche à droite.
Il est fortement conseillé d’utiliser des parenthèses dès qu’il existe la moindre possibilité que la requête ne soit pas interprétée correctement. Une utilisation généreuse des parenthèses élimine tout doute et rend les requêtes résultantes plus faciles à lire pour les autres.
Priorisation des règles
Pour simplifier le processus de définition et de gestion des règles, l’idée est de définir des règles générales couvrant des exigences larges, puis de les remplacer par des règles spécifiques dans des situations particulières. Pour que cela soit possible, vous devez pouvoir hiérarchiser les règles afin d’indiquer laquelle utiliser lorsqu’un objet est ciblé par plusieurs règles du même type.
Par exemple, pour spécifier la largeur de routage la plus couramment utilisée sur la carte, définissez une seule règle qui s’applique à chaque net de la carte. Cette règle peut ensuite être remplacée pour un net spécifique (ou une classe de nets, d’ailleurs) en ajoutant une autre règle du même type, mais avec une priorité plus élevée.
Un autre exemple pourrait concerner les exigences de masque de soudure. Ici, vous définiriez une règle de masque qui cible chaque pastille et via de la carte, laquelle pourrait ensuite être remplacée pour les pastilles d’un type d’empreinte spécifique. Cette règle spécifique à l’empreinte pourrait encore être remplacée pour une pastille particulière de cette empreinte si nécessaire.
Un aspect important de la gestion des règles consiste à s’assurer que toutes les priorités sont définies de manière appropriée. Lorsqu’une nouvelle règle est créée, elle reçoit par défaut la priorité la plus élevée. Utilisez le bouton Priorities en bas de la boîte de dialogue PCB Rules and Constraints Editor pour configurer les priorités dans la boîte de dialogue Edit Rule Priorities.

Modifiez les priorités des règles dans la boîte de dialogue Edit Rule Priorities.
Au départ, la boîte de dialogue répertorie toutes les instances de règle pour le type de règle actuellement sélectionné dans la boîte de dialogue PCB Rules and Constraints Editor. Utilisez le champ Rule Type pour changer le type de règle et lister les règles spécifiques définies pour ce type. Les règles définies sont répertoriées dans l’ordre de priorité actuel – de 1 (priorité la plus élevée) vers le bas. Sélectionnez une entrée de règle et utilisez les boutons Increase Priority et Decrease Priority pour la déplacer respectivement vers le haut ou vers le bas dans l’ordre de priorité.
Lors de l’ajout d’une nouvelle règle à un type de règle qui contient déjà une ou plusieurs règles existantes, la priorité sera définie sur 1 (c’est-à-dire la priorité la plus élevée). Lorsqu’une règle est dupliquée, la copie reçoit une priorité inférieure à celle de la règle source.
Il est possible de configurer plusieurs règles du même type. Il peut arriver qu’un objet de conception soit couvert par plus d’une règle ayant la même portée. Dans ce cas, il y a conflit. Tous les conflits sont résolus par le paramètre de priorité. Le système parcourt les règles de la priorité la plus élevée à la plus faible et choisit la première dont la ou les expressions de portée correspondent au(x) objet(s) vérifié(s). Il existe une exception à cela, plusieurs règles de conception Matched Length peuvent être appliquées aux objets, et toutes les règles sont appliquées à ces objets.
Modification des règles existantes
Les règles, bien sûr, peuvent être modifiées à tout moment. En effet, parvenir à l’ensemble final de règles opérationnelles implique souvent quelques ajustements clés ici et là. En général, cela concerne la définition de portée, afin de s’assurer que les objets de conception ciblés sont bien « pris en compte » par la ou les règles concernées comme requis. Sélectionnez une règle existante dans la boîte de dialogue PCB Rules and Constraints Editor et apportez les modifications nécessaires à sa portée et à ses attributs de contrainte.
Les modifications apportées aux définitions de règles existantes sont mises en évidence à la fois dans le volet d’arborescence des dossiers et dans les listes récapitulatives applicables. Ces entrées se distinguent par le fait que le nom de la règle apparaît en gras et qu’un astérisque est affiché à droite du nom. L’astérisque sert à indiquer qu’il s’agit d’une règle existante qui a été modifiée, plutôt que d’une règle nouvellement créée (qui est affichée en gras sans astérisque).

Exemple d’une règle existante qui a été modifiée. Un astérisque est utilisé pour signaler la modification, en plus du nom de la règle affiché en gras.
Lorsqu’une nouvelle règle est créée pour un type de règle particulier, elle reçoit automatiquement la priorité 1. Si d’autres règles de ce type existent, leurs priorités seront décalées (abaissées) d’un rang en conséquence. Elles sont alors considérées comme modifiées, même si elles n’ont pas été spécifiquement modifiées au niveau de la portée/des contraintes. Toutes ces règles existantes de ce type seront donc affichées dans l’état modifié (gras avec un astérisque).
Signalement des règles invalides
Si une règle est détectée comme invalide par le système – par exemple, si elle présente un problème avec son expression de requête de portée ou une valeur de contrainte non autorisée – elle sera signalée comme invalide. Une telle règle sera mise en évidence en rouge dans la boîte de dialogue PCB Rules and Constraints Editor, à la fois dans l’arborescence des règles à gauche et dans toute vue récapitulative (catégorie de règle ou type de règle) où la règle apparaît. En outre, le texte du type de règle et de la catégorie de règle est également affiché en rouge dans l’arborescence des règles à gauche. Ainsi, même si vous avez réduit une zone de l’arborescence des règles contenant une règle invalide, vous en serez tout de même averti à un niveau supérieur de la hiérarchie. Un message d’avertissement apparaîtra également si vous tentez de fermer la boîte de dialogue.
Une portée de règle comportant une erreur de syntaxe peut considérablement ralentir l’analyse DRC en ligne et par lots ; veillez donc à corriger toute portée de règle qui n’est pas syntaxiquement correcte.

Exemple du système signalant une règle de conception invalide, dans ce cas une expression de requête de portée erronée.
Désactivation des règles
Dans l’environnement piloté par des règles de l’éditeur PCB du logiciel, il n’est pas rare de constituer un ensemble de règles particulièrement impressionnant et complet afin de contraindre correctement vos cartes. Pour une raison ou une autre, vous pouvez souhaiter désactiver certaines règles : peut-être ne s’appliquent-elles pas à la carte concernée ou doivent-elles être temporairement désactivées afin d’alléger la charge du vérificateur de règles de conception (Design Rule Checker) et d’en améliorer ainsi les performances ! La désactivation est un bon moyen de conserver ces règles au cas où elles seraient de nouveau nécessaires à l’avenir.
Pour désactiver une règle, basculez l’option Enable correspondante pour cette règle dans l’une des listes récapitulatives appropriées situées sur le côté droit de la boîte de dialogue PCB Rules and Constraints Editor. Une règle désactivée apparaît également en grisé.

Exemple de règles désactivées, affichées en gris dans une liste récapitulative.
Les règles peuvent également être désactivées/activées directement depuis le panneau
PCB Rules And Violations. Basculez l’option
On associée à la règle. Cela se reflète dans l’option
Enable de la règle dans la boîte de dialogue
PCB Rules and Constraints Editor.
Suppression de règles
Pour supprimer une seule règle de conception depuis la boîte de dialogue PCB Rules and Constraints Editor :
-
Utilisez l’arborescence à gauche pour accéder à la règle existante voulue, cliquez avec le bouton droit puis choisissez Delete Rule dans le menu contextuel.
-
Accédez au type de règle spécifique dans l’arborescence à gauche, puis sélectionnez la règle à supprimer dans la liste récapitulative à droite. Cliquez ensuite sur le bouton Delete Rule(s) sous la liste.
Le nom de la règle apparaîtra en gras et barré afin d’indiquer qu’il s’agit d’une suppression qui n’a pas encore été « appliquée ».

Suppression d’une règle unique.
-
Si une règle de conception particulière n’est plus nécessaire mais pourrait être réutilisée à l’avenir, au lieu de la supprimer, vous pouvez simplement la désactiver. Pour cela, basculez l’option Enable correspondante pour la règle dans l’une des listes récapitulatives appropriées situées sur le côté droit de la boîte de dialogue PCB Rules and Constraints Editor.
-
Plusieurs règles peuvent être supprimées en une seule opération depuis une vue de liste récapitulative. Pour ce faire, sélectionnez les règles à supprimer (les raccourcis standard Shift+click et Ctrl+click sont pris en charge), puis cliquez sur le bouton Delete Rule(s) sous la liste.
-
Certaines règles doivent être présentes pour que le système de vérification des règles de conception fonctionne ; si l’une de ces règles est supprimée (de sorte qu’aucune règle de ce type ne soit présente), elle sera automatiquement recréée. Pour en savoir plus sur les règles de conception par défaut.
De nombreux types de règles disposent de règles par défaut créées lors de la création d’un nouveau document PCB. De manière similaire, si toutes les règles spécifiques de l’un de ces types de règles sont supprimées, la règle par défaut sera automatiquement rajoutée lors du prochain accès à la boîte de dialogue PCB Rules and Constraints Editor. Sinon, les règles par défaut peuvent être recréées en cliquant sur le bouton Create Default Rules en bas de la boîte de dialogue.
Exportation et importation de règles
Les règles de conception peuvent être exportées depuis la boîte de dialogue PCB Rules and Constraints Editor et importées dans celle-ci. Cela vous permet d’enregistrer et de charger vos définitions de règles favorites entre différentes conceptions.
-
To export – cliquez avec le bouton droit n’importe où dans l’arborescence à gauche de la boîte de dialogue et sélectionnez Export Rules. La boîte de dialogue
Choose Design Rule Type dialog s’ouvre, dans laquelle vous pouvez choisir la ou les règles de conception à exporter. Dans la boîte de dialogue Export Rules to File qui s’ouvre, vous pouvez nommer le fichier .rul et choisir son emplacement. Les règles exportées sont stockées dans un fichier de règles PCB (*.rul).
-
To import – cliquez avec le bouton droit n’importe où dans l’arborescence à gauche de la boîte de dialogue et sélectionnez Import Rules. La boîte de dialogue
Choose Design Rule Type dialog s’ouvre, dans laquelle vous pouvez choisir la ou les règles de conception à importer. Dans la boîte de dialogue Import File qui s’ouvre, recherchez le fichier .rul à importer.
Lors de l’importation, si des règles du type choisi existent déjà, il vous sera proposé d’effacer les règles existantes avant l’importation. Cliquer sur Yes entraîne la suppression de toutes les règles existantes de ce type, puis leur remplacement par celles du fichier .rul. Cliquer sur No conservera les règles existantes. Toutefois, si des règles existantes et des règles importées portent le même nom, les règles importées écraseront les règles existantes.
Rapports sur les règles de conception
Un rapport des règles de conception actuellement définies peut être généré depuis la boîte de dialogue PCB Rules and Constraints Editor. Le rapport peut couvrir toutes les catégories de règles, une catégorie de règles spécifique ou un type de règle spécifique, selon l’entrée sélectionnée dans l’arborescence des dossiers. Un rapport peut être généré en :
-
Accédant à la liste récapitulative voulue, en cliquant avec le bouton droit puis en choisissant la commande Report dans le menu contextuel, ou en cliquant sur le bouton Report sous la liste.
-
Cliquant avec le bouton droit sur l’entrée correspondante dans l’arborescence des dossiers puis en choisissant la commande Report dans le menu contextuel.
La boîte de dialogue Report Preview s’ouvrira avec le rapport approprié déjà chargé. Utilisez cette boîte de dialogue pour examiner le rapport à l’aide des différents contrôles de page/zoom avant de finalement l’exporter vers un fichier ou de l’imprimer.

Générer un rapport de règles PCB.
Options and Controls of the Report Preview Dialog
-
Preview Window - la zone principale de cette boîte de dialogue présente l’aperçu du rapport généré. Le rapport peut être manipulé à l’aide des différents contrôles situés sous la fenêtre et dans le menu contextuel obtenu par clic droit.
Utilisez les barres de défilement pour vous déplacer horizontalement ou verticalement dans une page agrandie.
-
Page x of x - le premier x correspond à la page actuellement affichée ; le second x correspond au nombre total de pages du rapport.
-
All - cliquez sur ce bouton pour dimensionner la page afin qu’elle tienne dans la zone d’aperçu disponible. Lorsque vous redimensionnez la boîte de dialogue (et donc la fenêtre d’aperçu), la page se redimensionne pour rester entièrement visible.
-
Width - cliquez sur ce bouton pour dimensionner la page afin qu’elle tienne dans les limites horizontales de la fenêtre d’aperçu disponible. Lorsque vous redimensionnez la boîte de dialogue (et donc la fenêtre d’aperçu), la page se redimensionne pour rester entièrement visible sur toute sa largeur.
-
100% - cliquez sur ce bouton pour afficher la page à sa taille réelle (100 %).
-
% - utilisez ce champ pour effectuer un zoom avant ou arrière. La taille réelle est de 100 %. Saisissez une valeur plus petite pour afficher le rapport à une échelle réduite. Saisissez une valeur plus grande pour afficher le rapport à une échelle agrandie.
Le zoom peut également être effectué à l’aide de Ctrl+mouse wheel ou en utilisant les touches Page Up et Page Down pour effectuer respectivement un zoom avant et un zoom arrière.
Vous pouvez vous déplacer dans la vue agrandie en maintenant le bouton droit de la souris enfoncé et en faisant glisser le document. Utilisez Shift+mouse wheel ou les barres de défilement pour faire défiler horizontalement, et la molette de la souris pour faire défiler verticalement.
-
Page Navigation Controls - cet ensemble de contrôles offre collectivement un autre moyen de naviguer entre les pages du rapport. Les contrôles permettent d’aller respectivement à la première, à la précédente, à la suivante et à la dernière page du document. Vous pouvez également saisir directement le numéro de page dans la zone de texte et appuyer sur Enter.
-
Export - cliquez sur ce bouton pour accéder à la boîte de dialogue Export Report From Project, dans laquelle vous pouvez enregistrer le rapport avec un emplacement, un nom et un format d’exportation spécifiques. Les formats suivants sont pris en charge :
-
Feuille de calcul Microsoft Excel (*.xls)
-
Adobe PDF (*.pdf)
-
Rich Text Format (RTF) (*.rtf)
-
Page Web (*.htm, *.html)
-
Couche Web (CSS) (*.htm, *.html)
-
Fichier image JPEG (*.jpg)
-
Fichier bitmap Windows (*.bmp)
-
Fichier image TIFF (*.tif)
-
Print - cliquez sur ce bouton pour imprimer le rapport. La boîte de dialogue standard Print apparaîtra, depuis laquelle vous pourrez spécifier la plage de pages et le nombre de copies.
-
Open Report - cliquez sur ce bouton pour ouvrir un rapport généré dans l’application que vous avez spécifiée dans Export. Ce bouton n’est disponible qu’après avoir cliqué sur le bouton Export .
Commandes du clic droit
Certaines des commandes ci-dessus sont également disponibles dans le menu contextuel, accessible en cliquant avec le bouton droit n’importe où dans la boîte de dialogue :
-
Print - utilisez ce bouton pour imprimer le rapport. La boîte de dialogue standard Print s’affichera ; vous pourrez y spécifier la plage de pages et le nombre de copies.
-
Export - cliquez sur ce bouton pour accéder à la boîte de dialogue Export Report From Project dans laquelle vous pouvez enregistrer le rapport à un emplacement donné, avec un nom et un format d’exportation spécifiques. Les formats suivants sont pris en charge :
-
Feuille de calcul Microsoft Excel (*.xls)
-
Adobe PDF (*.pdf)
-
Format RTF (Rich Text Format) (*.rtf)
-
Page Web (*.htm, *.html)
-
Couche Web (CSS) (*.htm, *.html)
-
Fichier image JPEG (*.jpg)
-
Fichier bitmap Windows (*.bmp)
-
Fichier image TIFF (*.tif)
-
Copy - utilisez ce bouton pour copier la page active dans le Presse-papiers Windows, d’où elle pourra être collée dans une application externe selon les besoins.
-
Page Width - cliquez sur ce bouton pour ajuster la page afin qu’elle tienne dans les limites horizontales de la fenêtre d’aperçu disponible. Lorsque vous redimensionnez la boîte de dialogue (et donc la fenêtre d’aperçu), la page se redimensionne pour rester entièrement visible sur toute sa largeur.
-
Whole Page - utilisez cette commande pour ajuster la page afin qu’elle tienne dans la fenêtre d’aperçu disponible.
-
Zoom In - utilisez cette commande pour agrandir progressivement le rapport.
-
Zoom Out - utilisez cette commande pour réduire progressivement le rapport.