Hello, dear friend, you can consult us at any time if you have any questions, add WeChat: daixieit


MSc Communications Programmes


Module Name: Internet of Things

Module Acronym: IOT

Module Code: ELEC0130 (previously ELECGT27)


Course Summary:

This module is designed to provide students with solid technical knowledge and skills to build Internet of Things (IoT) systems. The course has a significant practical element in that 75% of the technical content will be delivered during lab sessions in which students are expected to complete exercises involving system design, device programming, cloud development and data analysis.

Important update for the academic year 2020-2021: At the time of writing (September 2020), the plan is to run this module online in accordance with UCL’s Connected Learning framework. As such, it will not be possible to carry out the hands-on and face-to-face activities typically associated with this module. Hence, an alternative form of delivery using simulated or emulated devices will be employed where possible. Please see the section on “Connected Learning and this module” for further information.

Second update – November 2020: Following confirmation that UCL’s temporary operating model (TOM) will continue into Terms 2 and 3, the delivery for this module will now change for this academic year, 2020-2021. This syllabus has been updated accordingly. The key changes are: a) The tools and platforms that will be used at the edge (sensors and connectivity layers), and b) The summative deliverable will be a 100% individual project assessed via a 100% end-of-module report.


Full Description:

Pre-requisites:

It is expected that students will have a background in electronic engineering, computer systems engineering or a related subject. The following are essential:

● Knowledge of basic electronics design (for example, ADCs/DACs, PWM, voltage dividers).

● Experience programming devices using C / C++.

● Familiarity with the OSI model and the seven abstraction layers.

The following are considered a strong advantage:

● Experience programming Arduino and/or Raspberry Pi devices.

● Experience carrying out data analysis in MATLAB or Python.

● Experience programming in HTML and/or JavaScript.

● Familiarity with networking and TCP/IP.

NOTE: Students will be required to make use of all the above knowledge and skills during the course to configure sensors, program edge computing platforms, carry out development in the cloud and perform data analytics. The practical experience acquired will be essential to completing the group project.


Structure:

A systems engineering approach is adopted throughout the course reviewing the key technologies employed at different levels of the IoT stack and how they are integrated to form complete IoT systems.

● Sensors layer: Tinkercad by Autodesk (https://www.tinkercad.com/learn/circuits)

● Connectivity layer: SmartMesh Power and Performance Estimator (by Dust Networks)

● Data analytics: MATLAB (from MathWorks) and Python (using Jupiter notebooks in Anaconda).

● Cloud development: IBM Cloud and associated tools.


Pre-work:

Students will be expected to carry out pre-work and pre-reading throughout the course to setup and familiarise themselves with the platforms and tools that will be used during the course, as well as to learn the background theory required to complete the workshops successfully. Further details will be provided nearer to the start date of the course.


Intended Learning Outcomes:

On completion of this course, students should be able to:

● Explain the definition and usage of the term “Internet of Things” in different contexts.

● Know the key components that make up an IoT system.

● Differentiate between the levels of the IoT stack and be familiar with the key technologies and protocols employed at each layer of the stack.

● Apply the knowledge and skills acquired during the course to design, build and test a complete, working IoT system involving prototyping, programming and data analysis.

● Understand where the IoT concept fits within the broader ICT industry and possible future trends.

● Appreciate the role of big data, cloud computing and data analytics in a typical IoT system.


Course Content:

1. Introduction to the Internet of Things

○ What is the IoT and why is it important?

○ Elements of an IoT ecosystem.

○ Technology and business drivers.

○ IoT applications, trends and implications.


2. Sensors and sensor nodes

○ Sensing components and devices.

○ Sensor modules, nodes and systems.


3. Connectivity and networks

○ Wireless technologies for the IoT.

○ Edge connectivity and protocols.

○ Wireless sensor networks.


4. Analytics and applications

○ Data analytics at the edge and in the cloud.

○ Databases, cloud analytics, applications and services.


5. Practical IoT exercises


Assessment:

The summative (assessed) deliverable for this module will be an individual project assessed through a 100% end-of-module report.

Students, however, will also be required to complete a number of formative (unassessed) activities throughout the course.


Connected Learning and this module:

For this academic year 2020-2021, it will be challenging to build a complete, physical IoT system. Where the nature of the task pertaining to one or more of the IoT layers allows for online and remote delivery (for example, development in the cloud, data analysis and predictive modelling), then such content and tasks will be delivered in a similar way to previous years. Where the nature of the task requires physical interaction (for example, programming a CC3200 development board), then such tasks will be replaced by simulation and emulation.

It is important to note that there are limitations in using software to simulate or emulate real-world components and devices, and a limit on the ‘realism’ that can be expected. Hardware components and devices that provide tactile or physical outputs in a real circuit can only be monitored in a simulation by measuring the effect of using it, for example, the magnitude of the current that they draw and so forth.

For each week, you will be required to study a range of materials in your own time (asynchronously). Such materials might include pre-recorded videos accompanied by slides or notes, as well as a number of activities, such as quizzes, practical exercises, programming tasks, discussion debates and more to enrich your learning. Practical exercises and programming tasks will be carried out using industry-standard software tools. Reading lists and supplementary resources will be provided for each topic.


Recommended Reading:

● J. Biron and J. Follett, “Foundational Elements of an IoT Solution”, O'Reilly Media, 2016.

● A. Al-Fuqaha, M. Guizani, M. Mohammadi, M. Aledhari and M. Ayyash, “Internet of Things: A Survey on Enabling Technologies, Protocols, and Applications,” in IEEE Communications Surveys & Tutorials, vol. 17, no. 4, pp. 2347-2376, Fourth quarter 2015.

● A. Gerber and J. Romeo, “Key concepts and skills for getting started in IoT”, IBM Developer, 2017 (updated in 2020)

● Keysight Technologies, “The Internet of Things: Enabling Technologies and Solutions for Design and Test”, Application Note, 2016.