How the Azure IoT services and SDKs can help you to build an IoT solution to monitor and manage your devices. Azure IoT architecture

iot-architecture.png

IoT devices An IoT device is typically made up of a circuit board with sensors attached that uses WiFi to connect to the internet. For example:

  1. Temperature and humidity sensors refrigerator and air-condition.
  2. Smart Home devices and appliances.
  3. Payment Terminals
  4. Smart wearables For a list of devices certified to work with Azure IoT Hub, see the Azure Certified https://devicecatalog.azure.com/ for IoT device catalog. For prototyping a microprocessor device, you can use a device such as a Raspberry Pi https://www.raspberrypi.org/. The Raspberry Pi lets you attach many different types of sensors. Because IoT Central uses IoT Hub internally, any device that can connect to an IoT Central application can also connect to an IoT hub.

Azure IoT Refrence architecture

iot-refarch.png

Connectivity Typically, IoT devices send telemetry from their attached sensors to cloud services in your solution. However, other types of communication are possible such as a cloud service sending commands to your devices. The following are examples of device-to-cloud and cloud-to-device communication: • A connected coffee machine sends water temperature every minute to an IoT Hub. • A cloud service sends a command to a connected coffee machine to put it into maintenance mode. • A device monitoring a batch reactor in a chemical plant sends an alert when the temperature exceeds a certain value. • A thermostat reports the maximum temperature the device has reached since the last reboot. • A cloud service sets the target temperature for a thermostat device. The IoT Device SDKs and IoT Hub support common communication protocols such as HTTP, MQTT, and AMQP for device-to-cloud and cloud-to-device communication. In some scenarios, you may need a gateway to connect your IoT devices to your cloud services.

Cloud services In an IoT solution, the cloud services typically: • Receive telemetry at scale from your devices, and determine how to process and store that data. • Analyze the telemetry to provide insights, either in real time or after the fact. • Send commands from the cloud to specific devices. • Provision devices and control which devices can connect to your infrastructure. • Control the state of your devices and monitor their activities. • Manage the firmware installed on your devices. For example, in a remote monitoring solution for connected coffee machines, the services use telemetry from the coffee machines to identify anomalous behavior. When a cloud service identifies an anomaly, it can automatically send a notification to the maintenance department.

You could use the built-in features of IoT Central to build your connected coffee machine solution. IoT Central lets you: • Manage your connected coffee machines and their data throughout their life cycle. • Create rules to monitor the data from your connected coffee machines and email the maintenance department when a machine requires servicing. • Create a dashboard to visualize the location and status of your connected coffee machines.

To build an IoT solution from scratch, use one or more of the following Azure IoT technologies and services: Azure IoT Hub service Azure IoT Hub Device Provisioning Service (DPS) to bridge the gap between the physical and digital worlds, Azure Digital Twins . Azure IoT Edge Azure Sphere Azure Data Explorer Azure Functions

Steps for IOT works • Device development • Device connectivity • Device management and control • Process and route messages • Extend your IoT solution • Analyze and visualize your IoT data • Manage your solution • Secure your solution • Scalability and high availability

Protocols An IoT device can use one of several network protocols when it connects to an IoT Hub or DPS endpoint: • MQTT • MQTT over WebSockets • Advanced Message Queuing Protocol (AMQP) • AMQP over WebSockets • HTTPS Industrial IoT scenarios often use the open platform communications unified architecture (OPC UA) industry standard open interface. To enable connectivity to IoT Hub, use the OPC Publisher that runs as a module on IoT Edge.

Connection patterns There are two broad categories of connection patterns that IoT devices use to connect to the cloud: • Persistent connections are required when your solution needs command and control capabilities. In command and control scenarios, your IoT solution sends commands to devices to control their behavior in near real time. Persistent connections maintain a network connection to the cloud and reconnect whenever there's a disruption. Use either the MQTT or the AMQP protocol for persistent device connections to an IoT hub. The IoT device SDKs enable both the MQTT and AMQP protocols for creating persistent connections to an IoT hub. • Ephemeral connections are brief connections for devices to send telemetry to your IoT hub. After a device sends the telemetry, it drops the connection. The device reconnects when it has more telemetry to send. Ephemeral connections aren't suitable for command and control scenarios. A device client can use the HTTP API if all it needs to do is send telemetry.

Field gateways Field gateways (sometimes referred to as edge gateways) are typically deployed on-premises and close to your IoT devices. Field gateways handle communication with the cloud on behalf of your IoT devices. • Do protocol translation. For example, enabling Bluetooth enabled devices to connect to the cloud. • Manage offline and disconnected scenarios. For example, buffering telemetry when the cloud endpoint is unreachable. • Filter, compress, or aggregate telemetry before it's sent to the cloud. • Run logic at the edge to remove the latency associated with running logic on behalf of devices in the cloud. For example, detecting a spike in temperature and opening a valve in response.

In Azure IoT, device management includes tasks such as: Device registration: Device provisioning: Device deployment: Device updates: Device monitoring:

Analysis and visualization services and tools you can incorporate into your IoT solution include: Azure Digital Twins Azure Data Explorer Azure Databricks Azure Stream Analytics Azure Maps Grafana ** You can divide security in an IoT solution into the following three areas:** • Device security: Secure the IoT device while it's deployed in the wild. • Connection security: Ensure all data transmitted between the IoT device and the IoT cloud services is confidential and tamper-proof. • Cloud security: Secure your data while it moves through, and is stored in the cloud.

The decision of how you can use Azure IoT to build your IoT solution is ultimately determined by: • Your business requirements • The type of solution you want to develop • Your organization's skill set in Azure IoT technologies

A more comprehensive list of considerations includes: Question Business process realignment Do you plan to use IoT to realign your organization's business processes? Cloud expertise Does your team have minimal cloud expertise? Time series data Do you need to analyze large-scale time-series data? Offload processing to IoT Edge devices Do you plan to offload processing to edge devices? Scale Do you need to manage IoT assets at scale? Modeling physical spaces Do you need to model a physical space? Secure IoT devices Do you need to manage and secure devices?