Schéma-blocs avec PGF/TIKZ Papanicola Robert 20 janvier 2009 version 1.5 Modific

Schéma-blocs avec PGF/TIKZ Papanicola Robert 20 janvier 2009 version 1.5 Modification du dessin des comparateurs et sommateurs (ajout des symboles avec l’opérateur à l’extérieur). Ajout des commandes de tracé de chaînes de blocs et de boucles. les vielles définitions ont été désactivées (mise en commentaires). version 1.2 redéfinition des noms de commandes, ajout du préfixe sb, quelques nouvelles commandes (\sbBlocSeul, ..) version 1 version initiale version 1.2 1 Schéma-blocs avec PGF/TIKZ Les macros suivantes permettent de faciliter le dessin de schéma-blocs (block-diagram), elles s’appuient sur le package pgf et les macros tikz. Les macros ont été adaptées à partir des exemples d’utilisation de la librairie pgf de Till Tantau et TikZ de Kjell Magne Fauske et principalement block-diagram. 1.1 Utilisation typique L’utilisation typique de cet ensemble de macro-commandes est produire des diagrammes fonctionnels tel celui présenté sur la figure suivante. The typical use of this set of macro-commands is to produce functional diagrams such that presented on the following figure. − + E1 Régulateur ϵ Système u S1 Capteur m FIGURE 1 – Utilisation typique On retrouve dans ces schémas les principales fonctionnali- tés des macros – des blocs : – de la gauche vers la droite, – de la droite vers la gauche ; – un comparateur ; – une entrée ; – une sortie ; – des liens : – simple entre blocs alignés, – entre un lien et un bloc , – entre deux blocs (ou comparateur) non alignés, – un retour direct. Le code utilisé pour décrire le schéma est précisé ci-contre. \begin{tikzpicture} \sbEntree{E} \sbComp{comp}{E} \sbRelier[$E_1$]{E}{comp} \sbBloc{reg}{Régulateur}{comp} \sbRelier[$\epsilon$]{comp}{reg} \sbBloc{sys}{Système}{reg} \sbRelier[u]{reg}{sys} \sbSortie{S}{sys} \sbRelier[$S_1$]{sys}{S} \sbDecaleNoeudy[4]{S}{U} \sbBlocr{cap}{Capteur}{U} \sbRelieryx{sys-S}{cap} \sbRelierxy[m]{cap}{comp} \end{tikzpicture} 1 1.2 Environnement 1 SCHÉMA-BLOCS AVEC PGF/TIKZ 1.2 Environnement Les macros suivantes s’utilisent dans l’environnement tikzpicture. Nota : vous devez avoir installé la dernière version du pa- ckage pgf ! \begin{tikzpicture} listes de commandes ..... \end{tikzpicture} 1.3 Entrée et noeud Tous les blocs sont dessinés en relatif par rapport à un noeud d’entrée, la construction du schéma ne peut donc débuter qu’après avoir défini le premier noeud avec la commande :\sbEntree{nom}. Les commandes \sbDecaleNoeudx[distance]{N1}{N2} et \sbDecaleNoeudy[distance]{N1}{N2} permettent de positionner un nouveau nœud {N2} par rapport au nœud précédent {N1} , respectivement – suivant x - horizontalement de la gauche vers la droite – suivant y - verticalement du haut vers le bas de la page Cette commande est nécessaire pour démarrer un nouvelle branche ou pour positionner une nouvelle en- trée. La distance optionnelle [distance] doit être précisée sans unité et est comptée en em, la valeur par défaut est de 5em. Remarque : il est toujours possible de positionner les différents noeuds en absolu dans la page en utili- sant les commandes spécifiques de tikz (\node...). 1.4 Bloc 1.4.1 Utilisation deux commandes principale permettent d’obtenir le dessin d’un bloc fonctionnel – la première permet le dessin d’un bloc seul ; \sbBloc[distance]{nom}{contenu}{bloc precedent} – la seconde permet le dessin du bloc et du lien avec le bloc précédent \sbBlocL[distance]{nom}{contenu}{bloc precedent} avec les paramètres suivant : distance ce paramètre optionnel permet de positionner le bloc par rapport au bloc précédent ( la valeur par défaut est 2 em), cette distance est l’intervalle entre les deux blocs ; nom ce paramètre permet de nommer le noeud associé au bloc, pour faire référence à ce bloc, il faudra utiliser ce paramètre (pour relier les blocs) ; contenu ce paramètre précise le contenu du bloc, cela peut être aussi bien du texte qu’une fonction ma- thématique comme Kc 1+τ· p en tapant $\dfrac{K_c}{1 + \tau \cdot p}$ (ne pas oublier les $ ) ; bloc precedent ce paramètre permet de préciser le nom du bloc précédent, chaque bloc est positionné relativement au bloc précédent avec la distance distance. 1.4.2 Exemple \begin{tikzpicture} \sbEntree{E} \sbBloc{bloc1}{contenu}{E} \sbBloc{bloc2}{ $K_c\dfrac{1+\tau \cdot p}{1+\dfrac{2\cdot z} {\omega_n}p+\dfrac{p^2}{\omega_n^2}}$}{bloc1} \sbBlocL[4]{bloc3}{Bloc lié}{bloc2} \end{tikzpicture} – on notera la présence de \entree pour posi- tionner le premier bloc ; – le nom de chaque bloc est unique ; – le deuxième bloc s’est adapté en hauteur et lar- geur en fonction du contenu ; – le troisième bloc est décalé de 4em du précé- dent et relié. 2 1.5 Comparateur - Sommateur 1 SCHÉMA-BLOCS AVEC PGF/TIKZ contenu Kc 1+τ· p 1+ 2· z ωn p + p2 ω2 n Bloc lié FIGURE 2 – commandes sbBloc et sbBlocL 1.4.3 Autres commandes de Bloc Bloc de la chaîne de retour La commande \sbBlocr... (respectivement \sbBlocrL...) permet de tra- cer les blocs de la chaîne de retour de la droite vers la gauche. les paramètres de commande sont identiques. le bloc est placé à gauche du bloc (ou du nœud) précédent. Bloc seul La commande \sbBlocseul... permet de tracer un bloc seul avec une entrée et une sortie cette commande est général utilisée seule. Le paramètre de distance est appliqué sur le lien d’entrée et de sortie \sbBlocseul[3]{Entrée}{$H(p)$}{Sortie} H(p) 1.4.4 Personnalisation des blocs La commande \sbStyleBloc{liste d'option} permet de modifier la représentation graphique du bloc ( fond, couleur des traits,couleur du texte, épaisseur,...), les modifications sont valables jusqu’à une nouvelle définition. Les modifications de style apportée sont cumulatives. La commande \sbStyleBlocDefaut ré-active la représentation graphique par défaut bloc 1 K 1+ p + p2 H(p) H(p) \begin{tikzpicture} \sbEntree{E1} \sbBlocL{B0}{bloc 1}{E1} \sbStyleBloc{blue,very thick,% fill=yellow,text=red}% \sbBlocL{B1}{$\dfrac{K}{1+p+p^2}$}{B0} \sbStyleBloc{fill=black!30, text=blue,ellipse} \sbBlocL{B2}{$H(p)$}{B1} \sbStyleBlocDefaut \sbBlocL{B3}{$H(p)$}{B2} \end{tikzpicture} Comme on le voit ci-dessus, il même possible de modifier la forme du nœud. Toutes les options relatives au tracé des noeuds dans pgf/tikz sont utilisables. 1.5 Comparateur - Sommateur Les commandes de base \sbComp[distance]{nom}{bloc precedent} \sbComp*[distance]{nom}{bloc precedent} permettent de dessiner un comparateur, soit avec sa représentation usuelle − + ou avec les opérateurs à l’extérieur − + avec les paramètres suivant : étoile ∗: représentation usuelle sans l’étoile ; distance : paramètre optionnel permettant de positionner le comparateur par rapport au bloc précédent ( la valeur par défaut est 4em) ; nom : nom du comparateur, ce nom doit être unique dans votre schéma, il sert à référencer le comparateur pour tous les liens ; bloc precedent : le nom du bloc précédent, le comparateur est placé à sa droite,à la distance distance. 3 1.6 Liens et renvois 1 SCHÉMA-BLOCS AVEC PGF/TIKZ − + E1 Rég ϵ Sys u S1 Capt m − + E1 Rég ϵ Sys u S1 Capt m FIGURE 3 – Comparateur- commande étoilée ou non 1.5.1 Commandes et symboles D’autres commandes génériques permettent de dessiner rapidement les principaux symboles de som- mation et de comparaison. Comparateurs Sommateurs Symbole − + − + + + + + code \sbComp{}... \sbComph{}... \sbSumb{}... \sbSumh{}... Symbole − + − + + + + + code \sbComp*{}... \sbComph*{}... \sbSumb*{}... \sbSumh*{}... TABLE 1 – Symboles et commandes de comparateurs et sommateurs Une commande plus générique \sbCompSum[dist]{nom}{E1}{a}{b}{c}{d} permet de dessiner tout sommateur et entre autres les sommateurs et comparateurs placés dans les lignes de retour. Une commande étoilée \sbCompSum*[dist]{nom}{E1}{a}{b}{c}{d}permet de représenter le sommateur (comparateur) avec les signes à l’extérieur. a b c d + + + + +− + + − + −− a b c d + + + + + − + + − + − − \begin{tikzpicture} \sbEntree{E1} \sbCompSum[-4]{C1}{E1}{a}{b}{c}{d} \sbCompSum[0]{C1}{E1}{+}{+}{+}{ } \sbCompSum[4]{C1}{E1}{+}{+}{ }{-} \sbCompSum[8]{C1}{E1}{+}{ }{+}{-} \sbCompSum[12]{C1}{E1}{ }{+}{-}{-} \end{tikzpicture} 1.6 Liens et renvois La commande \sbBlocL... permet de tracer un lien sans texte entre deux blocs successifs, les macros proposent trois autres types de liens qui permettent de tracer tout type de schéma. – lien direct \sbRelier[nom]{b1}{b2} ; – les renvois et sauts \sbRenvoi{b1}{b2}{} ; – les liens décalés. 1.6.1 liens directs Liens entre deux blocs (ou comparateur, entrée ou sortie) dans la chaîne directe (de la gauche vers la droite) ou dans la chaîne de retour (de la droite vers la gauche). Un lien direct entre deux blocs "b1" et "b2" s’écrit : \sbRelier[nom]{b1}{b2} Le nom du lien (optionnel) est placé au dessus du lien au centre, Un nœud est associé au lien dans la figure sous le nom "b1-b2" (concaténation des noms avec un tiret "-") 4 1.6 Liens et renvois 1 SCHÉMA-BLOCS AVEC PGF/TIKZ H1 E(p) H2 nom S(p) \begin{tikzpicture} \sbEntree{E1} \sbBloc[3]{Bloc1}{$H1$}{E1} \sbRelier[$E(p)$]{E1}{Bloc1} \sbBloc[3]{Bloc2}{$H2$}{Bloc1} \sbRelier[nom]{Bloc1}{Bloc2} \sbSortie[3]{S1}{Bloc2} \sbRelier[$S(p)$]{Bloc2}{S1} \end{tikzpicture} \end{tikzpicture} 1.6.2 Renvois et sauts Les renvois sont des liens qui permettent soit de retourner en arrière soit de sauter un ou plusieurs blocs. Ils sont tracés entre un lien et un comparateur (sommateur) ; − + H1 \begin{tikzpicture} \sbEntree{E} \sbComp[1.5]{comp}{E} \sbRelier{E}{comp} \sbBloc[1.5]{B}{$H_1$} {comp} \sbRelier{comp}{B} \sbSortie{S}{B} \sbRelier{B}{S} \sbRenvoi{B-S}{comp}{} \end{tikzpicture} − + H1 \begin{tikzpicture} \sbEntree{E} \sbComph[1.5]{comp}{E} \sbRelier{E}{comp} \sbBloc[1.5]{B}{$H_1$} {comp} \sbRelier{comp}{B} \sbSortie{S}{B} \sbRelier{B}{S} \sbRenvoi[-3]{B-S}{comp}{} \end{tikzpicture} H1 + + \begin{tikzpicture} \sbEntree{E} \sbBloc{B}{$H_1$}{E} \sbRelier{E}{B} \sbSumb{sum}{B} \sbRelier{B}{sum} \sbSortie{S}{sum} \sbRelier{sum}{S} \sbRenvoi{E-B}{sum}{} \end{tikzpicture} 1.6.3 Liens décalés Ces liens sont utilisés pour relier un bloc d’un ligne vers un bloc d’une ligne parallèle (vers l’avant ou l’arrière) ; − + H1 E1 H2 ϵ − + u H3 H4 S1 R1 R2 R3 n1 n2 5 1.7 Chaînes et Boucles 1 SCHÉMA-BLOCS AVEC PGF/TIKZ Code \begin{tikzpicture} \sbEntree{E} \sbComp{a}{E} \sbRelier[$E_1$]{E}{a} \sbBloc{b}{$H_1$}{a} \sbRelier[$\epsilon$]{a}{b} \sbBlocL{c}{$H_2$}{b} \sbComph{d}{c} \sbRelier[u]{c}{d} \sbBlocL{e}{$H_3$}{d} \sbBlocL{f}{$H_4$}{e} \sbSortie[5]{S1}{f} \sbRelier{f}{S1} \sbNomLien[0.8]{S1}{$S_1$} \sbDecaleNoeudy[-4]{f}{u} \sbDecaleNoeudy{e}{v} \sbBlocr{r1}{$R_1$}{u} \sbBlocr{r2}{$R_2$}{v} \sbBlocrL{r3}{$R_3$}{r2} \sbRelieryx{f-S1}{r1} \sbRelierxy[n1]{r1}{d} \sbRelieryx{e-f}{r2} \sbRelierxy[n2]{r3}{a} \end{tikzpicture} Commentaires – Les premières commandes (de \sbEntree.. à \sbSortie{S1}..) placent les blocs de la chaîne uploads/Industriel/ schem-a-bloc.pdf

  • 20
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager