Introduction
Industrial and manufacturing clients more and more depend on AWS IoT SiteWise to gather, retailer, set up, and monitor knowledge from industrial gear at scale. AWS IoT SiteWise gives an industrial knowledge basis for distant gear monitoring, efficiency monitoring, detecting irregular gear conduct, and assist for superior analytics use instances.
Constructing similar to a knowledge basis usually entails modeling your property and ingesting reside and historic telemetry knowledge. This may occasionally require a big effort when addressing tens of hundreds of kit and ever-changing operations in pursuit of decreasing 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 elements utilizing Asset mannequin elements, selling reusability. With Metadata bulk operations, they will mannequin their gear and handle modifications in bulk. Consumer-defined distinctive identifiers assist clients obtain consistency throughout the group by utilizing their very own identifiers.
On this weblog put up, we are going to study 11 real-world buyer situations associated to asset modeling. We are going to share code examples that can assist you study extra in regards to the new AWS IoT SiteWise options associated to every situation.
Conditions
- Familiarity with asset modeling in AWS IoT SiteWise
- An AWS account
- Primary 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 mission to your workstation, and arrange the mission. 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 --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 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 permit the alternate of AWS assets between Amazon S3, AWS IoT SiteWise, and your native machine. This can will let you carry out bulk operations.
Onboard and handle property at scale
AWS IoT SiteWise now helps the majority import, export, and replace of business gear metadata for modeling at scale. These bulk operations are accessible via new API endpoints similar to CreateMetadataTransferJob, ListMetadataTransferJobs, GetMetadataTransferJob and CancelMetadataTransferJob.
With this new functionality, customers can bulk onboard and replace property and asset fashions in AWS IoT SiteWise. They will additionally migrate property 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 Stream
- Put together a job schema JSON file for AWS IoT SiteWise assets. This would come with asset fashions and property, 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 assets 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
You can too 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 function will help within the following real-world situations.
Situation 1 – Onboard preliminary asset fashions & property
Throughout a Proof of idea (POC), our clients usually onboard a subset of their gear to AWS IoT SiteWise. Utilizing metadata bulk operations, you may import hundreds of asset fashions and property to AWS IoT SiteWise in a single import job.
For a fictitious automotive manufacturing firm, import asset fashions and property associated to the welding strains at certainly one of its manufacturing vegetation.python3 src/import/important.py --bulk-definitions-file 1_onboard_models_assets.json
Situation 2 – Outline asset hierarchy
As soon as the asset fashions and property are created in AWS IoT SiteWise, you may outline the connection between property 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
Situation 3 – Affiliate knowledge streams with asset properties
Our clients usually begin ingesting knowledge from their knowledge sources such OPC UA server, even earlier than modeling their property. In these conditions, the info ingested into SiteWise is saved in knowledge streams that aren’t related to any asset properties. As soon as the ingestion train is full, you could 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/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 had been for creating asset fashions and property, defining the asset hierarchy, and associating knowledge streams with asset properties. You can too carry out all of those actions utilizing a single metadata bulk import job.
Situation 4 – Onboard extra property
After demonstrating the enterprise worth throughout POC, the subsequent step is to scale the answer inside and throughout vegetation. This scale can embrace remaining property in the identical plant, and new property from different vegetation.
On this situation, 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
Situation 5 – Create new properties
You’ll be able to improve asset fashions to accommodate modifications in knowledge acquisition. For instance, when new sensors are put in to seize extra knowledge, you may replace the corresponding asset fashions to replicate these modifications.
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
Situation 6 – Repair guide errors
Errors can happen throughout asset modeling particularly when customers manually enter data. Examples embrace asset serial numbers, asset descriptions, and items of measurement. To right these errors, you may replace the data with the right particulars.
Right the serial variety of Sample_Welding Robotic 1 asset by changing the previous serial quantity S1000
with S1001
.python3 src/import/important.py --bulk-definitions-file 6_fix_incorrect_datastreams.json
Situation 7 – Relocate property
Manufacturing line operations change for a number of causes, similar to course of optimization, technological developments, and gear upkeep. In consequence, some gear might transfer from one manufacturing line to a different. Utilizing Metadata bulk operations, you may replace the asset hierarchy to adapt to the modifications 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
Situation 8 – Backup asset fashions and property
AWS recommends that you simply take common backups of asset fashions and property. These backups can be utilized for catastrophe restoration or to roll again to a previous model. To create a backup, you should utilize the majority export operation. Whereas exporting, you may filter particular asset fashions and property to incorporate in your exported JSON file.
You’ll now again up the definitions of all welding robots beneath welding line 1. Substitute
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
Situation 9 – Promote asset fashions and property 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 property from one setting to a different.
Promote all of the asset fashions and property from the event to the testing setting.python3 src/import/important.py --bulk-definitions-file 9_promote_to_another_environment.json
Keep consistency all through the group
Many industrial corporations might have modeled some or most of their industrial gear in a number of methods similar to asset administration methods and knowledge historians. It’s important for these corporations to make use of frequent identifiers throughout the group to keep up consistency.
AWS IoT SiteWise now helps using exterior ID and user-defined UUID for property and asset fashions. With the exterior ID function, customers can map their present identifiers with AWS IoT SiteWise UUIDs. You’ll be able to work together with asset fashions and property utilizing these exterior IDs. The user-defined UUID function helps customers to reuse the identical UUID throughout completely different environments similar to improvement, testing, and manufacturing.
To study in regards to the variations between exterior IDs and UUIDs, discuss with 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 achieved for present asset fashions, or property 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 part mannequin. That is an asset mannequin kind that helps industrial corporations mannequin smaller items of kit and reuse them throughout asset fashions. This helps standardize and reuse frequent gear elements, similar to motors.
For instance, a CNC Lathe (asset mannequin) is manufactured from elements similar to servo motors. With this function, a servo motor could be modeled independently as a part and reused in one other asset mannequin, similar 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 elements in a welding robotic, similar to a robotic joint.python3 src/import/important.py --bulk-definitions-file 11_compose_models.json
Clear Up
Should you now not require the pattern resolution, take into account eradicating the assets.
Run the next to take away all of the asset fashions and property 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, similar to Metadata bulk operations, Consumer-defined distinctive identifiers, and Asset mannequin elements. 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 Gottumakala![]() |