Logiciels > Proteus > Simulation dans Isis et empreintes dans Ares

Dernière mise à jour : 11/05/2009

English version

Présentation

Isis dispose d'une large bibliothèque de composants, associés pour la plupart à des modèles de simulation et/ou des empreintes physiques (package) On peut faire un tri rapide pour l'ensemble de ces composants :
- composants schématique sans modèle de simulation et sans définition d'empreinte (par exemple Z80).
- composants schématique avec modèle de simulation et sans définition d'empreinte (par exemple RELAY ou BUTTON).
- composants schématique sans modèle de simulation et avec définition d'empreinte (par exemple CD4541).
- composants schématique avec modèle de simulation et avec définition d'empreinte (par exemple 16F628A)
Certains des composants de Isis sont plutôt destinés à de la simulation "pure", tel que bouton poussoir (BUTTON), encodeur BCD (THUMBSWITCH-BCD) ou encore relais de base (RELAY). Ces composants se reconnaissent aisement au fait que les pattes de connexion ne portent pas de numéro et qu'il ne s'agit pas des composants de base tels que résistance, condensateur, diode ou transistor (dont les numéros des terminaisons sont cachées). Le sujet que j'aborde ici concerne l'ajout d'une empreinte physique à un composant "dédié simulation". J'utiliserai un exemple qu'il sera facile de transposer à d'autres composants, et qui porte sur l'afficheur 7 segments à cathodes commune 7SEG-COM-CATHODE.

Composant 7SEG-COM-CATHODE

Ce composant permet d'afficher un nombre compris entre 0 et 9, avec des segments de couleur rouge (cette couleur n'est pas importante dans le cas qui nous concerne). Ce composant possède plusieurs broches de connexion qui permettent d'accéder au point commun et aux segments de façon individuel. Sur le schéma qui suit, un seul composant a des pattes numérotées (c'est U1), les autres composants ont des pattes non numérotées. 

proteus_7seg_disp_tuto_002aa

Pour les résistances, c'est normal, inutile d'encombrer le schéma inutilement. Et pour l'afficheur, c'est normal aussi car il a été conçu comme ça, pour un usage principal en simulation. Supposons maintenant que nous souhaitions développer un circuit imprimé supportant le décodeur BCD / 7 Segments (U1), les sept résistances R1 à R7 et l'afficheur à leds qui sera dans la pratique un modèle D350PK. Au moment du transfert de la netlist de Isis dans Ares, on ne retrouve pas notre afficheur dans la liste des composants à placer, même si l'on a pris le soin de décocher l'option "Exclude from PCB Layout". Et d'ailleurs, Ares pense à nous demander de spécifier une empreinte pour ce composant. Vous avez déjà spécifié le nom d'une empreinte avec des pattes numérotées qui existe bien dans votre librairie, et Ares vous injurie parce que plein de numéros de patte ne trouvent aucune correspondance ? La aussi c'est normal puisque le modèle d'afficheur ne possède aucune patte numérotée (seuls des lettres ou noms sont spécifiés), et que votre empreinte comporte des pattes numérotées.

Solution N° 1

Utilisation du composant Isis tel qu'il est, et création d'une empreinte dont les pattes ne sont pas numérotées mais portent les mêmes lettres et noms que ceux utilisés dans le composant Isis. Le composant 7SEG-COM-CATHODE de la bibliothèque Isis comporte 8 terminaisons : 7 pour les segments A à G ("A" à "G") et une pour la cathode commune ("COM"). L'empreinte correspondant à l'afficheur de type D350PK pourrait ainsi ressembler à ceci, avec deux pastilles appelées "COM", sept pastilles appelées "A" à "G" et une pastille appelée "DP", qui n'est pas modélisée dans le composant Isis mais qui existe bien sur le vrai composant (cliquer sur le dessin pour mieux voir les lettres sur les pastilles) :

proteus_7seg_disp_tuto_002ba

Il suffit ensuite de spécifier l'empreinte sur le composant Isis, via la propriété PACKAGE (le nom du boitier dans Ares est ici le même que le nom du composant dans Isis, mais ce n'est pas obligatoire) :

proteus_7seg_disp_tuto_002ca

Cela fonctionne bien ainsi, et la netlist produite par Isis est bien digérée par Ares, qui autorise de suite le placement de l'afficheur, avec le chevelu des connections .

proteus_7seg_disp_tuto_002da

Un petit regret cependant : une fois qu'une des deux pattes COM de l'empreinte a été reliée, Ares considère que la liaison est faite et qu'il n'y a pas besoin de relier l'autre patte COM. Le composant Isis ne possède en effet qu'une seule patte appelée COM.

Avantages
- Rapidité de mise en oeuvre, il suffit de créer un boitier dans Ares dont les noms des pastilles correspondent aux pattes du composant dans Isis.
Inconvénients
- L'utilisation d'une empreinte comportant des pastilles de même nom peut faire oublier des liaisons électrique (pas de déclanchement d'erreur de connectivité).
- Les lettres peuvent être moins "parlante" que des chiffres, notamment pour l'orientation du composant.

Solution N° 2

Attribution de numéros au composant Isis, et utilisation d'une empreinte Ares avec pastilles numérotées. Dans ce mode de fonctionnement, on travaille plus dans le standard. Pour cela, nous pouvons créer un composant nouveau dans Isis, plutôt que de modifier l'existant (on ne sait jamais...). Heureusement, cette étape est rapide puisqu'il suffit de prendre le composant de base, de le "décomposer", de le modifier puis enfin de créer le nouveau composant. Nous procèderons donc ainsi :
- placement d'un composant 7SEG-COM-CATHODE sur la feuille de travail dans Isis, et décomposition du composant (clic droit, menu Decompose)
- attribution d'un numéro aux pattes actuelles, et ajouts des pattes manquantes
- compilation du tout dans un nouveau composant appelé (arbitrairement) D350PK.
Au final, nous disposerons dans Isis d'un composant nommé D350PK, qui pourra être simulé comme c'était le cas avec le composant 7SEG-COM-CATHODE (on garde le même modèle de simulation), et auquel sera attaché d'office une empreinte physique nommée D350PK (ici, l'empreinte Ares porte le même nom que le composant Isis, mais ce n'est pas obligatoire).

Placement et décomposition du composant 7SEG-COM-CATHODE
Une fois le composant 7SEG-COM-CATHODE décomposé, afficher l'éditeur de propriétés du composant, de façon à visualiser tous ses paramètres actuels. Puis repérer et modifier les lignes suivantes, comme indiqué :
- modification de la propriété NAME du groupe DEVICE : ancienne valeur = 7SEG-COM-CATHODE, et nouvelle valeur = D350PK
- modification de la propriété PACKAGE du groupe PROPDEFS : ancienne valeur = PCB Package,HIDDEN PACKAGE, et nouvelle valeur = "PCB Package",PACKAGE,1,D350PK
- modification de la propriété PACKAGE du groupe COMPONENT : ancienne valeur = NULL, et nouvelle valeur = D350PK.
- ajout de la propriété PREFIX avec pour valeur "D" (D comme Display), afin que Isis affecte un identifiant de composant dès sa pose sur la feuille de travail (D1, D2, etc).
En résumé :

Avant modifiation
{*DEVICE}
NAME=7SEG-COM-CATHODE
{*PROPDEFS}
{PACKAGE=PCB Package,HIDDEN PACKAGE}
{*COMPONENT}
{PACKAGE=NULL}

(les autres lignes sont ignorées pour plus de clarté, elles ne sont ni à modifier ni à supprimer)

Après modification
{*DEVICE}
NAME=D350PK
{PREFIX=D}
{*PROPDEFS}
{PACKAGE="PCB Package",PACKAGE,1,D350PK}
{*COMPONENT}
{PACKAGE=D350PK}

Attribution d'un numéro aux pattes actuelles, et ajouts de pattes manquantes
- Attribuer le numéro 7 au segment A, attribuer le numéro 6 au segment B, etc, conformément au brochage du composant D350PK.
- Attribuer le numéro 3 à la patte "COM".
- Ajouter une patte nommée "COM2" et numérotée 8 (c'est la deuxième patte portant ce nom).
- Ajouter une patte nommée "DP" et numérotée 5 (DP = Decimal Point = point décimal).
 
Compilation du tout dans un nouveau composant appelé D350PK
Sélectionner le composant avec toutes ses pattes et le texte de ses propriétés, puis appelez la commande Make device (menu Library) pour créer un nouveau composant. Renseignez les propriétés de la façon habituelle dans les diverses pages qui se succèdent, puis sauvez le nouveau composant dans la bibliothèque de votre choix. Et voilà ! Vous disposez maintenant d'un composant prêt à l'emploi auquel sont attachés le modèle de simulation et l'empreinte physique...

proteus_7seg_disp_tuto_002ab

à condition bien sûr que l'empreinte soit elle aussi prête !

proteus_7seg_disp_tuto_002db

Comme vous pouvez le constater, cette méthode permet un contrôle de connectivité sur les deux broches COM de l'afficheur.

Avantages
- Présentation du composant tel qu'il sera utilisé en pratique. Un mauvais choix de composant risque beaucoup moins de passer inaperçu.
- Vérification de connectivité assurée même si plusieurs pattes portent le même nom.
Inconvénients
- Mise en oeuvre un peu plus longue, car il faut créer un nouvau composant Isis basé sur l'existant, en plus de l'empreinte.

Autres composants

La création d'autres composants peut se faire en suivant le même principe. Après la création de l'afficheur D350PK, j'ai immédiatement enchaîné avec la création de son complément D350PA, qui est la version Anode commune.

proteus_7seg_disp_tuto_002ac

En fait, le plus "dur" est de démarrer. Une fois qu'on s'est planté quelques fois (je n'y suis pas arrivé du premier coup) et que le composant final donne satisfaction, pas de raison de ne pas continuer...

Circuit de test

Vous trouverez dans l'archive suivante, un schéma Isis (*.dsn) mettant en oeuvre les deux afficheurs D350PK et D350PA, avec le circuit imprimé correspondant (Ares *.lyt), ainsi que le modèle utilisé pour la vue en 3D (le modèle en question fait partie de la bibliothèque que je mets à disposition sur ma page librairies Proteus).

proteus_7seg_disp_tuto_002

logiciels_proteus_7seg_disp_tuto_002.zip