AIS2103
IoT and Network Programming
Last taught 2023
Spring
Ålesund
Norwegian and English
About this course
Content
The course contains a selection of the following topics, with an emphasis on Industrial IoT and network programming from an automation perspective:
- Definitions, terminology, concepts, and standards within IoT, with an emphasis on modern communication technologies.
- Enabling technologies, application areas, paradigms, infrastructure, and architecture for IoT, including data transmission, data storage, data analysis (including Edge, Fog, and Cloud Computing).
- Typical sensors and actuators and basic measurement engineering.
- Basic signal processing (e.g., antialiasing, noise reduction, Kalman filter), data processing and error detection (incl. wild-point detection) for IoT.
- Common hardware, architecture, and programming for IoT, including embedded systems such as AVR (Arduino), ESP (Espressif), and ARM (Raspberry Pi).
- Introduction to communication and networks for IoT, including common protocols (e.g., MQTT), technologies (mobil, WiFi, Bluetooth/NFC, satellite, LoRa/LoRaWAN, and more), topologies, layer models.
- Practical introduction to basic Big Data, data analysis, and machine learning with the use of cloud services (e.g., Microsoft Azure).
- Security and privacy for IoT.
- Basic introduction to energy usage of IoT devices.
- Practical problem solving with digital tools (e.g., Node-RED) and network programming for IoT.
More details on the curriculum will provided during the start of semester.
Learning outcomes
Knowledge
- The candidate can explain definitions, terminology, concepts, and standards within IoT, with an emphasis on modern communication technologies.
- The candidate is familiar with a selection of enabling technologies, application areas, paradigms, infrastructure, architecture, sensors, and actuators for IoT.
- The candidate is familiar with a selection of protocols, communication standards, topologies, and layered models for data communication within IoT, and can recognise and compare use of Edge, Fog, and Cloud Computing.
- The candidate can compare common hardware, sensors, and actuators within IoT and suggest relevant solutions for well-known problems.
- The candidate can explain common challenges related to security and privacy within IoT, explain common security mechanisms, and point out relevant solutions.
Skills:
- The candidate can perform measurements and basic analysis using common sensors, perform basic analog and digital signal processing, error detection, and data processing, and perform simple data logging, data transmission, and remote control within IoT.
- The candidate is able to use a cloud solution with support for machine learning for simple data analysis.
- The candidate can implement simple cyber-physical systems for IoT with emphasis on industrial use, including use of digital tools, network programming, and programming common hardware.
General competence
- The candidate can employ relevant theory and modern methods across disciplines for the construction of innovative, sustainable, and ethically sound composed systems that also addresses security and safety.
- The candidate can present relevant problems and communication-related solutions for people with a technical background.
Teaching methods
Learning activities generally include a mix of lectures, tutorials and practical lab/project work. A constructivist approach for learning is endorsed, with focus on problem solving and practical application of theory.