welcome: please sign in

Upload page content

You can upload content for the page named below. If you change the page name, you can also upload content for another page. If the page name is empty, we derive the page name from the file name.

File to load page content from
Page name
Comment

location: Computer / Latex / BlockDiagramsTikZ / ABBirb_tikz

ABBirb

../ABBirb.png

Download ABBirb.tex

\documentclass{standalone}
\usepackage[utf8]{inputenc}
\usepackage{amsmath,amsfonts,amssymb}

\usepackage{tikz}
\usetikzlibrary{shapes,positioning,calc}
\usetikzlibrary{narrow}

\tikzset{every picture/.style={auto, line width=1pt, >=narrow,
    font=\small, x=1mm, y=1mm}}

\tikzset{block/.style={draw, rectangle, line width=2pt, fill=blue!10,
    minimum height=3em, minimum width=3em, outer sep=0pt}}

\tikzset{blockMinus/.style={draw,minimum width=2em, minimum height=2em,
    line width=1pt,fill=blue!10,label=center:{$-1$}} }

\tikzset{sumcircle/.style={draw, fill=white, circle, outer sep=0pt,
    label=center:{{$\sum$}}, minimum width=2em}}

\begin{document}
\begin{tikzpicture}

\node[block](Adam){$K_i\int dt$};
\node[sumcircle, right=10mm of Adam](sumA){};
\node[sumcircle, left=15mm of Adam](sumB){};
\node[block,left=10mm of sumB](Bertil){$K_p$};
\node[sumcircle,left=10mm of Bertil](sumC){};
\node[block, right=10 mm of sumA](Cesar){Joints};
\node[block, right=10mm of Cesar,align=left](David){Forward\\Kinematics};
\node[block, above=5mm of Adam](Erik){$K_v$};
\node[block, below=5mm of Adam](Filip){$\displaystyle\frac{d}{dt}$};
\node[blockMinus,right=15mm of Filip](F2){};

\draw[->](sumB)--node[swap](aa){}(Adam);
\draw[->](aa)|-(Erik);
\draw[->](Adam)--(sumA);
\draw[->](sumA)--(Cesar);
\draw[->](Erik)-- ++(11,0) -- (sumA);
\draw[->](sumC)--(Bertil);
\draw[->](Bertil)--(sumB);
\draw[->](Cesar)--node(C2){}(David);


\coordinate[left=15mm of sumC](AA);
\draw[->](AA)--node{$\displaystyle p_{\text{ref}}$}++(8,0) -- (sumC); 
\coordinate(BB) at ($(AA |-Erik)$);
\draw[->](BB)--node{$\displaystyle v_{\text{ref}}$}++(8,0)-|(sumB);
\coordinate(CC) at ($(BB|-Erik.north) + (0,6)$);
\draw[->](CC)--node{$\displaystyle \tau_{\text{ff}}$}++(8,0)-|(sumA);
\draw[->](C2)|-(F2);
\draw[->](F2)--(Filip);
\draw[->](Filip)-|(sumB);

\coordinate(FF) at ($(C2 |- Filip) + (0,-10)$);
\node[blockMinus](bm2) at ($(sumC |- Filip)$){};

\draw[->](C2)--(FF)-|(bm2);
\draw[->](bm2)--(sumC);

\draw[->](David)--node[xshift=-2mm]{EE}++(20,0);

%\draw[->](sumC) ++(-20,0)--node[xshift=-5mm]{$AA$}(sumC);
\end{tikzpicture}
\end{document}