I've created a simple feedback structure but cannot cause the utmost right block not to overlap with the circle. I've tried altering this block's width with minimum width and text width, but it doesn't do the trick. What do I need to change, to move the block to the right?
\begin{tikzpicture}[auto, node distance=2cm,>=latex']
\tikzstyle{block} = [draw, rectangle, minimum height=2em, minimum width=3em, text centered, text depth=0pt]
\tikzstyle{sum} = [draw, circle, node distance=1.5cm]
\node (input) {};
\node [above, above of=input] (gyro_input) {};
\node [block, right of=input] (error) { $\hat{R}^T \bar{R}$ };
\node [block, right of=error] (normalize) {$P_a(\tilde{R})$};
\node [block, right of=normalize] (gain) {$C(s)$};
\node [sum, right of=gain] (sum2) {};
\node [block, right of=sum2] (correction) {$\dot{\hat{R}} = \hat{R} ( \bar{\Omega}_\times + C(s) P_a (\tilde{R}))$};
\node [right of=correction] (output) {};
\node [block, above of=sum2] (R_dynamics) {$\bar{\Omega}_\times$};
\node [block, below of=error] (transpose) {$\hat{R}^T$};
\draw [->] (input) node [above] {$\bar{R}$} -- (error);
\draw [->] (error) -- (normalize) node [midway, above] {$\tilde{R}$};
\draw [->] (normalize) -- (gain);
\draw [->] (gain) -- (sum2);
\draw [->] (sum2) -- (correction);
\draw [->] (correction) -- node (fork) {} (output) node [above] {$\hat{R}$};
\draw [->] (gyro_input) node [above] {$\bar{\Omega}$} -- (R_dynamics);
\draw [->] (R_dynamics) -- (sum2);
\draw [->] (fork) |- (transpose);
\draw [->] (transpose) -- (error);
\end{tikzpicture}
The outcome of the above is:



