Skip to main content

Position

When creating a digital twin you often start with a basic structure, such as a building or an industrial facility. You can then progressively add components such as equipment, furniture, or installations. Each component in the digital twin can be represented by a GLTF file and a transformation that specifies its position and orientation.

Solids

This example shows how a model of a refinery is augmented with two valves. The Refinery is a GLTF model that is purchased from Sketchfab, a repository of free and paid GTLF models. It is downloaded as a .glb file, which includes geometry and textures.

The Valve is created with the built-in solid modeler by combining a block, cylinder, and torus. After defining the object is it exported as Valve.gltf.

Topics

The refinery digital twin is composed of a topic refinery.structure, and refinery.controls for the valves. The topic for the valves includes a translation subtopic that specifies the xyz-position in 3D space. A rotation subtopic specifies the orientation of the valve along the xyz-axis. Finally, a scale subtopic is used to size the valve to match the dimensions of the refinery.

refinery.structure.geometry = Refinery.glb

refinery.controls.valve_01.geometry = Valve.gltf
refinery.controls.valve_01.translation = 9, 5.8, 20
refinery.controls.valve_01.rotation = 0,90,0
refinery.controls.valve_01.scale = 8,8,8

refinery.controls.valve_02.geometry = Valve.gltf
refinery.controls.valve_02.translation = 3, 5.8, 20
refinery.controls.valve_02.rotation = 0,90,0
refinery.controls.valve_02.scale = 8,8,8

Model

Create a new model and include the topics for the refinery and the valves. By including two different topics instead of the parent topic refinery we can toggle the display of the refinery structure and the valves. To position the valve, you can click on the object in the 3D view and modify the values of the translation and orientation topics.

In this example, the translation value of the valve is set only once and remains static. Of course, it is also possible to dynamically change the position of objects by real-time import of the translation coordinates. This can be used to visualize the position of moving vehicles or structures in the digital twin. It is important to understand that users to not have to use CAD software to make updates to the 3D model. The composition of the model is dynamically generated from the value of the topics in the database. They can automatically be imported from sensors, or specified manually by the user. For example, if a certain area of the refinery is closed for maintenance, a user could manually specify the location of a fence that restricts the area.

Explanation

The model is composed of three different components, each having a GLTF file. The two valves link to the same file but each generate a separate instance. The topics for the structure and the two valves are linked to the GLTF as displayed below. The structure only has a geometry link to the GLTF file. The position and orientation of the two valves are controlled by subtopics.