TikZ를 사용한 제어 시스템의 예를 찾았습니다.http://www.texample.net/tikz/examples/control-system-principles/. 측정 노드를 제거하고 루프만 유지하여 이 예제를 적용하고 싶었지만 tikz
초보자이기 때문에 원하는 것을 얻을 수 없었습니다. 어떤 제안이라도 환영합니다.
답변1
노드를 제거하면 해당 노드를 사용하는 경로도 변경해야 하므로 더 이상 사용할 수 없습니다.
\draw [->] (y) |- (measurements);
\draw [->] (measurements) -| node[pos=0.99] {$-$}
node [near end] {$y_m$} (sum);
하지만 당신은 다음과 같은 것을 사용할 수 있습니다
\draw [->] (y) -- ++(0,-2cm) -| node[pos=0.99] {$-$}
node [near end] {$y_m$} (sum);
코드:
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{shapes,arrows,positioning}
\tikzset{
block/.style={
draw,
fill=blue!20,
rectangle,
minimum height=3em,
minimum width=6em
},
sum/.style={
draw,
fill=blue!20,
circle,
},
input/.style={coordinate},
output/.style={coordinate},
pinstyle/.style={
pin edge={to-,thin,black}
}
}
\begin{document}
% The block diagram code is probably more verbose than necessary
\begin{tikzpicture}[auto,>=latex']
% We start by placing the blocks
\node [input, name=input] {};
\node [sum, right = of input] (sum) {};
\node [block, right = of sum] (controller) {Controller};
\node [block, right = of controller, pin={[pinstyle]above:Disturbances},
node distance=3cm] (system) {System};
% We draw an edge between the controller and system block to
% calculate the coordinate u. We need it to place the measurement block.
\draw [->] (controller) -- node[name=u] {$u$} (system);
\node [output, right =of system] (output) {};
%\node [block, below of=u] (measurements) {Measurements};
% Once the nodes are placed, connecting them is easy.
\draw [draw,->] (input) -- node {$r$} (sum);
\draw [->] (sum) -- node {$e$} (controller);
\draw [->] (system) -- node [name=y] {$y$}(output);
\draw [->] (y) -- ++(0,-2cm) -| node[pos=0.99] {$-$}
node [near end] {$y_m$} (sum);
\end{tikzpicture}
\end{document}
몇 가지 참고사항:
라이브러리를 로드하는
of=
적절한 구문에 대해 문제가 있는 구문을 변경했습니다 .=of
positioning
\tikzstyle
더 이상 사용되지 않는 구문을 적절한 구문으로 변경했습니다\tikzset
.