Skip to content
Snippets Groups Projects
Commit 4242c10e authored by Lars Jonsson's avatar Lars Jonsson
Browse files
parents c763eb8a 250a88d1
Branches
No related tags found
No related merge requests found
...@@ -23,6 +23,6 @@ Conex suggested usage of an unmanned quadracopter drone, equipped with sensors t ...@@ -23,6 +23,6 @@ Conex suggested usage of an unmanned quadracopter drone, equipped with sensors t
The project is intended to check the feasibility of mapping mine shafts with this method and not to construct a complete product. The project is intended to check the feasibility of mapping mine shafts with this method and not to construct a complete product.
Thus, unit degradation from dust, moisture or other wear inherent to the workspace is disregarded. Thus, unit degradation from dust, moisture or other wear inherent to the workspace is disregarded.
No consideration of falling rocks that could cause the copter to crash will be taken. No consideration of falling rocks that could hit the copter and cause it to crash will be taken.
It has been presented as a possible failure source, and the copter as suggested cannot feasibly dodge rocks. It has been presented as a possible failure source, but the copter as suggested cannot feasibly dodge rocks.
%TODO: Further limitations? %TODO: Further limitations?
\ No newline at end of file
\subsection{Code of Conduct}
The code follows a simple code of conduct. This generally helps avoid variable naming collisions and other issues which may result in undefined behavior.
\subsection{Static Design} \subsection{Static Design}
\subsubsection{Class Diagram} \subsubsection{Class Diagram}
...@@ -6,11 +7,12 @@ ...@@ -6,11 +7,12 @@
\centering \centering
\includegraphics[width=\textwidth]{Pictures/uml} \includegraphics[width=\textwidth]{Pictures/uml}
\end{figure} \end{figure}
\subsubsection{Module Diagram} \subsubsection{Module Diagram}
\begin{figure}[H] \begin{figure}[H]
\centering \centering
\includegraphics[width=\textwidth]{Pictures/componentchart_2}
\caption{System module diagram} \caption{System module diagram}
\includegraphics[width=\textwidth]{Pictures/componentchart_2}
\end{figure} \end{figure}
\subsection{Dynamic Design} \subsection{Dynamic Design}
......
\subsection{ADC} \subsection{ADC}
As the output of the sensors are analogue, the mircroprocessor will require usage of its Output of the IR sensors is an analogue voltage, so the Analog-to-Digital Converter (ADC) peripherals of the MCU will be used.
internal ADC (Analog-to-Digital Converter). The ADC is configured in the basic Single conversion mode, The ADC is configured in the basic Single conversion mode, as the clock speed is vastly greater than the update frequency of the sensors.
as the clock speed is vastly greater than the update frequency of the sensors. ADC conversion is ADC conversion is specified to take at most 15 clock cycles, making it possible to do in blocking mode without impeding operation too much.
specified to take at most 15 clock cycles, so the check will block until conversion is complete.
Voltage is mapped through a lookup table (one for each sensor type), approximated using data from the
corresponding data sheets.
\begin{figure}[H] \begin{figure}[H]
\centering \centering
......
\subsection{IR Sensors} \subsection{IR Sensors}
The IR sensors are intended as redundancy to the sonar. The IR sensors are intended as redundancy to the sonar.
For this task, two different kinds of IR sensors were chosen as redundancy for the sonars. The For this task, two different kinds of IR sensors were chosen as redundancy for the sonars.
long-ranged sensors are meant to cover for the sonar at short range while the short-ranged sensors The long-ranged sensors are meant to cover for the sonar at short range while the short-ranged sensors are meant to cover the remaining distance.
are meant to cover the remaining distance.
\subsubsection{Hardware details}
The long-range sensor chosen for the task is The long-range sensor chosen for the task is
\href{https://www.arrow.com/en/products/gp2y0a710k0f/sharp?wm_g_phyloc=1012273&wm_g_intloc=&gclid=CO%5F1xubhidACFUvqcgodU7cF%2Dw&utm_source=google&utm_medium=cpc&utm_term=sharp+gp2y0a710k0f&utm_campaign=int+%2D+sku+%2D+sharp+%2D+dynamic+inventory}{Sharp GP2Y0A710K0F}. \href{https://www.arrow.com/en/products/gp2y0a710k0f/sharp?wm_g_phyloc=1012273&wm_g_intloc=&gclid=CO%5F1xubhidACFUvqcgodU7cF%2Dw&utm_source=google&utm_medium=cpc&utm_term=sharp+gp2y0a710k0f&utm_campaign=int+%2D+sku+%2D+sharp+%2D+dynamic+inventory}{Sharp GP2Y0A710K0F}.
Its distance measuring range is $\SI{100}{}$ to $\SI{550}{\centi\metre}$. Its distance measuring range is $\SI{100}{}$ to $\SI{550}{\centi\metre}$.
...@@ -20,8 +18,6 @@ ...@@ -20,8 +18,6 @@
It has a distance measuring range of $\SI{20}{}$ to $\SI{150}{\centi\metre}$ with an accuracy of It has a distance measuring range of $\SI{20}{}$ to $\SI{150}{\centi\metre}$ with an accuracy of
$\pm\SI{10}{\centi\metre}$. Output of the sensor is a current, where the voltage varies between $\pm\SI{10}{\centi\metre}$. Output of the sensor is a current, where the voltage varies between
$\approx\SI{0.5}{} - \SI{2.7}{\volt} $, where lower voltage corresponds to longer distance. $\approx\SI{0.5}{} - \SI{2.7}{\volt} $, where lower voltage corresponds to longer distance.
% TODO: Add a picture?
% The voltage curve is demonstrated in Figure \ref{fig:short_ir_voltage}.
Measurements are carried out continuously every $\SI{38.3}{\milli\second}\pm \SI{9.6}{\milli\second}$, Measurements are carried out continuously every $\SI{38.3}{\milli\second}\pm \SI{9.6}{\milli\second}$,
and output is updated after maximum $\SI{5.0}{\milli\second}$.\cite{sheet:ir_short} and output is updated after maximum $\SI{5.0}{\milli\second}$.\cite{sheet:ir_short}
\ No newline at end of file
...@@ -18,7 +18,9 @@ To be able to do this we need to interact with the flight controller from our MC ...@@ -18,7 +18,9 @@ To be able to do this we need to interact with the flight controller from our MC
The flight controller do have support for four different communication protocols. The flight controller do have support for four different communication protocols.
It can take PWM inputs, where one PWM controls one channel. It can take PWM inputs, where one PWM controls one channel.
%It has
It have PPM support, which is quite the same as a PWM but it has support for 8 PWM signals on one line. It have PPM support, which is quite the same as a PWM but it has support for 8 PWM signals on one line.
%does?
It do support sBUS, which is some sort of secure serial protocol with inverted signals. It do support sBUS, which is some sort of secure serial protocol with inverted signals.
The last protocol it supports is called MSP (MultiWii Serial Protocol), which also is a serial protocol. The last protocol it supports is called MSP (MultiWii Serial Protocol), which also is a serial protocol.
Our first thought was that we wanted to implement both the MSP and PPM protocols to control the copter. Our first thought was that we wanted to implement both the MSP and PPM protocols to control the copter.
......
...@@ -81,8 +81,8 @@ ...@@ -81,8 +81,8 @@
\input{./components/sonar} \input{./components/sonar}
\input{./components/spi} \input{./components/spi}
\input{./components/uwb} \input{./components/uwb}
\input{./components/adc} \label{sec:adc}
\input{./components/ir} \label{sec:IR} \input{./components/ir} \label{sec:IR}
\input{./components/adc} \label{sec:adc}
\input{./components/flightcontroller} \input{./components/flightcontroller}
\input{./components/copterparts} \input{./components/copterparts}
\input{./components/circuitboards} \input{./components/circuitboards}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment