「circuitikz」を使って電気回路を描くにはどうすればいいですか?

「circuitikz」を使って電気回路を描くにはどうすればいいですか?

この回路を で描くにはどうすればいいでしょうかCircuiTikz? 似たような回路はたくさん見つけたのですが、このパッケージを使うのは初めてです。 ここに画像の説明を入力してください

私は Beamer を使用しており、最初に R のないフレームを表示し、次に C と平行な R のあるフレームを表示したいと考えています。

これは私が見つけて部分的に変更したコードです:

\begin{circuitikz}
\draw (6,2) node[op amp] (opamp2) {}
(4,2.5) to [ground]  (opamp2.-) 
(4.8,1) node [ground] {}to [short] (opamp2.+)
(opamp2.-) -- +(0,1.5) to[C] +(2.3,1.5) -|
(opamp2.out) to [short,-o] (8,2)node[right]{};
\end{circuitikz}

答え1

約 1 年前 (おそらくそれ以上)、同様の質問に対して次のような説明をしました。

%%%% circuitikz-explanation
    \documentclass[margin=3mm]{standalone}
\usepackage{circuitikz}
    \usetikzlibrary{calc}

\begin{document}
    \begin{circuitikz}[every pin/.append style={align=left, text=blue}]
    \scriptsize
%---------------------------------------------------------------%
% circuit part
  \draw
  (0, 0) node[op amp] (opamp) {\textcolor{blue}{OA}}
  (opamp.-) to[R] (-3, 0.5)
  (opamp.-) to[short,*-] ++(0,1.5) coordinate (leftC)
  to[C] (leftC -| opamp.out)
  to[short,-*] (opamp.out);
%---------------------------------------------------------------%
% explanation part

\node[pin=above left: \textcolor{red}{opamp.-}: coordinates of\\
                      OA's inverting (negative)\\
                      input] at (opamp.-) {};
\node[pin=above left: \textcolor{red}{++(0,1.5)} -- vertical offset \\
                      OA's inverting imput named     \\
                      "opamp.-" determine position   \\
                      of the coordinate (leftC)
                      ] at ($(opamp.-)+(0,1.5)$) {};
\node[pin=above right: \textcolor{red}{leftC $-|$ opamp.out}:\\
                      determine the coordinate of\\
                      intersection of lines:\\
                      horizontal from C and \\
                      vertical from OA output\\
                      (see dashed red lines)] at (leftC -| opamp.out) {};
    \draw[dashed, red]  (leftC) -- + (31mm,0)
                        (opamp.out) -- + (0,31mm);
\node[pin=below right:\textcolor{red}{opamp} is name of     \\
                      coordinates {(0,0)}. They\\
                      determine the position\\
                      of OA] at (0,0) {};
\node[pin=below left:OA's non inverting input\\
                      (not used)] at (opamp.+) {};
\node[pin=above right:\textcolor{red}{opamp.out} is name of     \\
                      OA's output coordinates] at (opamp.out) {};
    \end{circuitikz}
\end{document}

ここに画像の説明を入力してください

このコードは、あなたが望むものからわずか 2 つの要素しか離れていません。この説明の後で描画に行き詰まった場合は、どこで行き詰まったかを示す新しい質問をしてください。描画では、circuitikzパッケージのドキュメントが非常に役立ちます。

補遺(編集済み): 2 つの手順で画像を作成しましょう。最初の手順では上記の画像を繰り返し、2 番目の手順では抵抗器を追加します。

ここに画像の説明を入力してください

\documentclass[margin=3mm]{standalone}
\usepackage{circuitikz}

\begin{document}
    \begin{circuitikz}[every pin/.append style={align=left, text=blue}]
  \draw
  (0, 0) node[op amp] (opamp) {}
  (opamp.-) to[short,-o] ++(-1, 0)
  (opamp.-) to[short,*-] ++(0,1.5) coordinate (leftC)
            to[C]           (leftC -| opamp.out)
            to[short,-*]    (opamp.out)
            to[short,-o] ++ (0.5,0)
  (leftC)   to[short,*-] ++ (0,1)  coordinate (leftR) 
            to[R]           (leftR -| opamp.out)
            to[short,-*]    (leftC -| opamp.out)
   (opamp.+) -- ++ (0,-0.5) node[ground] {};
    \end{circuitikz}
\end{document}

関連情報