Logo UAB
2020/2021

Internet of Things

Code: 105075 ECTS Credits: 6
Degree Type Year Semester
2502441 Computer Engineering 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

Teachers

Marc Codina Barbera

Prerequisites

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

 

Objectives and Contextualisation

Description:

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 undergraduate studies in this new device-edge-cloud paradigm associated with different types of computing platforms (sigle-, multi-, many-core processors) with different requirements of functionality, power, latency, bandwidth and cost; and different programming and communication models, 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
Evaluate the requirements and benefits of real time and energy efficiency
Select embedded and mobile platforms for the edge and cloud solutions for storage and computing
Manage the virtualization of computing and communications
Implement an example case of the entire information chain

Competences

  • Capacity to design, develop, evaluate and ensure the accessibility, ergonomics, usability and security of computer systems, services and applications, as well as of the information that they manage.
  • Communication.
  • Have the capacity to define, evaluate and select hardware and software platforms for the development and execution of computer systems, services and applications.
  • Have the right personal attitude.
  • Know the basic materials and technologies to enable the learning and development of new methods and technologies, as well as those that that provide large-scale versatility to adapt to new situations.

Learning Outcomes

  1. Communicate efficiently, orally or in writing, knowledge, results and skills, both in the professional environment and before non-expert audiences.
  2. Compare and evaluate the possible platforms that can fulfil the requirements of applications.
  3. Design and develop computer systems that fulfil the specifications of the system and the application, and in particular in reference to embedded and real time systems.
  4. Generate proposals that are innovative and competitive.
  5. Identify the security needs that embedded systems have to fulfil.
  6. Manage information by critically incorporating the innovations of one’s professional field, and analysing future trends.
  7. Recognise and identify the methods, systems and technologies of computer engineering.
  8. Select the most suitable platform for a specific application and design and develop the solution based on the corresponding microprocessor.
  9. Use English as the language of communication and professional relations .

Content

Lectures

  • Global View of the Internet of Things
    • IoT Systems: Functionality & Architecture
    • Device, edge,cloud
    • Examples and Use Cases
    • Energy Efficiency and Energy Sources
    • HW Components: processors, sensors, actuators, batteries
    • Processors: Single-core, Multi-core, Many-core
    • SW programming at device, edge & cloud levels
  • Introduction to Wired & Wireless Communications
    • Communication standardization
    • Wired Protocols for device & edge
    • Wireless Networks: WBAN, WPAN, WLAN, WAN, LPWAN, 5G 
  • Embedded and mobile platforms
    • Embedded platforms: open & industrial
    • Industrial examples
    • Mobile platforms
  • Virtualization
    • Virtual platforms for embedded systems
    • Virtual platforms for cloud systems: IaaS, PaaS, SaaS
    • Communications Virtualization

Labs: Fall Detection System 

  • L1. Introduction to programming on a MCU on Thingy
  • 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: Acquisition, Computation & UI

 

Methodology

The learning methodology will combine: master classes, activities in tutored session. problem 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).

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

Activities

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

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 - 30% from the mark obtained by the student for a practical project developed in the labs and through problem-based learning (TFM).
C - 30% from the mark obtained though the evaluation of activities proposed in tutored sessions. When an evaluation activity is scheduled, it will be indicated which indicators will allow it to be evaluated and its weight in its qualification.
D - 30% of the mark obtained for the evaluation of a final synthesis exam.

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 everyone of the 4 marks. 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 problem-based learning laboratory activities, 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 and learning-based activities due to not attendance or not deliver the corresponding reports without justified cause.
- the student has not carried out a minimum of 50% of theactivities proposed in tutored sessions.
- the student has not taken the synthesis exam

Repeating students will be able to “save” their grade in lab and problem-based learning activities but not in the rest of the activities.

Assessment Activities

Title Weighting Hours ECTS Learning Outcomes
Synthesis examination 30 2 0.08 2, 1, 3, 4, 6, 5, 7, 8, 9
Attendance and active participation 10 0 0 1, 4, 6, 7, 9
Evaluation of activities developed in tutored sessions (laboratories) 30 0 0 1, 3, 7
Individual theoretical-practical tests 30 0 0 2, 1, 3, 5, 7, 8, 9

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