This repository has been archived by the owner on Jan 29, 2024. It is now read-only.
forked from jbarcelo/WSNs_lecture_notes
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathabout.tex
196 lines (140 loc) · 13.1 KB
/
about.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
\chapter{About the course}
\section{Course Data}
Code: 21754
Course name: ``Xarxes de Sensors Sense Fils''
Teacher: Luis Sanabria and Jaume Barcelo
Credits: 4
Year: 3rd or 4th year (optional)
Trimester: Spring
\section{Introduction}
The reduction in price and size of computing and wireless communication platforms over the last years opens a new possibility for gathering and processing information: Wireless Sensor Networks.
A wireless sensor node is an electronic device of small dimensions that gathers metrics from the environment and transmit the data wirelessly.
In wireless sensor networks, communication is often established with other wireless sensor nodes to exchange or forward information.
It is common to have this data directed to a special device that gathers all the data; it is often called the network \emph{sink}.
As wireless sensor nodes are often battery-powered, energy saving is a relevant issue in these networks.
What follows is an extract of the first pages of \cite{sanabria2012lpw}.
\begin{quotation}
Wireless Sensor Networks (WSNs) are a result of significant breakthroughs on wireless transceiver technology, the need of event sensing and monitoring. One might think of a WSN as the skin of our bodies; apart from its importance on many other subjects, our skin senses events nearby it, like touch, temperature changes, pressure and so forth. These events are generated by an external entity, the nerves or sensors of our skin are capable to react to such events and transmit this information to the brain. \\
There are enormous differences among characteristics of WSN and the skin, but the example given above will work as head start to understanding the technology. For instance, our skin sends the sensed event information towards the brain through the nerves, we could safely relate this medium to a wired network infrastructure. While in WSN, as its name suggests sends the sensed data towards a central node (Sink) via a wireless medium. Because of the limited radio range of each node, the route to the Sink is generally composed of jumps through different nodes (which is called a multi-hop route).\\
The majority of wireless nodes in a WSN are very constrained devices due to the restrictions in costs and sometimes harsh environments where these networks are deployed. These constraints go from cost, processing power, memory, storage, radio range, spectrum and, more importantly, battery life. One of the most popular low-end nodes model, the TelosB, is equipped with $16$ MHz CPU, very small flash memory ($48$ KB avg.), about $10$ KB of RAM and works on the very crowded $2.4$ GHz spectrum at rates around $250$ Kbps. These limitations force WSN engineers to design applications capable of working with low processor-intensive tasks and powered with limited battery (usually two AA batteries).\\
Many WSN applications process the sensed event before sending the data, this processing tries to reduce the information to send. As mentioned in \cite{akyildiz2010wireless}, it is less energy consuming to process one bit of information than sending it. WSN protocols and applications are tailored to power conservation rather than throughput, mainly due to cost, dimension, processing and power constraints.\\
WSNs may contain different kind of sensors that help monitor metrics related to: temperature, humidity, pressure, speed, direction, movement, light, soil makeup, noise levels, presence or absence of certain kinds of objects, mechanical stress and vibration. Also further information like node location can be derived from a Global Positioning System (GPS) device embedded at each node.\\
Because of the variety of measures than can be monitored with these small and (generally) cheap devices, a wide range of applications have been developed; the authors of \cite{akyildiz2010wireless} divide them in: military, environmental, health, home and industry applications.\\
\begin{itemize}
\item \emph{Military Applications:} one of the first applications of WSNs. The main advantages in this area are the fact that the deployment of low cost sensors (that are subject to destruction in a battlefield) proposes a cheaper approach to sensing different types of metrics, which in turn brings new challenges to WSN applications (increased power and processing constraints). Some of the applications are related to: monitoring the movement of troops, equipment and ammunition, battlefield surveillance, terrain reconnaissance, damage assessments, snipper detection \cite{ledeczi2005countersniper}, \cite{mazurek2005boomerang} and threat detection, as in the case of biological, radiological or chemical attacks.\\
\item \emph{Environmental Applications:} most of these applications are related to animal tracking, weather conditions and threat contention \cite{polastre2004analysis}, \cite{szewczyk2004habitat}.\\
\item \emph{Health Applications:} a great deal of these applications are dedicated to monitor patients inside hospitals and provide them with better care. This is achieved by tracking the patientÕs vitals or other information of interest and making it available to doctors at any time from anywhere securely through the Internet. \\
\item \emph{Home Applications:} technology is making its way inside our homes from various fronts, and WSN are no exception. Sensor nodes inside domestic devices will result in an increased interaction among them and allow access via the Internet. Theses applications are of great importance in fields like domotics towards a smart home/work environment. Home surveillance and multimedia WSNs for home environments are also a growing field of research.\\
\item \emph{Industrial Applications:} historically the monitoring of material fatigue was made by experts introducing the observed situation inside PDA devices to be collected on a central site for processing. Further sensing techniques were developed on the form of wired sensors; nevertheless its implementation was slow and expensive due the necessary wiring. WSNs bring the best of both methods by sensing the events without the need of expert personnel and the cost of wiring. \\
\item Other implementations as mentioned in \cite{akyildiz2010wireless} are: inventory management, product quality monitoring, smart offices/houses; guidance in automatic manufacturing environments, interactive museums, factory process control and automation, machine diagnosis, transportation, vehicle tracking and detection, spectrum sensing for cognitive radio networks, underground and underwater monitoring. \\
\end{itemize}
\end{quotation}
\section{Syllabus}
\begin{itemize}
\item Lectures
\begin{enumerate}
\item Introduction to WSNs.
\item Arduino Platform.
\item XBee and XBee Explorer. AT commands.
\item XBee API mode.
\item A sensor network with Arduino.
\item A sensor network without Arduino.
\item Publishing sensed data
\item Invited talk
\item Quiz
\end{enumerate}
\item Labs and seminars
\begin{enumerate}
\item Blinking LED (Dimming optional)
\item Blinking LED with push-button (dimming optional)
\item XBee chat
\item Sensor and Actuators (Wireless doorbell)
\item Sunset sensor
\item Sensor network with Arduino
\item Sensor network with XBee in API mode
\item Sleeping and actuating
\item Uploading sensed data to the Internet
\end{enumerate}
\end{itemize}
\section{Bibliography}
Most of the lab assignments follow the book that you can find at the university library:
Robert Faludi ``Building Wireless Sensor Networks'' (\cite{faludi2010bws}).
The following list of ``common mistakes'' can be very useful when debugging your projects:
\begin{itemize}
\item \href{http://www.faludi.com/projects/common-xbee-mistakes/}{Common XBee mistakes}:~\url{http://www.faludi.com/projects/common-xbee-mistakes/}.
\item \href{https://p2pu.org/en/courses/831/content/1671/}{Hands-on WSN Survival Guide}:~\url{https://p2pu.org/en/courses/831/content/1671/}.
\end{itemize}
Check also:
Massimo Banzi ``Getting Started with Arduino''.
\section{Evaluation Criteria}
The grading is distributed as follows:
\begin{itemize}
\item Quiz, 10\%
\item Each lab assignment, 10\%
\end{itemize}
It is necessary to obtain a decent mark in all the different evaluation aspects.
To pass the course, 50 out of the total 100 points need to be obtained.
\section{Team work}
You will work in teams of three people.
Try to make the groups as heterogeneous as possible: people that are experienced with Arduino and people that are not, people from different majors, people with strong programming skills and people good at electronics, etc.
\subsection{Weekly reports}
Each group delivers a single report per session and the teachers may ask questions to individual members of the team.
We encourage you to use web resources to deliver your reports, for instance: blog posts. This way teachers may provide comments and answer your questions quicker.
At the end of each Lab, students are challenged with extended versions of the assignments. If your team accomplish the challenge, your project can be selected to be presented at the Hands-on WSN blogs for the whole community to see.
\section{Use your imagination}
The lab assignments are somewhat easy.
The goal is that you complement what you do in the lab with other ideas of your own.
You are encouraged to explore WSNs beyond the basics introduced in the assignments and document your findings in the reports.
Going beyond the assignment takes a lot of effort and can be time-consuming.
Nevertheless, as engineers, we should be able to come up with new ideas and solutions on our own.
\section{Non-stop Arduino}
In our school there are two additional courses that make use Arduino: ``Sensors and data acquisition'' and ``Interactive Systems''.
\section{Survival guide}
\subsection{Questions and doubts}
We like to receive questions and comments.
Normally, the best moment to express a doubt is during the class, as it is likely that many people in the class share the same doubt.
If you feel that you have a question that needs to be discussed privately, we can discuss it right after the class.
Do not despair, we would also like to invite you to our course forum:
\url{http://forum.handsonwsn.org/}
In the forum, we have prepared different topics (hopefully) covering all the stages of the course. Feel free to read through the existing questions, and if what you are looking for is not covered yet, then let us know in an existing thread.
\subsection{Continuous feedback}
At the end of the lecture, we will ask you to anonymously provide some feedback on the course \emph{\color{blue}{\href{http://bit.ly/10tXjX4}{using a form like this one}}}.
In particular, we always want to know:
\begin{itemize}
\item What is the most interesting thing we have seen in class?
\item What is the most confusing thing in the class?
\item Any other comment you may want to add.
In labs, I will ask each group to hand in a short (few paragraphs) description of the work carried out in class, and the members of the group that have participated.
Note that this is different from the deliverables, which are the ones that are actually graded.
\end{itemize}
\subsection{Tips for common problems}
\subsubsection{Copy-pasting from the book}
In this document there are several code snippets.
Trying to directly copy and paste the code from the document may result in having additional blank spaces or awkward symbols in your code.
If this happens, the code will not work as expected.
If you copy-pasted the code and are experiencing problems, try to type the code.
\subsubsection{4 pin push-button}
It seems a simple element but correctly placing it on the breadboard and connecting it is not trivial.
If things are not working and there is a pushbutton involved, ask your instructor.
\subsubsection{Pin-protective foam}
You may find some black foam pieces in your material box.
These are great for protecting the XBee or XBee explorer pins when not being used.
However, it is important to remove them while you are working with the devices.
Otherwise, mysterious problems occur.
\subsubsection{Resetting XBee}
Sometimes X-CTU asks you to reset the XBee, or you want to reset it for any other reason (such as to wake it up).
Then, take the XBee out of the Explorer (while the Explorer is connected to the computer) and plug it in again.
\subsubsection{Misterious delays in broadcast mode}
Some of your classmates suffered mysterious delays while using broadcast communication that solved when they changed to unicast communication.
In particular, they set the destination address of the coordinator and the router to each other's hardware address.
\subsubsection{Firmware version}
Make sure that all the participating XBees use the same updated firmware version.
Some students have reported problems when using an XBee with an old firmware.
\subsubsection{Restoring XBees default values}
Use the buttons ``Restore'' and ``Read'' in this order to restore and read the default values.
\subsubsection{Dead XBees}
It has happened that some XBees do not respond when testing them with the ``test'' button in the X-CTU.
Try with all possible baud rates until you find one that works.
Then, flash the XBee with the ``router AT'' firmware.
\subsection{How to make you teachers happy}
Avoid speaking while we are talking.