Introduction
Industrial and manufacturing prospects more and more depend on AWS IoT SiteWise to gather, retailer, arrange, and monitor information from industrial gear at scale. AWS IoT SiteWise gives an industrial information basis for distant gear monitoring, efficiency monitoring, detecting irregular gear conduct, and assist for superior analytics use instances.
Constructing reminiscent of an information basis usually entails modeling your belongings and ingesting reside and historic telemetry information. This will likely require a big effort when addressing tens of hundreds of apparatus and ever-changing operations in pursuit of lowering waste and enhancing effectivity.
We launched three new options for AWS IoT SiteWise at re:Invent 2023 to enhance your asset modeling efforts. Clients can now symbolize gear parts utilizing Asset mannequin parts, selling reusability. With Metadata bulk operations, they’ll mannequin their gear and handle adjustments in bulk. Consumer-defined distinctive identifiers assist prospects obtain consistency throughout the group by utilizing their very own identifiers.
On this weblog put up, we are going to look at 11 real-world buyer eventualities associated to asset modeling. We are going to share code examples that can assist you be taught extra in regards to the new AWS IoT SiteWise options associated to every state of affairs.
Conditions
- Familiarity with asset modeling in AWS IoT SiteWise
- An AWS account
- Fundamental information of Python
Setup the setting
First, you’ll configure your developer workstation with AWS credentials and confirm that Python is put in. Subsequent you’ll set up Git, clone the code instance venture to your workstation, and arrange the venture. Lastly, you’ll create an AWS Id and Entry Administration (IAM) coverage.
- Create an Amazon EC2 occasion or use any on-premises machine as a developer workstation
- Configure AWS credentials
- Confirm Python 3.x is put in in your system by working
python3 --versionorpython --version(on Home windows) - Utilizing terminal, set up Git and clone the Metadata Bulk Operations Pattern for AWS IoT SiteWise repository from the AWS Samples library on Github
- Set up required Python packages by working
pip3 set up -r necessities.txt - Replace
config/project_config.ymlto supply required data for the jobs3_bucket_name: Identify of the S3 bucket the place bulk definitions will likely be savedjob_name_prefix: Prefix for use for the majority operations jobs
- Create an AWS Id and Entry Administration (IAM) coverage with permissions that enable the alternate of AWS sources between Amazon S3, AWS IoT SiteWise, and your native machine. This may assist you to carry out bulk operations.
Onboard and handle belongings at scale
AWS IoT SiteWise now helps the majority import, export, and replace of commercial gear metadata for modeling at scale. These bulk operations are accessible by means of new API endpoints reminiscent of CreateMetadataTransferJob, ListMetadataTransferJobs, GetMetadataTransferJob and CancelMetadataTransferJob.
With this new functionality, customers can bulk onboard and replace belongings and asset fashions in AWS IoT SiteWise. They will additionally migrate belongings and asset fashions between completely different AWS IoT SiteWise accounts.
You’ll primarily use metadata bulk import jobs for this weblog. The next diagram and steps clarify the workflow concerned in a metadata bulk import job.

Steps in Metadata Bulk Import Move
- Put together a job schema JSON file for AWS IoT SiteWise sources. This would come with asset fashions and belongings, following the AWS IoT SiteWise metadata switch job schema. Add this file to an Amazon S3 bucket.
- Make a metadata bulk import name to AWS IoT SiteWise, referencing the uploaded JSON file
- AWS IoT SiteWise will import all of the sources specified within the JSON file
- Upon completion, AWS IoT SiteWise will return the standing and a presigned Amazon S3 URL for any failures encountered
- If there are failures, entry the supplied report to analyze and perceive the basis trigger
You can even carry out bulk operations utilizing the console by navigating to Construct → Bulk Operations. Now that you simply perceive how metadata bulk operations work, you will note how this characteristic will help within the following real-world eventualities.
State of affairs 1 – Onboard preliminary asset fashions & belongings
Throughout a Proof of idea (POC), our prospects usually onboard a subset of their gear to AWS IoT SiteWise. Utilizing metadata bulk operations, you may import hundreds of asset fashions and belongings to AWS IoT SiteWise in a single import job.
For a fictitious automotive manufacturing firm, import asset fashions and belongings associated to the welding strains at one in every of its manufacturing crops.python3 src/import/important.py --bulk-definitions-file 1_onboard_models_assets.json

State of affairs 2 – Outline asset hierarchy
As soon as the asset fashions and belongings are created in AWS IoT SiteWise, you may outline the connection between belongings and create an asset hierarchy. This hierarchy helps customers to trace efficiency throughout completely different ranges, from the gear stage to the company stage.
Create an asset hierarchy for Sample_AnyCompany Motor manufacturing firmpython3 src/import/important.py --bulk-definitions-file 2_define_asset_hierarchy.json

State of affairs 3 – Affiliate information streams with asset properties
Our prospects usually begin ingesting information from their information sources such OPC UA server, even earlier than modeling their belongings. In these conditions, the information ingested into SiteWise is saved in information streams that aren’t related to any asset properties. As soon as the ingestion train is full, you should affiliate the information streams with particular asset properties for contextualization.
Affiliate the information streams for Sample_Welding Robotic 1 and Sample_Welding Robotic 2 with corresponding asset properties.
python3 src/import/important.py --bulk-definitions-file 3_associate_data_streams_with_assets.json

On this weblog, we created three separate metadata bulk import jobs. These jobs have been for creating asset fashions and belongings, defining the asset hierarchy, and associating information streams with asset properties. You can even carry out all of those actions utilizing a single metadata bulk import job.
State of affairs 4 – Onboard extra belongings
After demonstrating the enterprise worth throughout POC, the following step is to scale the answer inside and throughout crops. This scale can embody remaining belongings in the identical plant, and new belongings from different crops.
On this state of affairs, you’ll onboard extra welding robots (#3 and #4), and a brand new manufacturing line (#2) from the identical Chicago plant.python3 src/import/important.py --bulk-definitions-file 4_onboard_additional_assets.json

State of affairs 5 – Create new properties
You may improve asset fashions to accommodate adjustments in information acquisition. For instance, when new sensors are put in to seize extra information, you may replace the corresponding asset fashions to mirror these adjustments.
Add a brand new property Joint 1 Temperature to Sample_Welding Robotic asset mannequinpython3 src/import/important.py --bulk-definitions-file 5_onboard_new_properties.json

State of affairs 6 – Repair handbook errors
Errors can happen throughout asset modeling particularly when customers manually enter data. Examples embody asset serial numbers, asset descriptions, and items of measurement. To appropriate these errors, you may replace the knowledge with the proper particulars.
Appropriate the serial variety of Sample_Welding Robotic 1 asset by changing the outdated serial quantity S1000 with S1001.python3 src/import/important.py --bulk-definitions-file 6_fix_incorrect_datastreams.json

State of affairs 7 – Relocate belongings
Manufacturing line operations change for a number of causes, reminiscent of course of optimization, technological developments, and gear upkeep. In consequence, some gear could transfer from one manufacturing line to a different. Utilizing Metadata bulk operations, you may replace the asset hierarchy to adapt to the adjustments in line operations.
Transfer Sample_Welding Robotic 3 asset from Sample_Welding Line 1 to Sample_Welding Line 2.python3 src/import/important.py --bulk-definitions-file 7_relocate_assets.json

State of affairs 8 – Backup asset fashions and belongings
AWS recommends that you simply take common backups of asset fashions and belongings. These backups can be utilized for catastrophe restoration or to roll again to a previous model. To create a backup, you need to use the bulk export operation. Whereas exporting, you may filter particular asset fashions and belongings to incorporate in your exported JSON file.
You’ll now again up the definitions of all welding robots underneath welding line 1. Exchange <YOUR_ASSET_ID> in 6_backup_models_assets.json with the Asset ID of Sample_Welding Line 1.
python3 src/export/important.py --job-config-file 8_backup_models_assets.json

State of affairs 9 – Promote asset fashions and belongings to a different setting
Through the use of the metadata bulk export operation adopted by the majority import operation, you may promote a set of asset fashions and belongings from one setting to a different.
Promote all of the asset fashions and belongings from the event to the testing setting.python3 src/import/important.py --bulk-definitions-file 9_promote_to_another_environment.json

Preserve consistency all through the group
Many industrial corporations could have modeled some or most of their industrial gear in a number of programs reminiscent of asset administration programs and information historians. It is necessary for these corporations to make use of frequent identifiers throughout the group to take care of consistency.
AWS IoT SiteWise now helps using exterior ID and user-defined UUID for belongings and asset fashions. With the exterior ID characteristic, customers can map their present identifiers with AWS IoT SiteWise UUIDs. You may work together with asset fashions and belongings utilizing these exterior IDs. The user-defined UUID characteristic helps customers to reuse the identical UUID throughout completely different environments reminiscent of growth, testing, and manufacturing.
To be taught in regards to the variations between exterior IDs and UUIDs, discuss with exterior IDs.
State of affairs 10 – Apply exterior identifiers
You may apply exterior IDs utilizing the AWS IoT SiteWise console, API, or metadata bulk import job. This may be executed for present asset fashions, or belongings with none exterior IDs in AWS IoT SiteWise.
Apply exterior ID to an present asset, for instance, Sample_Welding Robotic 4.python3 src/import/important.py --bulk-definitions-file 10_apply_external_identifier.json

Promote standardization and reusability utilizing mannequin composition
AWS IoT SiteWise launched assist for a element mannequin. That is an asset mannequin sort that helps industrial corporations mannequin smaller items of apparatus and reuse them throughout asset fashions. This helps standardize and reuse frequent gear parts, reminiscent of motors.
For instance, a CNC Lathe (asset mannequin) is product of parts reminiscent of servo motors. With this characteristic, a servo motor could be modeled independently as a element and reused in one other asset mannequin, reminiscent of a CNC Machining Middle.

State of affairs 11 – Compose asset fashions
You may compose asset fashions utilizing the AWS IoT SiteWise console, API or metadata bulk import job.
Compose the Sample_Welding Robotic asset mannequin by independently modeling parts in a welding robotic, reminiscent of a robotic joint.python3 src/import/important.py --bulk-definitions-file 11_compose_models.json

Clear Up
When you now not require the pattern answer, think about eradicating the sources.
Run the next to take away all of the asset fashions and belongings created utilizing this pattern repository.python3 src/remove_sitewise_resources.py --asset-external-id External_Id_Company_AnyCompany
Conclusion
On this put up, we demonstrated using new AWS IoT SiteWise options, reminiscent of Metadata bulk operations, Consumer-defined distinctive identifiers, and Asset mannequin parts. Collectively, these options promote standardization, reusability, and consistency throughout your group, whereas serving to you to scale and improve your asset modeling initiatives.
Concerning the authors
Raju Gottumukkala is a Senior WorldWide IIoT Specialist Options Architect at AWS, serving to industrial producers of their sensible manufacturing journey. Raju has helped main enterprises throughout the vitality, life sciences, and automotive industries enhance operational effectivity and income development by unlocking true potential of IoT information. Previous to AWS, he labored for Siemens and co-founded dDriven, an Business 4.0 Knowledge Platform firm. |

