OEM companies offer their customers different types of products and variants that may differ from each other in some characteristics (e.g. power, maximum load, form factor).
In Servitly to avoid defining a new Thing Definition for each different model, you can leverage the concept of Product Model, and associate them to Thing Definitions that may be reused among similar models.
In order to replicate the product catalog of the OEM, Product Models can be organized in Categories (e.g. family, series). Moreover, to describe complex machinery, Model Parts can be defined into a Product Model.
Here is a diagram describing the interconnection between Product Models, Model Parts, Things, and Thing Definitions.
In this example you can see how a packaging machine composed of several parts can be modeled.
In the right part of the diagram there are the Thing Definitions referenced by the packaging machine (PKG-5000), whose Product Model is described in the middle section. Instead, on the left there is a Thing and relative Sub-Things, representing the digital twin of an instance of packaging machine (PKG-5000).
Creating a new Product Model
Here you will find how to configure a Product Model and its own Category from scratch.
To create a new Product Model, you should:
Enter the Catalog / Product Models page.
Click on the top right Add Item button.
Select the Category radio button.
Edit the available fields.
Press the Save button.
Click on the 3-dots icon on the Category row, and then press Add Product Model.
Optionally you can also use the Add Item button, and select Product Model and the parent category.Edit the available fields.
Press the Save button.
The Product Models page displays the expandable tree of Categories with the belonging Product Models.
On the product model rows you can find also the presence of an associated Thing Definition.
By clicking on the 3-dots icon present on each row, you can access the menu of contextual actions, including Edit, Add and Delete options.
Editing a Category
By clicking the Edit action of Category row, you can edit the category main information.
Optionally you can change the parent category, this will move the entire branch (categories and product models) under the selected target category. If the target category is emptied, the edited category will be moved on the root level.
Editing a Product Model
By clicking the Edit action of Product Model row, you can edit the model main information:
Name: the name of the model (e.g. V-Shape 1200)
Description: a text describing in a few word the model.
Parent Category: the category this model belongs to.
Image: a representative image of the model.
The image is a public HTTPS URL from which the image can be downloaded.Technical Description: the technical description of the model (e.g. dimensions, loads, constraints and limitations)
Thing Definition: the Thing Definition used to implement the model in the DPS (e.g. metrics, parameters, events, dashboards).
Optionally you can define Technical Schemes that can be used to navigate Spare Parts in the Store page.
For more details refer to the Spare Part Reference article.
If the product is complex, such as a machine consisting of several parts (also nested), in a Product Model you can define Model Parts recursively.
Editing a Model Part
Model Parts can be used to describe complex product types, for instance large machinery composed by several groups, assembles, actuators, etc.
In a Product Model editing page, within the Model Parts section you can, add new a Model Part by specifying the Name and the optional parent Model Part.
By clicking the Edit action of Model Part row, you can edit the part main information:
Name: the name of the model (e.g. V-Shape 1200)
Description: a text describing in a few word the model.
Parent Model Part: the parent model part this part belongs, if null the model parts is directly under the Product Model.
Min/Max Occurs: the occurrences of this part in respect to the parent node.
Technical Description: the technical description of the model (e.g. dimensions, loads, constraints and limitations)
Thing Definition: the Thing Definition used to implement the model part in the DPS (e.g. metrics, parameters, events, dashboards) as a sub-thing of the thing associated with the Product Model.
Optionally, in a Model Part, you can define Technical Schemes that can be used to navigate Spare Parts in the Store page.
For more details refer to the Spare Part Reference article.
Product Models in the DPS
In the DPS, Product Models can be viewed in several ways, the main one being the use of Product Models in the thing inventory management.
If your environment is not using product models, refer to the Migrating DPS to Product Models article.
Now, let's assume that your environment is new and uses Product Models.
In the DPS, when a new Thing is created, you must select a Product Model that provides the main model information, and the Thing Definition used to implement the digital twin.
The same is valid for sub-things, in case you have defined Model Parts associated with Thing Definitions.