233 lines
12 KiB
TeX
233 lines
12 KiB
TeX
\hypertarget{group__lowerlevelservomeths}{}\section{Methods}
|
|
\label{group__lowerlevelservomeths}\index{Methods@{Methods}}
|
|
\subsection*{Functions}
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
void \hyperlink{group__lowerlevelservomeths_ga687beb327e20f4d0541d1ac9e29c01c3}{Code\+Racer\+::servo\+\_\+settings} (uint8\+\_\+t pos\+\_\+center, uint8\+\_\+t pos\+\_\+left, uint8\+\_\+t pos\+\_\+right, uint8\+\_\+t sweep\+\_\+left\+\_\+pos, uint8\+\_\+t sweep\+\_\+right\+\_\+pos)
|
|
\begin{DoxyCompactList}\small\item\em Overwrites the default settings taken from header file by the parameters given to this method. \end{DoxyCompactList}\item
|
|
void \hyperlink{group__lowerlevelservomeths_ga1e9afe1f27dfc9796b4c9b3dba245365}{Code\+Racer\+::servo\+\_\+sweep} ()
|
|
\begin{DoxyCompactList}\small\item\em Turns sweeping of the servo from left to right and back on. \end{DoxyCompactList}\item
|
|
void \hyperlink{group__lowerlevelservomeths_gaac73bf99cf2d19f7b1987156aa842b74}{Code\+Racer\+::servo\+\_\+set\+\_\+to\+\_\+right} ()
|
|
\begin{DoxyCompactList}\small\item\em Drives the servo to the postion that is defined by \#servo\+\_\+right\+\_\+pos. \end{DoxyCompactList}\item
|
|
void \hyperlink{group__lowerlevelservomeths_gaef7d1903b65a0a8ab4fafdc53080b07d}{Code\+Racer\+::servo\+\_\+set\+\_\+to\+\_\+left} ()
|
|
\begin{DoxyCompactList}\small\item\em Drives the servo to the postion that is defined by \#servo\+\_\+left\+\_\+pos. \end{DoxyCompactList}\item
|
|
void \hyperlink{group__lowerlevelservomeths_gad1f28aa91079e88fc3093e3074edfb32}{Code\+Racer\+::servo\+\_\+set\+\_\+to\+\_\+center} ()
|
|
\begin{DoxyCompactList}\small\item\em Drives the servo to the postion that is defined by \#servo\+\_\+center\+\_\+pos. \end{DoxyCompactList}\item
|
|
uint8\+\_\+t \hyperlink{group__lowerlevelservomeths_ga0149226288bff2290d52ed1cbd674edd}{Code\+Racer\+::servo\+\_\+set\+\_\+position\+\_\+wait} (uint8\+\_\+t position)
|
|
\begin{DoxyCompactList}\small\item\em Drive the servo to the postion given to this method. \end{DoxyCompactList}\item
|
|
unsigned long \hyperlink{group__lowerlevelservomeths_gab8831340049de6dbddeda997745725e6}{Code\+Racer\+::servo\+\_\+set\+\_\+position} (uint8\+\_\+t position)
|
|
\begin{DoxyCompactList}\small\item\em Drive the servo to the postion given to this method. \end{DoxyCompactList}\end{DoxyCompactItemize}
|
|
|
|
|
|
\subsection{Detailed Description}
|
|
|
|
|
|
\subsection{Function Documentation}
|
|
\mbox{\Hypertarget{group__lowerlevelservomeths_ga687beb327e20f4d0541d1ac9e29c01c3}\label{group__lowerlevelservomeths_ga687beb327e20f4d0541d1ac9e29c01c3}}
|
|
\index{Methods@{Methods}!servo\+\_\+settings@{servo\+\_\+settings}}
|
|
\index{servo\+\_\+settings@{servo\+\_\+settings}!Methods@{Methods}}
|
|
\subsubsection{\texorpdfstring{servo\+\_\+settings()}{servo\_settings()}}
|
|
{\footnotesize\ttfamily void Code\+Racer\+::servo\+\_\+settings (\begin{DoxyParamCaption}\item[{uint8\+\_\+t}]{pos\+\_\+center, }\item[{uint8\+\_\+t}]{pos\+\_\+left, }\item[{uint8\+\_\+t}]{pos\+\_\+right, }\item[{uint8\+\_\+t}]{sweep\+\_\+left\+\_\+pos, }\item[{uint8\+\_\+t}]{sweep\+\_\+right\+\_\+pos }\end{DoxyParamCaption})}
|
|
|
|
|
|
|
|
Overwrites the default settings taken from header file by the parameters given to this method.
|
|
|
|
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em pos\+\_\+center} & The postion at which the servo moves to straight forward. Default is 90. Allowed 10 $<$= pos\+\_\+center $<$= 170. \\
|
|
\hline
|
|
{\em pos\+\_\+left} & The postion at which the servo moves to the left. Default is 170. Allowed 10 $<$= pos\+\_\+center $<$= 170. \\
|
|
\hline
|
|
{\em pos\+\_\+right} & The postion at which the servo moves to the right. Default is 10. Allowed 10 $<$= pos\+\_\+center $<$= 170. \\
|
|
\hline
|
|
{\em sweep\+\_\+left\+\_\+pos} & If the servo is sweeping from left to the right -\/ this defines the most left postion. Default is 140. Allowed 10 $<$= pos\+\_\+center $<$= 170. \\
|
|
\hline
|
|
{\em sweep\+\_\+right\+\_\+pos} & If the servo is sweeping from left to the right -\/ this defines the most right postion. Default is 40. Allowed 10 $<$= pos\+\_\+center $<$= 170. \\
|
|
\hline
|
|
\end{DoxyParams}
|
|
\begin{DoxyReturn}{Returns}
|
|
nothing
|
|
\end{DoxyReturn}
|
|
|
|
|
|
Definition at line 510 of file Code\+Racer.\+cpp.
|
|
|
|
|
|
\begin{DoxyCode}
|
|
511 \{
|
|
512 servo\_center\_pos = pos\_center;
|
|
513 servo\_left\_pos = pos\_left;
|
|
514 servo\_right\_pos = pos\_right;
|
|
515 servo\_sweep\_left\_pos = sweep\_left\_pos;
|
|
516 servo\_sweep\_right\_pos = sweep\_right\_pos;
|
|
517 \}
|
|
\end{DoxyCode}
|
|
\mbox{\Hypertarget{group__lowerlevelservomeths_ga1e9afe1f27dfc9796b4c9b3dba245365}\label{group__lowerlevelservomeths_ga1e9afe1f27dfc9796b4c9b3dba245365}}
|
|
\index{Methods@{Methods}!servo\+\_\+sweep@{servo\+\_\+sweep}}
|
|
\index{servo\+\_\+sweep@{servo\+\_\+sweep}!Methods@{Methods}}
|
|
\subsubsection{\texorpdfstring{servo\+\_\+sweep()}{servo\_sweep()}}
|
|
{\footnotesize\ttfamily void Code\+Racer\+::servo\+\_\+sweep (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
|
|
|
|
|
|
|
|
Turns sweeping of the servo from left to right and back on.
|
|
|
|
The sweeping range is defind by \#servo\+\_\+sweep\+\_\+left\+\_\+pos and \#servo\+\_\+sweep\+\_\+right\+\_\+pos attributes. Both can be set by either servo\+\_\+settings() or as public members. Every time servo\+\_\+sweep() is called the servo is driven by 5 steps until either \#servo\+\_\+sweep\+\_\+left\+\_\+pos or \#servo\+\_\+sweep\+\_\+right\+\_\+pos is reached. Then it will turn the direction and step to the other side every time this method is called. \begin{DoxyReturn}{Returns}
|
|
nothing
|
|
\end{DoxyReturn}
|
|
|
|
|
|
Definition at line 526 of file Code\+Racer.\+cpp.
|
|
|
|
|
|
\begin{DoxyCode}
|
|
527 \{
|
|
528 uint8\_t position;
|
|
529 \_servo\_sweep = \textcolor{keyword}{true};
|
|
530 \textcolor{keywordflow}{if} (millis() - \_servo\_position\_set\_at\_ms > SERVO\_SWEEP\_MS) \{
|
|
531 position = \_servo\_position + \_servo\_sweep\_step;
|
|
532 \textcolor{comment}{//sprintf(\_debugmsg,"[%s] current position=%ld newpostion=%ld", \_\_func\_\_, \_servo\_position,
|
|
position);}
|
|
533 \textcolor{keywordflow}{if} ((position >= servo\_sweep\_left\_pos) || (position >= SERVO\_MAX\_POSITION)) \{
|
|
534 position = servo\_sweep\_left\_pos;
|
|
535 \_servo\_sweep\_step = SERVO\_SWEEP\_TO\_RIGHT\_STEP;
|
|
536 \}
|
|
537 \textcolor{keywordflow}{if} ((position <= servo\_sweep\_right\_pos) || (position <= SERVO\_MIN\_POSITION)) \{
|
|
538 position = servo\_sweep\_right\_pos;
|
|
539 \_servo\_sweep\_step = SERVO\_SWEEP\_TO\_LEFT\_STEP;
|
|
540 \}
|
|
541 \_servo\_set\_position(position);
|
|
542 \}
|
|
543 \}
|
|
\end{DoxyCode}
|
|
\mbox{\Hypertarget{group__lowerlevelservomeths_gaac73bf99cf2d19f7b1987156aa842b74}\label{group__lowerlevelservomeths_gaac73bf99cf2d19f7b1987156aa842b74}}
|
|
\index{Methods@{Methods}!servo\+\_\+set\+\_\+to\+\_\+right@{servo\+\_\+set\+\_\+to\+\_\+right}}
|
|
\index{servo\+\_\+set\+\_\+to\+\_\+right@{servo\+\_\+set\+\_\+to\+\_\+right}!Methods@{Methods}}
|
|
\subsubsection{\texorpdfstring{servo\+\_\+set\+\_\+to\+\_\+right()}{servo\_set\_to\_right()}}
|
|
{\footnotesize\ttfamily void Code\+Racer\+::servo\+\_\+set\+\_\+to\+\_\+right (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
|
|
|
|
|
|
|
|
Drives the servo to the postion that is defined by \#servo\+\_\+right\+\_\+pos.
|
|
|
|
\begin{DoxyReturn}{Returns}
|
|
nothing
|
|
\end{DoxyReturn}
|
|
|
|
|
|
Definition at line 548 of file Code\+Racer.\+cpp.
|
|
|
|
|
|
\begin{DoxyCode}
|
|
549 \{
|
|
550 servo\_set\_position\_wait(servo\_right\_pos);
|
|
551 \}
|
|
\end{DoxyCode}
|
|
\mbox{\Hypertarget{group__lowerlevelservomeths_gaef7d1903b65a0a8ab4fafdc53080b07d}\label{group__lowerlevelservomeths_gaef7d1903b65a0a8ab4fafdc53080b07d}}
|
|
\index{Methods@{Methods}!servo\+\_\+set\+\_\+to\+\_\+left@{servo\+\_\+set\+\_\+to\+\_\+left}}
|
|
\index{servo\+\_\+set\+\_\+to\+\_\+left@{servo\+\_\+set\+\_\+to\+\_\+left}!Methods@{Methods}}
|
|
\subsubsection{\texorpdfstring{servo\+\_\+set\+\_\+to\+\_\+left()}{servo\_set\_to\_left()}}
|
|
{\footnotesize\ttfamily void Code\+Racer\+::servo\+\_\+set\+\_\+to\+\_\+left (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
|
|
|
|
|
|
|
|
Drives the servo to the postion that is defined by \#servo\+\_\+left\+\_\+pos.
|
|
|
|
\begin{DoxyReturn}{Returns}
|
|
nothing
|
|
\end{DoxyReturn}
|
|
|
|
|
|
Definition at line 556 of file Code\+Racer.\+cpp.
|
|
|
|
|
|
\begin{DoxyCode}
|
|
557 \{
|
|
558 servo\_set\_position\_wait(servo\_left\_pos);
|
|
559 \}
|
|
\end{DoxyCode}
|
|
\mbox{\Hypertarget{group__lowerlevelservomeths_gad1f28aa91079e88fc3093e3074edfb32}\label{group__lowerlevelservomeths_gad1f28aa91079e88fc3093e3074edfb32}}
|
|
\index{Methods@{Methods}!servo\+\_\+set\+\_\+to\+\_\+center@{servo\+\_\+set\+\_\+to\+\_\+center}}
|
|
\index{servo\+\_\+set\+\_\+to\+\_\+center@{servo\+\_\+set\+\_\+to\+\_\+center}!Methods@{Methods}}
|
|
\subsubsection{\texorpdfstring{servo\+\_\+set\+\_\+to\+\_\+center()}{servo\_set\_to\_center()}}
|
|
{\footnotesize\ttfamily void Code\+Racer\+::servo\+\_\+set\+\_\+to\+\_\+center (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
|
|
|
|
|
|
|
|
Drives the servo to the postion that is defined by \#servo\+\_\+center\+\_\+pos.
|
|
|
|
\begin{DoxyReturn}{Returns}
|
|
nothing
|
|
\end{DoxyReturn}
|
|
|
|
|
|
Definition at line 564 of file Code\+Racer.\+cpp.
|
|
|
|
|
|
\begin{DoxyCode}
|
|
565 \{
|
|
566 servo\_set\_position\_wait(servo\_center\_pos);
|
|
567 \}
|
|
\end{DoxyCode}
|
|
\mbox{\Hypertarget{group__lowerlevelservomeths_ga0149226288bff2290d52ed1cbd674edd}\label{group__lowerlevelservomeths_ga0149226288bff2290d52ed1cbd674edd}}
|
|
\index{Methods@{Methods}!servo\+\_\+set\+\_\+position\+\_\+wait@{servo\+\_\+set\+\_\+position\+\_\+wait}}
|
|
\index{servo\+\_\+set\+\_\+position\+\_\+wait@{servo\+\_\+set\+\_\+position\+\_\+wait}!Methods@{Methods}}
|
|
\subsubsection{\texorpdfstring{servo\+\_\+set\+\_\+position\+\_\+wait()}{servo\_set\_position\_wait()}}
|
|
{\footnotesize\ttfamily uint8\+\_\+t Code\+Racer\+::servo\+\_\+set\+\_\+position\+\_\+wait (\begin{DoxyParamCaption}\item[{uint8\+\_\+t}]{position }\end{DoxyParamCaption})}
|
|
|
|
|
|
|
|
Drive the servo to the postion given to this method.
|
|
|
|
The method will wait until the servo has reached its new position.
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em position} & Position the servo will be drived to. Allowed are values 10$<$=postion$<$=170. 10 is at the right hand side, 170 at the left hand side. \\
|
|
\hline
|
|
\end{DoxyParams}
|
|
\begin{DoxyReturn}{Returns}
|
|
The new servo position
|
|
\end{DoxyReturn}
|
|
|
|
|
|
Definition at line 575 of file Code\+Racer.\+cpp.
|
|
|
|
|
|
\begin{DoxyCode}
|
|
576 \{
|
|
577 \_servo\_sweep = \textcolor{keyword}{false};
|
|
578 \textcolor{keywordtype}{unsigned} \textcolor{keywordtype}{long} wait\_time\_ms = \_servo\_set\_position(position);
|
|
579 delay(wait\_time\_ms);
|
|
580 \textcolor{keywordflow}{return}(\_servo\_position);
|
|
581 \}
|
|
\end{DoxyCode}
|
|
\mbox{\Hypertarget{group__lowerlevelservomeths_gab8831340049de6dbddeda997745725e6}\label{group__lowerlevelservomeths_gab8831340049de6dbddeda997745725e6}}
|
|
\index{Methods@{Methods}!servo\+\_\+set\+\_\+position@{servo\+\_\+set\+\_\+position}}
|
|
\index{servo\+\_\+set\+\_\+position@{servo\+\_\+set\+\_\+position}!Methods@{Methods}}
|
|
\subsubsection{\texorpdfstring{servo\+\_\+set\+\_\+position()}{servo\_set\_position()}}
|
|
{\footnotesize\ttfamily unsigned long Code\+Racer\+::servo\+\_\+set\+\_\+position (\begin{DoxyParamCaption}\item[{uint8\+\_\+t}]{position }\end{DoxyParamCaption})}
|
|
|
|
|
|
|
|
Drive the servo to the postion given to this method.
|
|
|
|
The method will not wait until the servo has reached its new position.
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em position} & Position the servo will be drived to. Allowed are values 10$<$=postion$<$=170. 10 is at the right hand side, 170 at the left hand side. \\
|
|
\hline
|
|
\end{DoxyParams}
|
|
\begin{DoxyReturn}{Returns}
|
|
The time in ms the servo will need to reach the new position
|
|
\end{DoxyReturn}
|
|
|
|
|
|
Definition at line 589 of file Code\+Racer.\+cpp.
|
|
|
|
|
|
\begin{DoxyCode}
|
|
590 \{
|
|
591 \_servo\_sweep = \textcolor{keyword}{false};
|
|
592 \textcolor{keywordtype}{unsigned} \textcolor{keywordtype}{long} wait\_time\_ms = \_servo\_set\_position(position);
|
|
593 \textcolor{keywordflow}{return}(wait\_time\_ms);
|
|
594 \}
|
|
\end{DoxyCode}
|