Description
Description
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 the overwhelming majority 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
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.
A number of devices, platforms and software tools will be introduced during the course from different vendors. Examples include:
听听听 Sensors layer: Arduino IDE (https://www.arduino.cc/en/software) and MKR1010 board.
听听听 Connectivity layer: SmartMesh Power and Performance Estimator (Dust Networks). Not assessed.
听听听 Data analytics: MATLAB (from MathWorks) and Python (using Jupiter notebooks in Anaconda).
听听听 Cloud development: AWS IoT Core 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 鈥淚nternet 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 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.
Assessment:
Assessment is via a 100% coursework-based project. Coursework deliverables include a system demonstration, a data analytics report, an ethics and security report and a final project report. Coursework deliverables will be examined both through group work and through individual contribution.
Module deliveries for 2024/25 academic year
Last updated
This module description was last updated on 19th August 2024.
听