summaryrefslogtreecommitdiffstats
path: root/notFinishedCode/Report/test.tex.backup
diff options
context:
space:
mode:
authorRefik Hadzialic2011-10-11 13:12:51 +0200
committerRefik Hadzialic2011-10-11 13:12:51 +0200
commit4404ffd114c76bac819f2d70f89f8e2a12652738 (patch)
tree4c6ad715ee95476d72535149cba01ac1ed8edd47 /notFinishedCode/Report/test.tex.backup
parentmodified controller for website and put new information for help file. (diff)
downloadgsm-selftest-4404ffd114c76bac819f2d70f89f8e2a12652738.tar.gz
gsm-selftest-4404ffd114c76bac819f2d70f89f8e2a12652738.tar.xz
gsm-selftest-4404ffd114c76bac819f2d70f89f8e2a12652738.zip
Working on the report!
Diffstat (limited to 'notFinishedCode/Report/test.tex.backup')
-rw-r--r--notFinishedCode/Report/test.tex.backup45
1 files changed, 30 insertions, 15 deletions
diff --git a/notFinishedCode/Report/test.tex.backup b/notFinishedCode/Report/test.tex.backup
index 28acb38..edabdf7 100644
--- a/notFinishedCode/Report/test.tex.backup
+++ b/notFinishedCode/Report/test.tex.backup
@@ -105,16 +105,29 @@ Gradually we implemented a bit-by-bit of the final software. Every single step w
\section{Requirements} % chapter 2
\newpage
\section{Database design}
-How we designed our database and why, explain in this section!
+How we designed our database and why, explain in this section! Our database of choice was MySQL b
\newpage
\section{Software design} % section 2.1
\subsection{Database access} % subsection 2.1.1
+Accessing the database is of critical value to our project, therefore we had developed our own class that limits the access to the database. In the process of developing our own class we used the MySQLdb library in Python \cite{mysqlManual}.
+The database class has two working modes, a normal working mode and a debugging mode. The difference between these two modes is in the output information. In case the error handling function raises an error and it is unknown, if the debug mode is set a complete backtrace of the error will be printed out. A developer can change the mode by setting the variable \emph{debugMode=1}. The class diagram can be seen in the following figure.
+\begin{figure}[ht!]
+ \centering
+ \includegraphics[width=100mm]{dbClass.png}
+ \caption[]{Class diagram for the dbClass}
+\end{figure}
+The method names are self-explanatory and do not require extra explanations. All the outputs produced by the class can be found on the project wiki page \cite{wiki}.
\subsection{Controlling the cell phones}
Our first version of the developed program code for controlling the cell phones used predefined timed values
to send commands instead of using a state controlled approach to confirm that every command was successfuly received and executed by the cell phone.
It meant we had to make an enormous number of assumptions. In comparison to our second approach, to build a state controlled cell phone control class,
our first approach was inferior and slower. The state controlled method connected two cell phones, on the same base station, up to 15 times faster than timed approach.
-\subsection{}
+\begin{figure}[ht!]
+ \centering
+ \includegraphics[width=80mm]{serialPort.png}
+ \caption[]{GSM class diagram for controlling the cell phones}
+\end{figure}
+\subsection{subsection}
\newpage
\section{Hardware design}
In our team project we had the option to choose all the required hardware ourself beside the two BeagleBoards, which we were supplied by Konrad and Dennis.
@@ -132,10 +145,10 @@ It has been equipped with a minimum set of features to allow the
user to experience the power of the OMAP3530 and is not intended as a full development
platform as many of the features and interfaces supplied by the OMAP3530 are not
accessible from the BeagleBoard'' \cite{beagleDataSheet}.
-We run on it a special precompiled version of Ubuntu for the ARM processor type.
+We run on it a special precompiled version of Ubuntu for the ARM processor type. The Linux system boots up from an SD Card.
The board has an USB hub and network port attached to it. In our project it is connected to our
internal university LAN network and to a cell phone. We positioned the two BeagleBoards in rooms where
-we had LAN access and GSM signal coverage of our two local base stations.
+we had LAN access and GSM signal coverage of our two local base stations.
\subsection{Cell phones}
Our first attempt was to control a Nokia cell phone 3310 with the supplied USB connection cable.
@@ -150,27 +163,28 @@ At the start we did not have a cable supplied for the Siemens S55 phone. We cont
\clearpage
\section{Communication protocol}
-
+\subsection{Hanlder side}
\begin{figure}[ht!]
\centering
- \includegraphics[width=140mm]{protocolCommunicationHandler.png}
+ \includegraphics[width=130mm]{protocolCommunicationHandler.png}
\caption[]{Flowchart of the protocol, on the handler side}
\end{figure}
\begin{figure}[ht!]
\centering
- \includegraphics[width=140mm]{protocolCommunicationcControllerReceiver.png}
+ \includegraphics[width=130mm]{protocolCommunicationcControllerReceiver.png}
\caption[]{Flowchart of the protocol, on the controller side for the caller}
\end{figure}
\begin{figure}[ht!]
\centering
- \includegraphics[width=140mm]{protocolCommunicationcControllerCaller.png}
+ \includegraphics[width=130mm]{protocolCommunicationcControllerCaller.png}
\caption[]{Flowchart of the protocol, on the controller side for the receiver}
\end{figure}
+\subsection{Verification of the protocol}
+The verification results are listed here:
\begin{lstlisting}
-
(Spin Version 6.1.0 -- 2 May 2011)
+ Partial Order Reduction
Full statespace search for:
@@ -178,7 +192,7 @@ Full statespace search for:
assertion violations +
cycle checks - (disabled by -DSAFETY)
invalid end states +
-State-vector 44 byte, depth reached 65, ••• errors: 0 •••
+State-vector 44 byte, depth reached 65, errors: 0
40 states, stored
3 states, matched
43 transitions (= stored+matched)
@@ -192,7 +206,6 @@ unreached in proctype Server2
unreached in proctype Client
(0 of 67 states)
pan: elapsed time 0 seconds
-
\end{lstlisting}
@@ -430,9 +443,11 @@ If one of the fields is red it means the subsystem is not online or cannot be se
%bibliography start
\begin{thebibliography}{9}
-\bibitem{site1} H. Simpson, \emph{Proof of the Riemann
-Hypothesis}, preprint (2003), available at
-\url{http://www.math.drofnats.edu/riemann.ps}.
+\bibitem{mysqlManual} \emph{MySQLdb User's Guide}, accessed on 05.06.2011, available at \\
+\url{http://mysql-python.sourceforge.net/MySQLdb.html}.
+
+\bibitem{wiki} \emph{[2011] GSM Selftest - Wiki - Lehrstuhl f\"{u}r Kommunikationssysteme}, accessed on 20.09.2011, available at \\
+\url{http://lab.ks.uni-freiburg.de/projects/gsm-selftest/wiki}.
\bibitem{sshTunnel} R. Natarajan, \emph{3 Steps to perform SSH login without password using ssh-keygen \& ssh-copy-id}, accessed on 18.08.2011, available at
\url{http://goo.gl/fX68N}.
@@ -441,7 +456,7 @@ Hypothesis}, preprint (2003), available at
\url{http://www.tc.umn.edu/~brams006/selfsign.html}.
\bibitem{pChart} \emph{pChart}, accessed on 15.08.2011, available at
-\url{http://http://www.pchart.net/}.
+\url{http://www.pchart.net/}.
\bibitem{beagleDataSheet} \emph{BeagleBoard System Reference Manual}, accessed on 20.06.2011, available at
\url{http://beagleboard.org/static/BBSRM_latest.pdf}.