1. 程式人生 > >Using AWS IoT Core in a Low-Power Application

Using AWS IoT Core in a Low-Power Application

At AWS, we work closely with customers to assist them in building various types of IoT solutions. We often hear from customers about the need to manage power consumption appropriately in IoT. In this blog post, we’ll discuss one of the options for achieving lower power consumption while connecting to AWS IoT Core. Specifically, we’ll show how your choice of wireless transport can help extend battery life. Communication is assumed to be wireless and can use Wi-Fi or LPWAN.

In a large number of IoT projects, powering a device isn’t an issue and line power can be used. In other projects, it may not be possible to run power directly to the device – this may be caused by building regulations; the cost to run the power lines or a need for the device to be somewhat mobile. In a situation like this, battery power will be considered for the device. A constraint on any solution design will be extending the battery life as long as possible.

Wi-Fi is well known and understood however it uses more power and provides a higher transfer rate. LPWAN is a low-power wide area network that uses less power than traditional Wi-Fi.

The following design will consider the Wi-Fi mechanism and a possible design option for that scenario.

Initial Design

A device keeps its current state and event log onboard in permanent storage. To extend battery life, it leaves the Wi-Fi radios powered down. As the following diagram shows, the device periodically performs the following actions:

  • Turn on the Wi-Fi radio and connect to the Wi-Fi gateway.
  • Connect to the endpoint.
  • Publish the event history to an MQTT topic.
  • Upload its current configuration settings (state) to an AWS IoT device shadow.
  • Download any new desired configuration settings (state) from an AWS IoT device shadow.
  • Make any configuration setting changes based on the desired state.
  • Turn off the Wi-Fi radio.

To extend battery life, you might consider the interval between data uploads. It can be set to a longer period when the device is not anticipated to be in active use.

Clusters of Devices

You can extend the initial design to include clusters of devices that are relatively close together and need to periodically communicate their state and event history.

In this scenario, not all the devices need to use energy-expensive Wi-Fi connections to transfer data. Bluetooth low energy (BLE) can provide a more energy-efficient method for getting the data from the devices to a combination BLE/Wi-Fi device in the cluster. This BLE/Wi-Fi device connects to the network and transfers data on behalf of the actual devices. We refer to this device as a device gateway in the rest of this post.

BLE allows the individual devices to advertise themselves and provides additional information about their state or offered services. The individual devices can advertise information like:

  • The length of time since the event history was last retrieved.
  • Important events in their history.
  • The current battery level.

For an introduction to the advertising structure of BLE, see this post on the Bluetooth blog.

Internal parameters like the following govern the actions of the device gateway:

  • The length of time an event history should remain on an individual device before collection is required.
  • Whether the event history should be collected immediately from an individual device that has an important event in its history.

The device gateway then periodically listens for BLE advertisements that match the criteria, as shown in the following diagram.

The first BLE device in the diagram has exceeded the maximum time between uploads. The last BLE device in the diagram has important events that need to be uploaded.

If the event history for one or more individual device must be uploaded, the device gateway does the following (for each device):

  • Connects to the device using BLE.
  • Retrieves the device information.
    • This might include the serial number used to calculate the target MQTT topic(s) where the device data should be delivered or the MQTT topics themselves.
  • Turns on the Wi-Fi radio and connect to the Wi-Fi gateway.
  • Connects to the IoT endpoint.
  • Publishes the individual device history to the MQTT topics generated/specified.
  • Informs the independent device that the event history has been successfully transmitted.
  • Uploads the independent device’s current configuration settings (state) to an IoT device shadow.
  • Downloads any new desired configuration settings (state) from an AWS? IoT device shadow and transmit them to the individual device.
  • Syncs the device’s time with the gateway.
  • Turns off the Wi-Fi radio.
  • Disconnects the BLE radio from active usage.

You can increase battery life even more by decreasing the advertising intervals for the BLE devices and reducing the transmit power of the BLE radios to a reasonable level for the distances in the cluster. Depending on the data transmit interval requirements and number of devices, you can also turn off the BLE radios for periods of time (for example, in the scenario where data collection needs to occur hourly or more frequently). If the BLE radios in both the independent devices and the device gateway were turned off for 20 minutes every hour, there would still be a minimum of 10 minutes overlap when the radios are on. If this is enough time for all the devices to send data through the gateway, then this could be an option. It works whether the times are in sync or out of sync.

Conclusion

This blog post showed you one of many power management solutions in IoT applications. It’s possible to extend the lifetime of the power source by combining BLE and Wi-Fi technologies and the selective powering of radios and sending of batches of data.

Bluetooth References

https://blog.bluetooth.com/bluetooth-low-energy-it-starts-with-advertising
https://docs.mbed.com/docs/ble-intros/en/latest/Introduction/BLEInDepth/
http://www.weightless.org/about/the-argument-for-lpwan-in-the-internet-of-things

相關推薦

Using AWS IoT Core in a Low-Power Application

At AWS, we work closely with customers to assist them in building various types of IoT solutions. We often hear from customers about the need to m

Using AWS IoT Device Management in a Retail Scenario to Process Order Requests

In this blog post, we will simulate a common business scenario to show you how to use the group policy feature in AWS IoT Device Management. Speci

How to build a front-line concussion monitoring system using AWS IoT and serverless data lakes

In part 1 of this series, we demonstrated how to build a data pipeline in support of a data lake. We used key AWS services such as Amazon Kinesis

Setting Up Just-in-Time Provisioning with AWS IoT Core

In an earlier blog post about just-in-time registration of device certificates, we discussed how just-in-time registration (JITR) can be used to a

Questions fréquentes (FAQ) sur AWS IoT Core

Q : Qu'est-ce que la passerelle pour les appareils ? La passerelle pour les appareils représente la pierre angulaire de la communica

AWS IoT Core Overview

AWS IoT Core is a managed cloud service that lets connected devices easily and securely interact with cloud applications and other devices. AWS Io

AWS IoT Core Resources

Amazon Web Services is Hiring. Amazon Web Services (AWS) is a dynamic, growing business unit within Amazon.com. We are currently hiring So

Présentations de AWS IoT Core

AWS IoT Core est un service basé sur le cloud géré qui permet aux appareils connectés d'interagir de manière simple et sécurisée avec d'autres app

Configuring Cognito User Pools to Communicate with AWS IoT Core

AWS IoT Core supports certificate-based mutual authentication, custom authorizers, and Amazon Cognito Identity as way to authenticate requests to

AWS IoT Core Features

The Rules Engine makes it possible to build IoT applications that gather, process, analyze and act on data generated by connected devices at gl

第七篇:AWS IoT Core服務成本優化

AWS IoT 物聯網系列部落格 當前物聯網環境中,裝置型別多種多樣,連線方式不一而足。為了幫助讀者更好的理解並運用 AWS IoT 相關服務,我們提供了一個完整的 IoT 起步指南,包含裝置的註冊及上線、裝置管理、使用者身份及許可權管理以及成本控制,通過這一系列的起步指南,

Tarification AWS IoT Core

2 250 000 minutes de connexion 500 000 messages 225 000 opérations exécutées sur le registre ou les shadows d'appareil

How AWS IoT Core is Helping Customers Navigate the Upcoming Distrust of Symantec Certificate Authorities

NOTE: This blog post describes important public key infrastructure (PKI) issues related to browser and mobile application connectivity to AWS IoT

AWS IoT Core Pricing

2,250,000 minutes of connection 500,000 messages 225,000 Registry or Device Shadow operations 250,000 rules t

Using AWS IoT for Predictive Maintenance

The interest in machine learning for industrial and manufacturing use cases on the edge is growing. Manufacturers need to know when a machine is a

AWS IoT Core 定價

2250000 分鐘/連線 500000 條訊息 225000 項登錄檔或裝置影子操作 250000 條觸發規則和 250000 項執行操作 例如,免費套餐允許您執行 50 臺裝置的工

AWS IoT Core 常見問題

問:如何定義和觸發規則? AWS IoT Core 規則包含兩大部分: SQL 語句:指定要應用規則的釋出/訂閱主題、要執行的資料轉換(如有的話)以及執行規則的條件。該規則應用到在指定主題上釋出的每一條訊息。 操作列表:

AWS IoT Core Getting Started

EIS-D210, wireless sensor management Edge Intelligence Server (EIS) is software and hardware integrated solution for IoT and cloud applicatio

AWS IoT Core FAQs

Q: What is the Device Gateway? The Device Gateway forms the backbone of communication between connected devices and the cloud capabi

Ask HN: How to assure a high software quality in low power embedded platforms?

What are the best practices for ensuring a high quality of embedded software in environments like ARM Cortex-M, PIC32 etc.? Manual testing? Unit testing in