CpE 664 Sensor
Actuator Networks
(Previously CS /
EE 591 V)
Course Format and Credit hours
3 hr Lecture / Presentations
3 hr Credit
Prerequisites
For CS students: CS 450, CS 350 (Or equivalent) –
Knowledge of operating systems concepts
For EE or other disciplines: EE 329 (Or equivalent) –
Knowledge of signal processing
Schedule
MWF 12:00 to 12:50
Location
ESB 201
Office Hours
Tuesday and Wednesday 1:00 to 2:00 p.m. or by appointment
Course
Objectives
Fueled
in part by recent advances in MEMS and wireless communication technologies,
sensor actuator networks and networks of embedded devices in general have
become extremely popular and have been used in several applications such as
environmental monitoring, perimeter security, structural control, asset
tracking and personal healthcare systems. The objectives of this course are to
introduce students to the state of the art in sensor actuator networks and to
provide hands on training in programming these networks.
We will
have a significant reading list from recent literature to accompany the
lectures. Lectures will emphasize aspects of distributed systems such as
fault-tolerance, reliability, and security. Case studies from existing
applications will be used. Each student will have to complete a project.
The course is aimed both at students who wish to do
research in the sensor actuator networks area, as well as at students from
related disciplines, such as signal processing, wireless communications,
databases, algorithms, etc., who wish to understand what new challenges sensor
actuator networks pose for their own discipline
The course will serve as an elective
option in the Computer Systems (Area 3)
emphasis area. The course is appropriate for students with a major or minor
in this area because it teaches the requisite system engineering principles for
assembling large scale networked systems. The students will first learn
elements of distributed computing and then apply them in the context of
networked applications. Students will also gain hands-on experience in
programming such systems using a network of wireless sensor motes. The course
has been designed to accommodate students from CS (with background in operating
systems, computer networks, algorithms etc.) and EE disciplines (with
background in communication, signal processing, analog hardware etc.) who can
collaborate on team projects and design systems that often require
interdisciplinary expertise. The course is also expected to provide the basic
scientific knowledge required to carry out research in the emerging area of
cyber-physical systems, a largely interdisciplinary research area with
networking and systems engineering at its core.
Note: This course will complement the EE 562 course on
wireless communication systems. While EE 562 focuses on physical layer issues
of wireless networks, in this course we will focus on protocol level issues in
the higher layers of the sensor network stack.
Expected Learning Outcomes
Upon successful completion of this course:
1.
Students will be introduced to some existing
applications of wireless sensor actuator networks
2.
Students will be introduced to elements of
distributed computing and network protocol design and will learn to apply these
principles in the context of wireless sensor networks
3.
Students will learn the various hardware,
software platforms that exist for sensor networks
4.
Students will get an overview of the various
network level protocols for MAC, routing, time synchronization, aggregation,
consensus and distributed tracking
5.
Students will learn to program sensor network
platforms using TinyOS, C and Java and will get an
opportunity to have hands on training in developing applications on wireless
motes, smart phones and other embedded platforms
6.
Students will read and present seminal papers
on various issues in sensor networks, opening a path to research in this area
7.
Students will understand what research
problems sensor networks pose in disciplines such as signal processing,
wireless communications and even control systems
Course
Syllabus (and % of time per topic)
1.
Introduction and examples (5%)
2.
Elements of distributed computing and network
protocol design (10%)
3.
Hardware and software platforms for sensor
networks, (10%)
4.
Protocols for MAC layer, routing layer and localization
(10%)
5.
Protocols for network reprogramming (10%)
6.
Coordination and consensus in sensor actuator
networks (10%)
7.
Protocols for information aggregation and
querying (10%)
8.
Embedded camera networks (10%)
9.
Recent advances, Cyber-physical systems,
Large scale complex systems (10%)
10.
TinyOS (15%)
Project
For this course, students will be required to work on a
project, individually or in a team of at most two persons. The project will
usually involve programming using TinyOS or C / Java
or Matlab. Students will either use a remote sensor
network testbed or in-house sensors for their
project. (In case of students from non-CS background who are not comfortable
with programming, alternate projects can be designed.) An oral presentation and
a written report will be due in the finals week. These projects may evolve into
long term ones, which can be used for a Masters
thesis or may lead to a PhD dissertation project.
Some initial papers to read
Connecting the physical world with
pervasive networks
Energy and performance considerations for smart dust
The computer for the 21st
century
Next century challenges: Scalable coordination in
sensor networks
Interesting Links (sensor actuator networks):
Some good advice for graduate students:
Edsger Dijkstra, The Three Golden Rules for Successful
Scientific Research
Edsger
Dijkstra, To a New Member of the Tuesday
Afternoon Club
Jim Kurose, Ten Pieces of Advice I Wish My PhD
Advisor Had Given Me
Andre DeHon, Advice for Students Starting into
Research
S. Keshav, How to Read a Paper
Philip W. L. Fong, How to Read a CS Research Paper?
William Strunk Jr., E. B. White, The
Elements of Style. (Recommended book on writing)