Steuerungssystemdiagramm

Steuerungssystemdiagramm

Ein Beispiel für eine Steuerung mit TikZ fand ich inhttp://www.texample.net/tikz/examples/control-system-principles/. Ich wollte dieses Beispiel anpassen, indem ich den Messknoten entferne und nur die Schleife behalte, aber als tikzNeuling konnte ich nicht das erreichen, was ich wollte. Jeder Vorschlag ist willkommen.

Antwort1

Wenn Sie den Knoten entfernen, müssen Sie auch die Pfade ändern, die diesen Knoten verwenden, sodass Sie

\draw [->] (y) |- (measurements);
\draw [->] (measurements) -| node[pos=0.99] {$-$} 
  node [near end] {$y_m$} (sum);

aber Sie können etwas wie verwenden

\draw [->] (y) -- ++(0,-2cm) -| node[pos=0.99] {$-$} 
  node [near end] {$y_m$} (sum);

Der Code:

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

Bildbeschreibung hier eingeben

Einige Anmerkungen:

  1. Ich habe die problematische of=Syntax durch die entsprechende =ofSyntax zum Laden der positioningBibliothek ersetzt.

  2. Ich habe die veraltete \tikzstyleSyntax durch die entsprechende \tikzsetSyntax ersetzt.

verwandte Informationen