Consertando um diagrama de circuito

Consertando um diagrama de circuito

Fazendo alguns circuitos elétricos no tikz pela primeira vez, e preciso replicar a imagem a seguir

insira a descrição da imagem aqui

Não é um circuito muito complicado. Agora aqui está o que eu fiz até agora

insira a descrição da imagem aqui

\documentclass[10pt,a4paper]{minimal}
\usepackage{tikz}
\usetikzlibrary{circuits}
\usetikzlibrary{circuits.ee.IEC}
\tikzset{circuit declare symbol = ac source}
\tikzset{set ac source graphic = ac source IEC graphic}
\tikzset{
         ac source IEC graphic/.style=
          {
           transform shape,
           circuit symbol lines,
           circuit symbol size = width 3 height 3,
           shape=generic circle IEC,
           /pgf/generic circle IEC/before background=
            {
             \pgfpathmoveto{\pgfpoint{-0.8pt}{0pt}}
             \pgfpathsine{\pgfpoint{0.4pt}{0.4pt}}
             \pgfpathcosine{\pgfpoint{0.4pt}{-0.4pt}}
             \pgfpathsine{\pgfpoint{0.4pt}{-0.4pt}}
             \pgfpathcosine{\pgfpoint{0.4pt}{0.4pt}}
             \pgfusepathqstroke
            }
          }
        }
\begin{document}

\begin{tikzpicture}[circuit ee IEC]
  \draw (0,0) to [capacitor={info={$q$\ \ $-q$}}]     ++(1, 0)
              to [resistor={info ={$R$}}]             ++(2, 0) 
              to [current direction' = {info = {$I$}}]++(0,-2) 
              to [inductor={info=$L$}]                  (0,-2)  
              to [ac source={info={$V$}}]               (0,0);
\end{tikzpicture}

\end{document}

Não tenho ideia do que fiz até agora, apenas copiei exemplos aleatoriamente da internet. Os nós estão uma bagunça, pois continuei tentando até que todos se conectassem. O que significa ++? E alguém poderia me ajudar a entender como consertar meu diagrama de circuito para ficar parecido com a imagem acima? =)

Responder1

Minha solução leva a:

insira a descrição da imagem aqui

Código:

\documentclass[10pt,a4paper]{minimal}
\usepackage{tikz}
\usetikzlibrary{circuits}
\usetikzlibrary{circuits.ee.IEC}
\tikzset{circuit declare symbol = ac source}
\tikzset{set ac source graphic = ac source IEC graphic}
\tikzset{
         ac source IEC graphic/.style=
          {
           transform shape,
           circuit symbol lines,
           circuit symbol size = width 3 height 3,
           shape=generic circle IEC,
           /pgf/generic circle IEC/before background=
            {
             \pgftransformrotate{90}
             \pgfpathmoveto{\pgfpoint{-0.575pt}{0pt}}
             \pgfpathsine{\pgfpoint{0.3pt}{0.3pt}}
             \pgfpathcosine{\pgfpoint{0.3pt}{-0.3pt}}
             \pgfpathsine{\pgfpoint{0.3pt}{-0.3pt}}
             \pgfpathcosine{\pgfpoint{0.3pt}{0.3pt}}
             \pgfusepathqstroke
            }
          }
        }
\begin{document}
\scalebox{1.5}{
\begin{tikzpicture}[circuit ee IEC]
  \draw (0,0) to [capacitor={info'={$C$}}]     ++(1.5, 0)
              to [resistor={info'={$R$}}]             ++(2.5, 0) 
              to [current direction = {info' = {$I$}}]++(0,-3) 
              to [inductor={info'=$L$}]                  (0,-3)  
              to [ac source={info={$V$}}]               (0,0);

\node[above right] at (0.75,0){$-q$};        
\node[above left] at (0.75,0){$q$ \ };   
\end{tikzpicture}
}
\end{document}

Do ponto inicial (0,0), todos os elementos são exibidos em sequência. Por exemplo, o capacitor é colocado do ponto inicial até a coordenada (1.5,0)(esse é o significado por trás de ++). É possível visualizar informações com a tecla infoou info'; em geral 'permite inverter o posicionamento de uma etiqueta ou a direção da corrente: é por isso que no meu exemplo usei apenas current directionpara deixar a seta apontar para baixo.

No que diz respeito às etiquetas qe -qem vez de inseri-las com a chave infopreferi utilizar nós simples: por um lado permite introduzir Ccom infoe por outro permite um melhor posicionamento de qe -q.

Por fim, para girar o símbolo da fonte de tensão simplesmente adicionei ao seu código \pgftransformrotate{90}e reduzi um pouco o tamanho.

Responder2

@ClaudioFiandrino me venceu para responder a pergunta sobre ++ :), mas tenho algumas outras melhorias/observações a fazer. Veja o código modificado abaixo:

\documentclass[10pt,a4paper]{standalone}
\usepackage{tikz}
\usetikzlibrary{circuits}
\usetikzlibrary{circuits.ee.IEC}
\tikzset{circuit declare symbol = ac source}
\tikzset{set ac source graphic = ac source IEC graphic}
\tikzset{
         ac source IEC graphic/.style=
          {
           transform shape,
           circuit symbol lines,
           circuit symbol size = width 3 height 3,
           shape=generic circle IEC,
           /pgf/generic circle IEC/before background=
            {
             \pgftransformresetnontranslations
             \pgfpathmoveto{\pgfpoint{-0.8\tikzcircuitssizeunit}{0\tikzcircuitssizeunit}}
             \pgfpathsine{\pgfpoint{0.4\tikzcircuitssizeunit}{0.4\tikzcircuitssizeunit}}
             \pgfpathcosine{\pgfpoint{0.4\tikzcircuitssizeunit}{-0.4\tikzcircuitssizeunit}}
             \pgfpathsine{\pgfpoint{0.4\tikzcircuitssizeunit}{-0.4\tikzcircuitssizeunit}}
             \pgfpathcosine{\pgfpoint{0.4\tikzcircuitssizeunit}{0.4\tikzcircuitssizeunit}}
             \pgfusepathqstroke
            }
          }
        }
\begin{document}

\begin{tikzpicture}[circuit ee IEC]
  \draw (0,0) to [capacitor={info={$q$\ \ $-q$}}]     ++(1, 0)
              to [resistor={info ={$R$}}]             ++(2, 0) 
              to [current direction = {info = {$I$}}]++(0,-2) 
              to [inductor={info=$L$}]                  (0,-2)  
              to [ac source={info={$V$}}]               (0,0);
\end{tikzpicture}

\end{document}

que tem isso como saída:

insira a descrição da imagem aqui

Primeiro, é uma boa ideia usar \tikzcircuitssizeunitcomo unidade, então a figura sempre será dimensionada corretamente.

Em segundo lugar, \pgftransformresetnontranslationstambém é mais geral do que ter uma especificação explícita para uma rotação de 90 graus e torna o gráfico reutilizável para qualquer ângulo sem esforço extra.

Por último, sobre a fonte AC, gostaria de apontar para istopergunta(crédito para @Jake por sua ótima resposta) postado por mim (o primeiro que postei aqui em TeX.SE... ahhh - nostalgia... :)).

informação relacionada