library/Doku/Doxygen/latex/db/dd5/group__lowerlevelservomeths.tex

234 lines
12 KiB
TeX
Raw Normal View History

2018-11-13 11:15:10 +01:00
\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}