Comment tracer des circuits électriques avec CiruiTikZ ?#

Bien que cela ne soit pas indispensable, une connaissance basique du package tikz est un plus.

Ce package fournit un environnement circuitikz dans lequel on décrit le circuit à construire.

1.  Charger le package et avoir les symboles européens#

\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

2.  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 « ; »

3.  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.

4.  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}

5.  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}

6.  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.

7.  Quelques exemples de dipôles#

les dipôles de bases#

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 TikZ) 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}