\section{brushless Struct Reference}
\label{structbrushless}\index{brushless@{brushless}}
{\tt \#include $<$brushless.h$>$}

\subsection*{Data Fields}
\begin{CompactItemize}
\item 
brushless\_\-speed {\bf speed}
\item 
brushless\_\-position {\bf position}
\end{CompactItemize}


\subsection{Detailed Description}
This module handles a \doxyref{brushless}{p.}{structbrushless} motor with 3 phases, wired in triangle or star. 3 hall sensors are used wih digital output. 3 PWM are outputted, these MUST be synchronized !!

The control value is a voltage. This can be assimiled to a torque at low speeds.

There is a possibility of also of limiting the speed. This is accomplished by slowing down the sampling speed of the sensors. Doing this,the motor effective torque is reduced when the speed is such that the sensor actuation approaches the sampling frequency. use this technique carefully, because the motor has already his full voltage applied, an can dissipate a lot of energy, especially at low speeds.

there is no external manage function, as the manage is done at the PWM speed (overflow of one PWM timer is used.) This function is speed optimized.

This module handles two \doxyref{brushless}{p.}{structbrushless} motors with 3 phases, wired in triangle or star. 2x 3 hall sensors are used wih digital output. 2x 3 PWM are outputted, these MUST be synchronized !!

The control value is a voltage. This can be assimiled to a torque at low speeds.

There is a possibility of also of limiting the speed. This is accomplished by slowing down the sampling speed of the sensors. Doing this,the motor effective torque is reduced when the speed is such that the sensor actuation approaches the sampling frequency. use this technique carefully, because the motor has already his full voltage applied, an can dissipate a lot of energy, especially at low speeds.

there is no external manage function, as the manage is done at the PWM speed (overflow of one PWM timer is used.) This function is speed optimized. 

Definition at line 49 of file brushless.h.

\subsection{Field Documentation}
\index{brushless@{brushless}!speed@{speed}}
\index{speed@{speed}!brushless@{brushless}}
\subsubsection[speed]{\setlength{\rightskip}{0pt plus 5cm}brushless\_\-speed {\bf brushless::speed}}\label{structbrushless_0b58883f572ac19035fdfd3c854c5050}




Definition at line 51 of file brushless.h.

Referenced by brushless\_\-get\_\-speed(), and brushless\_\-speed\_\-update\_\-manage().\index{brushless@{brushless}!position@{position}}
\index{position@{position}!brushless@{brushless}}
\subsubsection[position]{\setlength{\rightskip}{0pt plus 5cm}brushless\_\-position {\bf brushless::position}}\label{structbrushless_4824e3a827a2acb092f712d0ff9d48d9}




Definition at line 52 of file brushless.h.

Referenced by brushless\_\-0\_\-set\_\-position(), brushless\_\-1\_\-set\_\-position(), brushless\_\-get\_\-pos(), brushless\_\-speed\_\-update\_\-manage(), and SIGNAL().

The documentation for this struct was generated from the following files:\begin{CompactItemize}
\item 
aversive\_\-10-03-12/modules/devices/brushless\_\-motors/brushless\_\-3phase\_\-digital\_\-hall/{\bf brushless.h}\item 
aversive\_\-10-03-12/modules/devices/brushless\_\-motors/brushless\_\-3phase\_\-digital\_\-hall\_\-double/{\bf brushless.h}\end{CompactItemize}
