Logo UAB
2021/2022

Internet of Things

Code: 104421 ECTS Credits: 6
Degree Type Year Semester
2503740 Computational Mathematics and Data Analytics OT 4 1
The proposed teaching and assessment methodology that appear in the guide may be subject to changes as a result of the restrictions to face-to-face class attendance imposed by the health authorities.

Contact

Name:
Jordi Carrabina Bordoll
Email:
Jordi.Carrabina@uab.cat

Use of Languages

Principal working language:
english (eng)
Some groups entirely in English:
No
Some groups entirely in Catalan:
Yes
Some groups entirely in Spanish:
No

Other comments on languages

The language of instruction will be Catalan, a large part of the teaching materials (especially external ones) are in English. If we have foreign students we will switch to English.

Teachers

Marc Codina Barbera

Prerequisites

The course is self-contained and therefore there are no specific pre-requisites.

Objectives and Contextualisation

The ICT world is being structured on various concepts. One of them is the Internet of Things, which is based on expanding the computing domain to connected objects (devices) of small size and energy consumption that interact with the real world via sensors and actuators in different areas: personal / wearables, health, home automation, environment, energy and water distribution, automotive, etc. These connect through various protocols to a fixed or mobile intermediate platform (edge) that manages, filters and processes part of the data locally. In turn, it is connected to the cloud where the data is stored, processed and displayed. The implementation of these systems requires integrating the various concepts, acquired in previous courses, in this new device-edge-cloud paradigm associated with different types of computing platforms (single-, multi-, many-core processors) with different requirements of functionality, power, latency, bandwidth and cost; different programming and communication models; and different cloud options for back-end and front-end, so a higher level of abstraction is required at the interface level (APIs and Middleware) and virtualization (computing and communications).

Goals:
Establish the fundamentals of the internet of things (IOT): device, periphery (edge) and cloud (cloud).
Learn to classify embedded processors, sensors, actuators, and systems, and select communications protocols and cloud options.
Evaluate the functional requirements and the performance in terms of cost, real time comnditio and energy efficiency.
Select embedded and mobile platforms for the edge and cloud solutions for back-end and front-end.
Manage the virtualization of computing and communications.
Design an example case of the entire IoT chain

Competences

  • Design, develop, maintain and evaluate software systems that allow large volumes of heterogeneous data to be represented, stored and handled in accordance with the established requirements.
  • Implement and optimise applications based on the functions and structure of parallel, distributed and cloud systems, computer networks and internet.
  • Make effective use of bibliographical resources and electronic resources to obtain information.
  • Students must be capable of applying their knowledge to their work or vocation in a professional way and they should have building arguments and problem resolution skills within their area of study.
  • Students must be capable of collecting and interpreting relevant data (usually within their area of study) in order to make statements that reflect social, scientific or ethical relevant issues.
  • Students must develop the necessary learning skills to undertake further training with a high degree of autonomy.
  • Using criteria of quality, critically evaluate the work carried out.
  • Work cooperatively in a multidisciplinary context assuming and respecting the role of the different members of the team.

Learning Outcomes

  1. Efficiently integrate heterogeneous data from various devices and interconnected systems.
  2. Make effective use of bibliographical resources and electronic resources to obtain information.
  3. Select the most suitable components, technologies, platforms and datasets to develop solutions for problems in the Internet of Things.
  4. Students must be capable of applying their knowledge to their work or vocation in a professional way and they should have building arguments and problem resolution skills within their area of study.
  5. Students must be capable of collecting and interpreting relevant data (usually within their area of study) in order to make statements that reflect social, scientific or ethical relevant issues.
  6. Students must develop the necessary learning skills to undertake further training with a high degree of autonomy.
  7. Using criteria of quality, critically evaluate the work carried out.
  8. Work cooperatively in a multidisciplinary context, taking on and respecting the role of the distinct members in the team.

Content

Lectures
1. Global View of the Internet of Things
  • IoT Systems: Functionality & Architecture. Device, edge,cloud
  • Examples and Use Cases
  • HW Components: processors, sensors, actuators, batteries
  • Performance: cost, real-time (latency, throughput), and energy efficiency
  • Standards and Intellectual property
2. Introduction to Wired & Wireless Communications
  • Communications standardization
  • Wired Protocols for device, edge & cloud
  • Wireless Networks for device to edge: WBAN, WPAN, WLAN, LPWAN
  • Wireless Networks for edge to cloud: WLAN, WAN, LPWAN, 5G 
3. Embedded and mobile platforms
  • Embedded platforms: open & industrial
  • Platform examples
  • Mobile platforms
4. Virtualization
  • Cloud back-end & front-end
  • Virtual platforms for embedded systems
  • Virtual platforms for cloud systems: IaaS, PaaS, SaaS
  • Communications Virtualization
Guided project: Design of an (original) IoT system
P1. Original ideas for the design of an IoT system and preliminary market study
P2. Functional and performance specifications of the project
P3. Block and communications architecture of the IoT system and implementation alternatives
P4. System implementation. Selection of components and platforms
P5. Estimation of planning, costs and business model
P6. Document, presentation and defense of the project
 
Labs: Fall Detection System
L1. Introduction to programming on a SoC MCU-BLE on the Thingy platform
L2. Fall Detection Algorithm on Accelerometer + MCU + Bluetooth.
L3. Android APP Programming I: Bluetooth Low energy Data Acquisition.
L4. Android Programming II: Computation and JSON application to a server.
L5. Cloud application: back-end & front-end
 

Methodology

The learning methodology will combine: master classes, activities in tutored sessions, project based-learning and use cases, debates and other collaborative activities; and laboratory sessions.

Attendance will be mandatory for all face-to-face activities (with the permission of the pandemics).

The design of the IoT project and laboratory sessions will be done in groups of 2 or 3 people.

The laboratory sessions will use a supervised format (not guided) to offer greater autonomy to students and a more personalized support.

This course will use UAB's virtual campus at https://cv.uab.cat.

Annotation: Within the schedule set by the centre or degree programme, 15 minutes of one class will be reserved for students to evaluate their lecturers and their courses or modules through questionnaires.

Activities

Title Hours ECTS Learning Outcomes
Type: Directed      
Lessons and Seminars 30 1.2 1, 6, 4, 5, 3, 2
Study & Homework 90 3.6 7, 1, 4, 3, 8, 2
Type: Supervised      
Laboratories & Design Project 28 1.12 7, 1, 4, 5, 3, 8, 2

Assessment

The evaluation of the course will follow the rules of the continuous evaluation and the final grade for the course, is calculated in the following way:
A - 10% from the mark obtained by the student for class attendance and active participation in discussions.
B - 25% from the mark obtained by the student through the evaluation of activities (i.e. exercises). When an evaluation activity is scheduled, the evaluation indicators will be reported and its weight in this qualification.
C - 30% from the mark obtained through the evaluation of the IoT design project. 
D - 35% from the mark obtained by the student of the laboratory work and reports. It is necessary to exceed 5 (out of 10) in this item to pass the subject.

To obtain MH it will be necessary that the students have an overall qualification higher than 9 with the limitations of the UAB (1MH/20students). As a reference criterion, they will be assigned in descending order.

A final weighted average mark not lower than 50% is sufficient to pass the course, provided that a score over one third of the range is attained in every one of the Marks for first 3 items (A, B and C). If not reached, the mark will be 4.0.

Plagiarism will not be tolerated. All students involved in a plagiarism activity will be failed automatically. A final mark no higher than 30% will be assigned.

An student not having achieved a sufficient final weighted average mark, may opt to apply for remedial activities (individual work or additional synthesis examination) the subject under the following conditions:
- the student must have participated in the laboratory activities and design project, and
- the student must have a final weighted average higher than 30%, and
- the student must not have failed any activity due to plagiarism.

The student will receive a grade of "Not Evaluable" if:
- the student has not been able to be evaluated in the laboratory activities due to notattendance or not deliver the corresponding reports without justified cause.
- the student has not carried out a minimum of 50% of the activities proposed.
- the student has not done the design project.

Repeating students will be able to “save” their grade in laboratory activity.

Assessment Activities

Title Weighting Hours ECTS Learning Outcomes
Attendance and active participation 10% 0 0 1, 6, 5, 3, 8, 2
Evaluation of activities developed in tutored sessions (laboratories) 35% 0 0 7, 1, 6, 4, 3, 8, 2
Individual activities (i.e. exercices) 25% 0 0 7, 1, 4, 3, 2
Report and defence of the design project 30% 2 0.08 7, 1, 6, 4, 5, 3, 8, 2

Bibliography

C. Pfister. Getting Started with the Internet of Things: Connecting Sensors and Microcontrollers to the Cloud (Make: Projects) . O'Really. 2011.

A. McEwen, H. Cassimally. Designing the Internet of Things.2014. Willey.

A. Bahga, V. Madisetti. Internet of Things: A Hands-on Approach. VTP. 2015.

S. Greengard, The Internet of Things. The MIT Press Essential Knowledge series.

V. Zimmer. Development Best Practices for the Internet of Things.

A. Bassi, M. Bauer, M. Fiedler, T. Kramp, R. van Kranenburg, S. Lange, S. Meissner. (Eds) Enabling Things to Talk - Designing IoT solutions with the IoT Architectural Reference Model. Springer.

J. Olenewa, Guide to Wireless Communications, 3rd Edition, Course Technology, 2014.

P. Raj and A. C. Raman, The Internet of Things: Enabling Technologies, Platforms and Use Cases, CRC Press 2017.

H. Geng (Ed.), Internet of the Things and Data Analytics Handbook, Wiley 2017.

Y. Noergaard, "Embedded Systems Architecture" 2nd Edition, 2012, Elsevier

K. Benzekki, Softwaredefined networking (SDN): a survey, 2017, https://doi.org/10.1002/sec.1737

https://blogs.cisco.com/innovation/barcelona-fog-computing-poc

https://aws.amazon.com/

A.K. Bourke et al. Evaluation of waist-mounted tri-axial accelerometer based fall-detection algorithms during scripted and continuous unscripted activities, Journal of Biomechanics, Volume 43, Issue 15, 2010, pp. 3051-3057

N. Jia. Detecting Human Falls with a 3-Axis Digital Accelerometer. Analog Devices. http://www.analog.com/en/analog-dialogue/articles/detecting-falls-3-axis-digital-accelerometer.html

Software

Students will use the SoC-BLE Thingy from Nordic Semiconductors as a device; the Android smartphone as Edge; and an server cloud option (selected by the students) with front-end i back-end.

Improvementets are expected in this whole chain (that will keep the same structure).