Modelling of a Workstation
This example presents the 3D modeling of a complete workstation consisting of a pin insertion machine and the related components for feeding, plus a conveyor unit.
The Pin Insertion Station is structured according to a hierarchy of nodes based on the decomposition into elementary parts, while considering the behaviors of floating components. The tip of the insertion machine in this case is indicated with the "Floating_X" suffix ("X" stands for the direction of the movement relative to the workstation's system of reference; "Y" and "Z" can also be found in other configurations) and moves relative to its parent, indicated by the "Static" suffix, since the latter does not change its position when animations are launched. Other parts that do not have any related child and don't move are indicated only by their name and do not have the "Static/Floating" suffix (e.g, "Conveyor Main", "Vibrating Bowl Pins").
The table below shows the list of 3D components and their position, which is set as relative to the origin of the workstation for top level parts and relative to a specific parent for the other elements across the hierarchy. The attached image presents the workstation components in different colors.
[-417.5, 0, 0]
[21, 146.59, -218.71]
Isometric view of the pin insertion workstation and labelling of the components.
IMPORTANT: Regarding the origin set up, the central point of the bottom face of the bounding box for each subcomponent was considered as reference across the whole tree, with an exception: in the case of the whole workstation object, the origin is set as coincident with the one of the conveyor unit. This allows to easily place adjacent workstations while making sure that the respective conveyor units are automatically aligned when the scene is populated.
The 3D model of the Pin Insertion Station has been prepared according to the workflow described in section 3D Models of Assets and is available as .glb file according to the gLTF format.
The 3D model of the Pin Insertion Station can be employed to characterize assets populating a scene. One example is provided below, highlighting different features of data formalization based on a spreadsheet and a .json file. The resulting scene can be visualized using the VEB.js web application (remote version), thus the path of the Pin_Insertion_Station.glb file is defined according to the file system of the server where VEB.js is running.
In this example, three stations are included in the scene as assets (PIs_1, PIs_2, PIs_3), all of them cloning the same 3D model Pin_Insertion_Station.glb. It is not necessary to explicitly define all components as child assets in the spreadsheet or .json file because child nodes in the hierarchy of the .glb file are automatically cloned. VEB.js redefines the ID of cloned components by adding upfront the ID of the root node plus a dot (e.g. "PIs_3.Clip" clones node "Clip" in the hierarchy of asset "PIs_3"). Only component "PI_Machine_Static" is explicitly defined for each three clones because its position is customized with respect to the default values set in the Pin_Insertion_Station.glb file. In particular, the station components are characterized by the following properties:
- inScene set to 1
- representation as a node in the .glb file (e.g. Pin_Insertion_Station.glb#PI_Machine_Static), as documented here and here
- parentObject to properly map the hierarchy of assets
- position to customize the (x,y,z) coordinates that are relative to the asset identified by property placementRelTo
The scene can be visualized in VEB.js either with the command "Import Scene" (and selecting the .json file) or opening this link.