Principles and Design of IoT Systems: From Devices to Data Analytics

Lecturer: 
DK Arvind
Date: 
12.8.2019 09:00 to 23.8.2019 12:00

Hours: Lectures: 12.–16.8. & 19.–21.8. at 09:00–12:00 (with a 15-minute break)
Practical sessions: 12.–16.8. & 19.–22.8. at 14:00–16:00
Examination: Written examination: 22.8. at 09:00 – 11:00
Practical demonstration and Viva voce: 23.8. at 09:00–12:00.
Assessment: 50% Written examination; 50% Practical Viva voce examination.
Credit Units: 4 ECTS
Registration: Students should register for the course by 31th July, 2019:

https://weboodi.oulu.fi/oodi/opettaptied.jsp?OpetTap=56837041&html=1

Background reading, lecture slides and preparatory material will be provided in advance of the start of the course.

Course: The advanced course aims to deliver a sound understanding of the
fundamentals of IoT systems and experience in their design and implementation through a
combination of lectures and practice. The lectures provide the foundational knowledge of IoT
platforms and sensor data analytics: sensors and actuators, wireless communication for IoT;
sensor data fusion algorithms; sensor data analytics: pre-processing and extraction of
features in time-series sensor data, clustering, segmentation and classification methods.
The practical is conducted by students working in pairs to develop an IoT application using
the Orient speck platform from concept to demonstration of a functioning prototype.
Students will experience different stages in the design and implementation of a complex IoT
system, from its specification, use-case analysis to testing, performance evaluation and the
demonstration of a working prototype. Students will be exposed to aspects of sensor data
analytics using machine learning techniques, mobile application design, wireless protocols,
user interface design, system integration and testing.
Each student pair will be given an Orient speck (ARM core, 2.4 GHz radio, Bluetooth Low
Energy radio, 3-axis gyroscope, accelerometer, magnetometer), an Android phone and
programming environment. API and libraries will be provided for sensor data, wireless
communication from the Orient. Each pair will develop an application to classify walking and
running on level ground, climbing up and down stairs, and count the number of steps. Student
pairs will demonstrates the working prototype at the end of the course as part of a Viva voce
examination.


Target Audience: This is an advanced course targeted at Master’s and Doctoral students who
have knowledge of embedded programming, wireless communication, introductory machine
learning, and mobile application development. Working knowledge of Java and Python
programming languages would be essential.


Learning outcomes:
1. An understanding of the constituent parts of a typical IoT system, a selection of sensors
and actuators, and an appreciation of methods employed to address the security and
privacy issues in IoT. Case studies will illustrate the application of IoT in healthcare, digital
media and environmental monitoring.
2. Knowledge of a selection of sensor fusion algorithms, and data analytic methods for the
pre-processing of time-series sensor data, feature extraction and their classification; the
application of these methods in practice will be illustrated with case studies.
3. Experience of the practical issues involved in the specification, design and implementation
of an IoT system.
4. Experience of working with another team member with complimentary skill sets, and
develop skills in project management, requirements capture and negotiations.
Lecture Schedule:
Lecture 1: Overview of IoT: industrial, consumer, wearable, environmental, healthcare, and
digital media, illustrated with videos of case studies; architecture of a typical IoT system and
its components; Overview of privacy and security issues; Sensors and actuators –
Introduction to commonly-used sensors/actuators, modes of operation, and data format.
Lecture 2: Sensor fusion algorithms: data from homogeneous and heterogeneous sensors;
examples include quaternion calculations with 6-DOF IMU sensors for 3-D animation.
Lecture 3-4: Sensor data analytics: calibration of sensor data against reference sensors; use
of Bland-Altman plots for sensor data comparisons, illustrated with examples in healthcare
and environmental monitoring
Lecture 5-6: Sensor data analytics: Methods for pre-processing and feature extraction in timeseries
sensor data - Time warp algorithm; Principal component analysis; feature extraction
methods illustrated with examples of IoT for wellbeing, musical instrument tutoring.
Lecture 7-8: Sensor data analytics: Classification methods using Machine Learning/Hidden
Markov models (Naïve Bayes, k-NN, Decision Tree, Logistic Regression, Mulitlayer Perceptron,
SVM) applied to features in time-series sensor data, illustrated with examples in sports,
healthcare.


Practical Schedule:
Discover –
Day 1: First meeting of the students; Explanation of the assignment; Demonstration of an
end-to-end IoT system as an exemplar; Pairs will be formed, and students will
collect walking/climbing data which will be deposited in a shared repository.
Define –
Day 2: Capture the requirements and use cases for the application; Description of sensor
data collected in Day 1, investigate data analysis and step tracking algorithm
development.
Develop –
Day 3: Implementation of app to perform step tracking on level ground in real time.
Display step count in Android app.
Day 4: Demonstrate working step tracking algorithm on level ground with step count
displayed in Android app. Receive feedback and integrate over the following day.
[Formative feedback to the students]
Day 5-7: Refinement of the step counting algorithm and classification of level walking,
running and stair climbing. Second demonstration of classification and step tracking
followed by final integration and testing.
Day 8-9 Performance analysis of classification/step tracking. Preparation of the
presentation and final demonstration.
Deliver:
Day 10 Viva voce: 15-minute presentation and demonstration by each pair followed by a 5-
minute of Q&A.


Assessment:
The course assessment will be equally weighted between the written examination and the
practical.
Practical assessment: The student will be awarded individual marks (out of 50) based on the
presentation and oral examination on Day 10. The breakdown of marks and criteria for
assessment are as follows:
- Technical evaluation – 60%: Completion of the project; goodness of the results; amount
of work undertaken; justification of design decisions.
- Presentation – 20%: Quality of the oral presentation using slides
- Analysis – 20%: Critical analysis using quantitative methods; performance
analysis

Last updated: 5.6.2019