Introduction
Industrial and manufacturing clients more and more depend on AWS IoT SiteWise to gather, retailer, manage, 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 help for superior analytics use instances.
Constructing corresponding to a knowledge basis sometimes includes modeling your belongings and ingesting stay and historic telemetry information. This will require a big effort when addressing tens of 1000’s of apparatus and ever-changing operations in pursuit of decreasing waste and bettering effectivity.
We launched three new options for AWS IoT SiteWise at re:Invent 2023 to enhance your asset modeling efforts. Prospects can now signify gear parts utilizing Asset mannequin parts, selling reusability. With Metadata bulk operations, they will mannequin their gear and handle adjustments in bulk. Person-defined distinctive identifiers assist clients obtain consistency throughout the group through the use of their very own identifiers.
On this weblog submit, we’ll look at 11 real-world buyer situations associated to asset modeling. We’ll share code examples that will help you study extra concerning the new AWS IoT SiteWise options associated to every state of affairs.
Stipulations
- 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 undertaking to your workstation, and arrange the undertaking. Lastly, you’ll create an AWS Id and Entry Administration (IAM) coverage.
- Create a Cloud9 setting utilizing
Amazon Linux 2
platform (advisable) 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 --version
orpython --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.yml
to supply required info for the jobs3_bucket_name
: Identify of the S3 bucket the place bulk definitions shall be savedjob_name_prefix
: Prefix for use for the majority operations jobs
- Create an AWS Id and Entry Administration (IAM) coverage with permissions that permit the change of AWS sources between Amazon S3, AWS IoT SiteWise, and your native machine. It will let you 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 way of new API endpoints corresponding to CreateMetadataTransferJob, ListMetadataTransferJobs, GetMetadataTransferJob and CancelMetadataTransferJob.
With this new functionality, customers can bulk onboard and replace belongings and asset fashions in AWS IoT SiteWise. They’ll additionally migrate belongings and asset fashions between totally 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 Circulation
- 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 research and perceive the foundation trigger
It’s also possible to 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 notice how this characteristic can assist within the following real-world situations.
Situation 1 – Onboard preliminary asset fashions & belongings
Throughout a Proof of idea (POC), our clients sometimes onboard a subset of their gear to AWS IoT SiteWise. Utilizing metadata bulk operations, you’ll be able to import 1000’s 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 among its manufacturing crops.python3 src/import/most important.py --bulk-definitions-file 1_onboard_models_assets.json
Situation 2 – Outline asset hierarchy
As soon as the asset fashions and belongings are created in AWS IoT SiteWise, you’ll be able to outline the connection between belongings and create an asset hierarchy. This hierarchy helps customers to trace efficiency throughout totally different ranges, from the gear stage to the company stage.
Create an asset hierarchy for Sample_AnyCompany Motor manufacturing firmpython3 src/import/most important.py --bulk-definitions-file 2_define_asset_hierarchy.json
Situation 3 – Affiliate information streams with asset properties
Our clients sometimes begin ingesting information from their information sources such OPC UA server, even earlier than modeling their belongings. In these conditions, the info 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 info streams with particular asset properties for contextualization.
Affiliate the info streams for Sample_Welding Robotic 1 and Sample_Welding Robotic 2 with corresponding asset properties.
python3 src/import/most 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. It’s also possible to carry out all of those actions utilizing a single metadata bulk import job.
Situation 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/most important.py --bulk-definitions-file 4_onboard_additional_assets.json
Situation 5 – Create new properties
You’ll be able to improve asset fashions to accommodate adjustments in information acquisition. For instance, when new sensors are put in to seize extra information, you’ll be able to 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/most important.py --bulk-definitions-file 5_onboard_new_properties.json
Situation 6 – Repair handbook errors
Errors can happen throughout asset modeling particularly when customers manually enter info. Examples embody asset serial numbers, asset descriptions, and models of measurement. To right these errors, you’ll be able to replace the data with the proper particulars.
Appropriate the serial variety of Sample_Welding Robotic 1 asset by changing the previous serial quantity S1000
with S1001
.python3 src/import/most important.py --bulk-definitions-file 6_fix_incorrect_datastreams.json
Situation 7 – Relocate belongings
Manufacturing line operations change for a number of causes, corresponding to course of optimization, technological developments, and gear upkeep. Consequently, some gear might transfer from one manufacturing line to a different. Utilizing Metadata bulk operations, you’ll be able to 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/most important.py --bulk-definitions-file 7_relocate_assets.json
Situation 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 should utilize the bulk export operation. Whereas exporting, you’ll be able to 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. Substitute
in 6_backup_models_assets.json
with the Asset ID of Sample_Welding Line 1.
python3 src/export/most important.py --job-config-file 8_backup_models_assets.json
Situation 9 – Promote asset fashions and belongings to a different setting
By utilizing the metadata bulk export operation adopted by the majority import operation, you’ll be able to 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/most important.py --bulk-definitions-file 9_promote_to_another_environment.json
Keep consistency all through the group
Many industrial firms might have modeled some or most of their industrial gear in a number of methods corresponding to asset administration methods and information historians. It will be significant for these firms to make use of frequent identifiers throughout the group to take care of consistency.
AWS IoT SiteWise now helps the usage of exterior ID and user-defined UUID for belongings and asset fashions. With the exterior ID characteristic, customers can map their current identifiers with AWS IoT SiteWise UUIDs. You’ll be able to work together with asset fashions and belongings utilizing these exterior IDs. The user-defined UUID characteristic helps customers to reuse the identical UUID throughout totally different environments corresponding to improvement, testing, and manufacturing.
To study concerning the variations between exterior IDs and UUIDs, seek advice from exterior IDs.
Situation 10 – Apply exterior identifiers
You’ll be able to apply exterior IDs utilizing the AWS IoT SiteWise console, API, or metadata bulk import job. This may be executed for current asset fashions, or belongings with none exterior IDs in AWS IoT SiteWise.
Apply exterior ID to an current asset, for instance, Sample_Welding Robotic 4.python3 src/import/most important.py --bulk-definitions-file 10_apply_external_identifier.json
Promote standardization and reusability utilizing mannequin composition
AWS IoT SiteWise launched help for a part mannequin. That is an asset mannequin sort that helps industrial firms mannequin smaller items of apparatus and reuse them throughout asset fashions. This helps standardize and reuse frequent gear parts, corresponding to motors.
For instance, a CNC Lathe (asset mannequin) is made from parts corresponding to servo motors. With this characteristic, a servo motor might be modeled independently as a part and reused in one other asset mannequin, corresponding to a CNC Machining Heart.
Situation 11 – Compose asset fashions
You’ll be able to 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, corresponding to a robotic joint.python3 src/import/most important.py --bulk-definitions-file 11_compose_models.json
Clear Up
In the event you not require the pattern answer, take into account 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 submit, we demonstrated the usage of new AWS IoT SiteWise options, corresponding to Metadata bulk operations, Person-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.
In regards to the authors
Raju Gottumukkala is a Senior WorldWide IIoT Specialist Options Architect at AWS, serving to industrial producers of their good 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 Trade 4.0 Information Platform firm. |