How to easily replicate individual asset dashboards in AWS IoT SiteWise Monitor

6 分的閱讀內容
中級
2

This article shows shows how to replicate individual asset dashboards in AWS IoT SiteWise Monitor using a simple tool we built and made available in GitHub.

Introduction

AWS IoT SiteWise Monitor is a feature that provides web portals and dashboards that allows you to visualize and share data from your industrial processes, devices, and equipment. Dashboards can visualize data from one or more assets in a hierarchy giving you the ability to create dashboards at either a high level, perhaps properties from multiple assets that make up a production line, or of individual assets where you may want to give a detailed view of the properties for a single asset to help operators investigate issues.

Creating dashboards is an easy drag and drop process, but creating and updating dashboards for individual assets can be a challenge when you increase the number of assets beyond a handful of machines, devices, or equipment. For example, if you want individual dashboards for ten conveyor belt assets of the same asset type you to first have to create each of the ten dashboards including all the dashboard widgets and desired asset properties, then when you want to make a change, say add another widget or change an existing widget from a line to a scatter plot, you have to edit all ten dashboards individually. The more properties, widgets, and detailed widget configurations you define the more work is required to keep all the dashboards in sync. To help with this challenge we created the AWS IoT SiteWise Dashboard Replicator Tool which automates the creation and synchronization of asset dashboards for you. In the rest of this article we will show you how to use the tool to replicate dashboards for example assets.

Overview

The AWS IoT SiteWise Dashboard Replicator Tool consists of a simple Python command line script that replicates a source dashboard for all assets that share the same AWS IoT SiteWise asset model. You use the source dashboard as the template for all the dashboards for the individual assets. You only need to edit the source dashboard and the tool will create and/or update the dashboards for each asset when you run it. Source dashboards are indicated by a specifying the tag {source} in the dashboard name. When you run the tool, it will search for dashboards with the tag and automatically figure out the asset model associated to the asset for the particular dashboard. The tool then enumerates all the assets that are associated with the model and creates or updates dashboards for each asset. The command line also allows you to provide a custom tag or dashboard id to indicate the source dashboard you would like to use. Here is a visual representation of how it works.

Enter image description here

Note: The source dashboard can only reference properties from a single asset, if it references properties from more than one asset the tool will throw error because it does not know what asset model and corresponding assets you want to replicate dashboards for.

Walkthrough

In this walkthrough we will show how the tool can be used to replicate and synchronize dashboards for several example conveyor belt assets. This walkthrough assumes you already know how to create AWS SiteWise Monitor projects and dashboards. For the walkthrough we will perform the following steps:

  • Create a source dashboard in AWS IoT SiteWise Monitor with a simple widget.
  • Use the dashboard replication tool to create dashboards for each conveyor belt asset.
  • Update the source dashboard with additional widgets and asset properties.
  • Use the replication tool to update the dashboard changes for each conveyor belt dashboard.

Create Source Dashboard

We start by creating a source dashboard in an AWS IoT SiteWise Monitor project. Notice how the dashboard we have created below has the {source} tag in its name.

Enter image description here

For demonstration purposes we keep initial version simple with a single widget and property from Conveyor Belt 1. In our example below the property is a feed rate metric. If you are following along with your own AWS IoT SiteWise assets make sure you create a source dashboard with properties from only one asset, if you add properties from more than one asset the tool will throw an error and not replicate the dashboard.

Enter image description here

Run the tool to replicate source dashboard

The Dashboard Replicator Tool can be found in the AWS IoT SiteWise Tools repository in GitHub. Once the tool is cloned to your local machine you can then run the Dashboard Replicator Tool from the command line to create dashboards for each conveyor belt asset. In our example we specify the region we want to run the tool in (us-east-1) using the --region flag.

Enter image description here

Note: The Dashboard Replicator Tool uses the AWS Boto Python SDK and assumes you have AWS credentials configured on your local machine. To install and configure Boto3 please see the QuickStart documentation for details.

If we navigate back to the AWS IoT SiteWise Monitor portal we see that we now have two additional dashboards in addition to the source dashboard.

Enter image description here

We can verify that the newly replicated dashboards are identical by checking the Conveyor details – Conveyor Belt 2 dashboard.

Enter image description here

Update the source dashboard

Now we will make several updates to the source dashboard and run the tool again to update the previously created dashboards. In our example we will add timeline and line graph widgets along with several asset properties. Once again if you are following along with your own assets make sure all the properties come from a single asset or the tool will throw an error.

Enter image description here

Update the asset dashboards using the tool

To update we simply run the replication command exactly as we ran it the first time. The tool knows if it needs to create a new dashboard or update an existing one.

Enter image description here

We can verify again that our changes have updated in the Conveyor details – Conveyor belt 2 dashboard.

Enter image description here

That’s it! Next time you add more assets (i.e. Conveyor belt 3) run the tool again and it will create dashboards for each of the additional assets.

Conclusion

In this article we introduced the AWS IoT SiteWise Dashboard Replicator Tool, how it works and a short walk through on how to use it to replicate dashboards for conveyor belt assets. While our example shows the tool being used manually via a workstation command line, it can also be integrated into your specific CI/CI automation pipelines via managed services like AWS Lambda functions. We welcome improvements or additions to the tool so if you have something to contribute back to the repository feel free to submit a pull request for review.

profile picture
專家
已發佈 1 個月前檢視次數 179 次
沒有評論