如何借助“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

大约一年前(可能更早),我对类似的问题给出了以下解释:

%%%% 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}

在此处输入图片描述

此代码距离您想要的内容只有两个元素。如果您在阅读此说明后在绘图中遇到困难,请提出新问题以显示您遇到的问题。在绘图中,circuitikz包文档会大有帮助。

附录(已编辑): 让我通过两个步骤制作您的图像:第一步重复上图,第二步添加电阻器:

在此处输入图片描述

\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}

相关内容