--- myst: html_meta: keywords: LaTeX, schémas, schéma, schema, circuits, circuit, électriques, tikZ, tikz, électronique --- # Comment tracer des circuits électriques avec CiruiTi*k*Z ? Bien que cela ne soit pas indispensable, une connaissance basique du package est un plus. Ce package fournit un environnement **circuitikz** dans lequel on décrit le circuit à construire. ## Charger le package et avoir les symboles européens ```{noedit} \usepackage[european resistor, RPvoltages, european current, european voltage, straightvoltages]{circuitikz} \usetikzlibrary{babel} ``` - RPvoltages (Rising Potential voltages) : les flèches de tensions suivent par défaut le sens conventionnel (pour les récepteurs et les générateurs). - straightvoltages : flèche des tensions droites (courbées par défaut) - european voltage et european current : source de tensions et d’intensité idéale au format européen ## Le circuits sans les dipôles Pour construire un circuit, pour l’instant sans dipôles, on utilise le code suivant : ``` \documentclass{article} \usepackage[european resistor, RPvoltages, european current, european voltage, straightvoltages]{circuitikz} \usetikzlibrary{babel} \begin{document} \begin{circuitikz} \draw (0,0) to (4,0) to (4,-4) to (0,-4) to (0,0); \end{circuitikz} \end{document} ``` On comprend qu’il s’agit d’indiquer des coordonnées des points. ```{attention} Bien penser à terminer chaque instruction par « ; » ``` ## Ajouter les dipôles Pour ajouter des dipôles, on indique un paramètre optionnel après la liaison **to** ``` \documentclass{article} \usepackage[european resistor, RPvoltages, european current, european voltage, straightvoltages]{circuitikz} \usetikzlibrary{babel} \begin{document} \begin{circuitikz} \draw (0,0) to [vsource] (4,0) to [lamp] (4,-4) to [R] (0,-4) to [empty led] (0,0); \end{circuitikz} \end{document} ``` Pour les autres dipôles, voir [la liste des dipôles usuels](#dipoles-usuels). ## Intensité et tension Reprenons le circuit précédent pour y ajouter les tensions et l’intensité : ``` \documentclass{article} \usepackage[european resistor, RPvoltages, european current, european voltage, straightvoltages]{circuitikz} \usetikzlibrary{babel} \begin{document} \begin{circuitikz} \draw (0,0) to [vsource, v=$u_G$, i=$i$] (4,0) to [lamp, v=$u_L$] (4,-4) to [R, v=$u_R$] (0,-4) to [empty led, v=$u_D$] (0,0); \end{circuitikz} \end{document} ``` ## Ajouter une dérivation Pour ajouter une boucle supplémentaire, on ajoute une nouvelle instruction **\draw** qui doit également se terminer par « **;** » ``` \documentclass{article} \usepackage[european resistor, RPvoltages, european current, european voltage, straightvoltages]{circuitikz} \usetikzlibrary{babel} \begin{document} \begin{circuitikz} % première boucle \draw (0,0) to [vsource, v=$u_G$, i=$i$] (4,0) to [lamp, v=$u_L$, i=$i_2$] (4,-4) to [R, v=$u_R$] (0,-4) to [empty led, v=$u_D$] (0,0); % deuxième boucle \draw (4,0) to (6,0) to [lamp, i=$i_1$] (6,-4) to (4,-4); \end{circuitikz} \end{document} ``` ## Réglages manuels Pour régler manuellement le sens des flèches, ou pour modifier leur position, on utilise les caractères **<**, **>**, **_** et **^**. ``` \documentclass{article} \usepackage[european resistor, RPvoltages, european current, european voltage, straightvoltages]{circuitikz} \usetikzlibrary{babel} \begin{document} \begin{circuitikz} \draw (0,0) to [vsource, v=$u_G$, i=$i$] (4,0) to [lamp, v=$u_L$, i^>=$i_2$, *-*] (4,-4) to [R, v=$u_R$] (0,-4) to [empty led, v=$u_D$] (0,0); % \draw (4,0) to (6,0) to [lamp, i>^=$i_1$] (6,-4) to (4,-4); \end{circuitikz} \end{document} ``` :::{note} l’ordre dans lequel on indique la position du nom et le sens du courant a une influence. On peut constater la différence en comparant les positions de i1 et i2 dans le code précédent. ::: ## Quelques exemples de dipôles :::{table} les dipôles de bases :width: auto :align: center :name: dipoles-usuels | **Dipôles** | **Argument optionnel à passer à _to_** | |:------------------------------:|:--------------------------------------:| | Résistance | R | | Résistance variable | vR | | Photorésistance | phR | | Thermistance | thR | | Diode | empty diode | | Led | empdy led | | Photodiode | empty photodiode | | Pile | battery2 | | Source de tension | vsource | | Source de tension sinusoïdale | sV | | Ampèremètre | rmeter, t=A | | Voltmètre | rmeter, t=V | | Lampe | lamp | | Interrupteur | normal open switch | | Interrupteur qu’on ouvre | opening switch | | Interrupteur qu’on ferme | closing swich | | Condensateur | C | | Bobine | L | | Fil vide (pour ajouter u ou i) | short | | Oscilloscope | oscope | ::: :::{note} Pour la Terre on définit un node (au sens de Ti*k*Z) auquel on passe l’option **eground** ::: Ci-dessous, un dernier exemple. ``` \documentclass{article} \usepackage[european resistor, RPvoltages, european current, european voltage, straightvoltages]{circuitikz} \usetikzlibrary{babel} \begin{document} \begin{circuitikz} \draw (0,0) to [sV] (0,3) to[lamp] (3,3) to [R, *-*] (3,0) -- (0,0); \draw (3,3) -- (5,3) to [oscope, l=Ocsillo] (5,0) -- (3,0); \draw (0,0) to[short, *-] (0,-.5) node[eground]{}; \end{circuitikz} \end{document} ``` ```{sources} https://nboulaire.developpez.com/tutoriels/latex/circuitikz_base/#LI-A ```