Update the version.sh script

Until now the script could handle only version numbers up to 9,
now it can handle multiple digits. Some source cleaning included.
master
Peter Babič 8 years ago
parent e7fb8cf64d
commit d76cdc759c
  1. 2
      analytical.tex
  2. BIN
      figures/android_scr.png
  3. 18
      problemexpres.tex
  4. BIN
      tukethesis.pdf
  5. 2
      version.sh

@ -3,6 +3,7 @@ The device under test will be referred to as \textbf{appliance}. The requirement
They are also divided to a hardware part and software part. Software is easier to change than hardware and requires hardware to be run on. Software is also limited by the resources provided by the hardware. Therefore, hardware needs to be logically completed first and are also highlighted in figures \ref{f:client_node} and \ref{f:serv_node}.
\subsection{Hardware requirements}
\renewcommand{\theenumi}{\Alph{enumi}}
@ -35,6 +36,7 @@ They are also divided to a hardware part and software part. Software is easier t
\caption{The proposed block diagram of a \textit{client node}, including HW requirements}\label{f:client_node}
\end{figure}
\subsection{Software requirements}
\textbf{Mandatory:}
\begin{itemize}

BIN
figures/android_scr.png (Stored with Git LFS)

Binary file not shown.

@ -8,6 +8,7 @@ t is the time in seconds [s].
Electrical Power, in a circuit is the amount of energy that is absorbed or produced within the circuit. A source of energy such as a voltage will produce or deliver power while the connected load absorbs it. Light bulbs and heaters for example, absorb electrical power and convert it into heat or light. The higher their value or rating in watts the more power they will consume.
\subsection{Ohm's law}
Ohm's Law deals with the relationship between voltage and current in an ideal conductor. This relationship states that: The potential difference (voltage) across an ideal conductor is proportional to the current through it \cite{henry2008ohm}. The constant of proportionality is called the \textit{resistance}.
$$I = \frac U R $$
@ -16,11 +17,13 @@ where I is the current expressed in Amperes [A], U is the voltage, bearing the V
The Ohms's law can be further expanded \cite{beaty1998electric}, to get these three quantities in relationship with \textbf{power}, such as
$$P = I \cdot U = I^2 \cdot R = \frac{U^2}R$$
\subsection{Direct current (DC) circuits}
Generally, Ohm's law is used on \gls{dc} circuits. A DC voltage or current has a fixed magnitude (amplitude) and a definite direction associated with it. Both DC currents and voltages are produced by power supplies, batteries, dynamos and solar cells to name a few.
We also know that DC power supplies do not change their value with regards to time\cite{herman2012direct}, they are a constant value flowing in a continuous steady state direction. In other words, DC maintains the same value for all times and a constant uni-directional DC supply never changes or becomes negative unless its connections are physically reversed.
\subsection{Waveforms and alternating current (AC) circuits}
An alternating function or \gls{ac} waveform on the other hand is defined as one that varies in both magnitude and direction in more or less an even manner with respect to time making it a “bi-directional” waveform \cite{whitaker2006ac}. An AC function can represent either a power source or a signal source with the shape of an AC waveform generally following that of a mathematical sinusoid as defined by
$$A(t) = A_{max} \cdot sin(2 \pi f t)$$
@ -63,6 +66,7 @@ The relation all these three quantities are in is defined as
$$ P^2 + Q^2 = S^2 $$
however, again, nothing in the real world is perfect, and this relation only applies for a perfectly \textbf{sinusoidal waveforms}!
\subsection{Phasor and phase shift}
A phasor\cite{2009electrical} is a constant complex number representing the complex amplitude (magnitude and phase) of a sinusoidal function of time. It is usually expressed in exponential form. Phasors are used in engineering to simplify computations involving sinusoids, where they can often reduce a differential equation problem to an algebraic one. The origin of the word phasor comes from phase + vector.
@ -78,6 +82,7 @@ Considering the figure \ref{f:ph_diff}, the voltage waveform above starts at zer
As the two waveforms are no longer \textit{in-phase}, they must therefore be \textit{out-of-phase} by an amount determined by phi, $\varphi$. The waveform of the current can also be said to be \textit{lagging} behind the voltage waveform by the phase angle $\varphi$. This angle represents the phase shift (also called phase difference) between two sinusoids \cite{maxfield2011electrical}.
\subsection{Power factor and power factor correction}
The power factor is just a specific name for a phase shift between the sinusoids of a current and voltage. So the figure \ref{f:ph_diff} in fact shows the power factor. However, it is not expressed in a plane angle, but rather as a dimensionless number between -1 and 1.
@ -179,6 +184,7 @@ Today's state of chip integration allows production costs of a complex \gls{syst
\glspl{soc} can be implemented as an \gls{asic} or using a \gls{fpga}.
\subsection{Operating system}
An \gls{os} is a \gls{computer} \gls{program} that supports a \gls{computer}'s basic functions, and provides services to other \glspl{program} (or applications) that run on the \gls{computer}. The \glspl{application} provide the functionality that the user of the \gls{computer} wants or needs. The services provided by the operating \gls{system} make writing the applications faster, simpler, and more maintainable.
@ -192,13 +198,6 @@ Over time, a lot of embedded \glspl{os} suited for embedded \glspl{system} were
\end{itemize}
%\begin{figure}[ht!]
%\centering
%\includegraphics[width=.4\textwidth,angle=0]{android_scr}
%\caption{The \Gls{android} 5 (Lollipop) screenshot - the most common \gls{os} is among the embedded ones}\label{f:android_scr}
%\end{figure}
\subsection{Real-time operating system}
A \gls{rtos} is just a special purpose \gls{os}. The real time part of the name does not mean that the \gls{system} responds quickly, it just means that there are rigid time requirements that must be met. If these time requirements are not met, the results can become inaccurate or unreliable\cite{jean2002microc}. Embedded \glspl{system} frequently posses the real time requirement. There are two kinds of \glspl{rtos}:
@ -207,6 +206,7 @@ A \gls{rtos} is just a special purpose \gls{os}. The real time part of the name
\item[Soft Real Time]- critical tasks get priority over other tasks and will retain priority until the task is completed. This is another way of saying that real time tasks cannot be kept waiting indefinitely. Soft real time makes it easier to mix the \gls{system} with other \glspl{system}.
\end{description}
\subsection{Embedded Linux}
\Gls{linux} itself is a \gls{kernel}, but \Gls{linux} in day to day terms rarely means so. Embedded \Gls{linux} generally refers to a complete \Gls{linux} distribution targeted at embedded devices. There is no \Gls{linux} \gls{kernel} specifically targeted at embedded devices, the same \Gls{linux} \gls{kernel} source code can be built for a wide range of devices, workstations, embedded \glspl{system}, and desktops though it allows the configuration of a variety of optional features in the \gls{kernel} itself. In the embedded development context, there can be an embedded \Gls{linux} \gls{system} which uses the \Gls{linux} \gls{kernel} and other software or an embedded \Gls{linux} distribution which is a prepackaged set of applications meant for embedded \glspl{system} and is accompanied by development tools to build the system\cite{hallinan2010embedded}.
@ -224,11 +224,13 @@ The \gls{kernel} is the essential center of a \gls{computer} \gls{os}, the core
The simplified view on the \Gls{linux} \gls{system} structure can be seen on \ref{f:linuxbl}. It does not include device \gls{driver}, \glspl{compiler}, \glspl{daemon}, \glspl{utility}, \glspl{command}, \gls{library} files and such, but should be enough for a demonstration.
\subsection{OpenWRT} \label{ss:openwrt}
OpenWrt is an \gls{os} (in particular, an embedded \gls{os}) based on the \Gls{linux} \gls{kernel}, primarily used on embedded devices to route \gls{network} traffic. It has been optimized for size, to be small enough for fitting into the limited storage and memory available in home \glspl{router}.
OpenWrt is configured using a command-line \gls{interface} (ash \gls{shell}), or a web \gls{interface} (LuCI). There are about 3500 optional \gls{sw} packages available for installation via the \texttt{opkg} package management \gls{system}.
\subsection{Components of the OpenWRT}
The main components are the \Gls{linux} \gls{kernel}, \texttt{util-linux-ng}, \texttt{uClibc} and \texttt{BusyBox}. The \Gls{linux} \gls{kernel} was already mentioned. \texttt{util-linux-ng} is self explanatory - it is a set of \gls{linux} utilities.
@ -299,6 +301,7 @@ The Atheros AR9331 is a highly integrated and cost effective \gls{ieee} 802.11n
\caption{The block diagram of the Atheros AR9331 \gls{soc} used as a main processing unit on GL.inet board}\label{f:ar_block}
\end{figure}
\subsection{From TL-WR703N to GL.inet}
TP-Link TL-WR703N \gls{router} is a popular choice among \gls{hw} customisation community because of it's cheap price tag compared to processing power and usage of a full-grown \Gls{linux} distribution. People have figured out how to upgrade \gls{ram} / \Gls{flash} memories or to make use of not used \gls{gpio} / UART ports for their own needs. These solutions however were mostly crude and expensive to replicate. The GL.inet team saw an opportunity to grasp this public knowledge and rolled out their own improved board clone to the marked.
@ -336,6 +339,7 @@ This module has a powerful enough on-board processing and storage capability tha
\caption{The certified ESP-12E module exposing all \glspl{gpio}}\label{f:esp-12e}
\end{figure}
\subsection{Features of a ESP8266 chip}
The list of features contained in a 24 pin plastic \gls{qfn} package are listed (but not limited to) in the following list:
\begin{itemize}

BIN
tukethesis.pdf (Stored with Git LFS)

Binary file not shown.

@ -3,7 +3,7 @@
# get the second character of the version, so it can be incremented
#lastTag=$(git describe --abbrev=0 --tags)
lastTag=$(git describe --tags `git rev-list --tags --max-count=1`)
lastNum=${lastTag:1:1}
lastNum=${lastTag:1:4}
nextNum=$((lastNum + 1))
nextTag="v$nextNum"

Loading…
Cancel
Save