Мне нужна помощь в рисовании этой электрической схемы с помощью circuitikz

Мне нужна помощь в рисовании этой электрической схемы с помощью circuitikz

Я новичок на Circuitikz. Так что мне нужна помощь в рисовании небольшой схемы для лабораторного отчета. Я был бы очень признателен, если бы кто-нибудь мне помог. Вот схема:

введите описание изображения здесь

Мне удалось сделать это:

\begin{circuitikz}
    % Variable Voltage Source
    \draw (0,0) to[american voltage source, v=$V_s$] (0,3);
    
    % Draw node
    \node at (1,3) [circle, draw, fill=black, inner sep=0pt, minimum size=3pt] {};
    
    % Connect to node
    \draw (0,3) to[short] (1,3);

    % Open circuit
    \draw (1,4) -- (2,3) to[short, *-*] (2,3);
    
    % Ammeter
    \draw (2,3) -- (2.5,3) to[ammeter, l=A] (4,3) -- (5,3);
    
    \draw (5,3) -- (5,0);
      
    \draw (0,0) to[short] (0,-2);

    \draw (0,-2) to[voltmeter] (5,-2);

    \draw (5,0) to[short] (5,-2);

    \draw (0,0) to[lamp, *-*] (5,0);
\end{circuitikz}

И вот что получилось:

введите описание изображения здесь

Это нормально? Или можно улучшить?

решение1

Я бы использовал этот код: если вы изучите примеры в обучающей части руководства, вы увидите преимущества использования относительных координат, именованных координат и перпендикулярного «трюка» -|и |-.

\documentclass[border=2mm]{standalone}
% always select a type of voltage orientation
\usepackage[RPvoltages]{circuitikz}
\begin{document}
\begin{circuitikz}
    % Variable Voltage Source
    % you are using an american symbol with european (arrow) voltage notation, without
    % specifying a direction style. Avoid the horrible double marking of the voltage
    % better use relative movements, name the generator for future reference
    \draw (0,0) coordinate(start)
        to[american voltage source, l=$V_s$, name=vv] ++(0,2)
        % continue the drawing with the switch:
        |- ++(1,1) to[nos=L, *-*] ++(1,0)
        % Ammeter: the newer rmeterwa symbol is, in my opinion, better
        to[rmeterwa, t=A] ++(3,0)
        % move to the same vertical position than start
        coordinate(upper left) -- (upper left |- start)
        % close with the lamp
        coordinate(start lamp) to [lamp, *-*] (start);
    % using one path gives better "corner" junctions, as above.
    % now add the voltmeter
    \draw (start) -- ++(0,-2) coordinate(start v)
        to[rmeterwa, t=V] (start v -| start lamp) -- (start lamp);
    % add a tunable arrow to the generator, to show it's variable
    \ctikztunablearrow[color=gray]{2}{1.2}{-30}{vv}
\end{circuitikz}
\end{document}

введите описание изображения здесь

Все числа в схеме являются относительными, а затем соединения выполняются с помощью именованных координат. Так что, если вы решите, что рисунок слишком широкий, вы можете просто изменить амперметр ++(3,0)на ++(2,0):

введите описание изображения здесь

не трогая никакую другую часть кода.

Связанный контент