Introduction to the Internet of Things and Embedded Systems (Coursera)
The explosive growth of the “Internet of Things” is changing our world and the rapid drop in price for typical IoT components is allowing people to innovate new designs and products at home. In this first class in the specialization, you will learn the importance of IoT in society, the current components of typical IoT devices, and trends for the future. IoT design considerations, constraints, and interfacing between the physical world and your device will also be covered.
You will also learn how to make design trade-offs between hardware and software. We’ll also cover key components of networking to ensure that students understand how to connect their devices to the Internet. Please note that this course does not include discussion forums.
Upon completing this course, you will be able to:
- Define the term “Internet of Things”
- State the technological trends which have led to IoT
- Describe the impact of IoT on society
- Define what an embedded system is in terms of its interface
- Enumerate and describe the components of an embedded system
- Describe the interactions of embedded systems with the physical world
- Name the core hardware components most commonly used in IoT devices
- Describe the interaction between software and hardware in an IoT device
- Describe the role of an operating system to support software in an IoT device
- Explain the use of networking and basic networking hardware
- Describe the structure of the Internet
- Describe the meaning of a “network protocol” 13. Explain MANETs and their relation to IoT
What Is the Internet of Things (IoT)?
The Internet of Things (IoT) is a popular buzzword right now, but unlike many fads which have come and gone, the Internet of Things describes an important trend which is having lasting effects on society at large. The term itself, “Internet of Things”, is used to mean a variety of ideas, depending on the motivation and background of the speaker. This course will start by providing a definition of the term. We will talk about how various trends have enabled the Internet of Things, and how it changes the way design is performed. We will also discuss some of the ramifications that IoT is having on society today.
In Module 1, we introduced the concept of the Internet of Things at a high level, defining the term and outlining its implications. In this module, we explore some of the details involved in the design and implementation of IoT devices. Unlike traditional computer-based systems, IoT devices are “embedded” within other devices in order to provide enhanced functionality without exposing the user to the complexities of a computer.
The users interact with the device in a natural way, similar to their interactions with any other objects in the world. In this way, an embedded system has an interface that conforms to the expectations and needs of the users. Establishing a natural interface requires that the embedded system interface with the physical world directly through sensors, which read the state of the world, and actuators, which change the state of the world. In this module, we will discuss the structure of embedded systems and describe these interactions with the physical world.
Hardware and Software
IoT devices are implemented using both hardware and software components. Dedicated hardware components are used to implement the interface with the physical world, and to perform tasks that are more computationally complex.
Microcontrollers are used to execute software that interprets inputs and controls the system. This module discusses the roles of both the hardware and software components in the system. The functions of common hardware components are described and the interface between the software and hardware through the microcontroller is explained. IoT devices often use an operating system to support the interaction between the software and the microcontroller. We will define the role of an operating system in an IoT device and how an IoT operating system differs from a standard one.
Networking and the Internet
An important aspect of the Internet of Things is that devices are networked in some way, and often connected to the Internet. Networking enables devices to communicate with other IoT devices and larger cloud-based servers. IoT devices can often be thought of as small parts of a much larger collective system which includes large servers based in the cloud.
This module will introduce the basics of networking and the Internet protocol in particular. Eventually, most IoT devices are connected to the Internet, so understanding the protocols associated with the Internet is important to the design of IoT devices. We will also introduce the concept of a Mobile Ad Hoc Network, or MANET, which describes small, local networks of IoT devices.