Create a Digital Twin in the ARENA
Digital Twin, as term can be overloaded. It can mean a digital Data model of sensor data relating to a physical space, or a digital 3D model of a physical space. We will use the best of both of these perspectives to create a truly Hybrid XR Digital Twin in the ARENA.
Stage Your Space For Scanning
Pick a room you want to Twin, and prepare it for scanning. Most of these recommendations are to ensure your scan is as clean as possible, with the least amount of visual artifacts.
- Doors: Close any doors in the room possible, it will reduce trailing, incomplete model sections.
- People/Pets: Make sure the room has no other people or pets in it, this will reduce phantom partial objects which the scan may pick up. Make sure you don’t scan your own feet as well!
- Fans/Machines: Similar to People/Pets, moving objects will create phantoms you may not want.
- Screens: Consider turning off, TVs, computer monitors, and other screens that may have moving pictures or text. Bonus: empty screens give you a nice canvas to replace your own digital twin content.
- Lights: Turn on lights and lamps in the room, they will only help highlight features in the room and give your scan better details.
- AprilTag: Place the origin AprilTag from the last section in a central place on the floor to include in your scan. Choose a location where it can remain, undisturbed.
Scan Your Space
There are a range of scanning cameras and software to scan a room-scale 3D model, and a few techniques to keep in mind as you scan. We have a longer list of 3d scanning tools available for LiDAR, NERF, and Photogrammerty options.
- Scan software depends on room size and expense. For beginners we recommend using Scaniverse on a iPad/iPhone:
- Small room, free with iPhone: use Scaniverse
- Small/Medium room, more expensive: use Photogrammetry
- Large room, most expensive: use Matterport
-
Start your scan standing on top the the origin AprilTag, in this way your scan model’s internal origin point will be as close as possible to the AprilTag, reducing later adjustments to the model’s 3d-world pose.
-
Export your scan as a .GLB file. Check the options for export quality and, after testing your model in the ARENA, you may want to repeat this step choosing different options to improve rendering time. The size of the model matters, but is also hard to predict.
- For Scaniverse, you can save the file locally on your iPad/iPhone.
Upload Your Space
We are going to use the scene you created in the Building a Scene tutorial, and add your room scale model to it.
-
From your phone, enter the build page for your scene.
-
There are multiple paths to upload files on the ARENA File Store and Dropbox, which you can review. Currently we will use the simplest method, under Add/Edit Object, select Type: GLTF Model, then click [Upload File & Publish]. Select the model and it will be uploaded for you automatically.
- Make sure the option for Room-scale digital twin model? Hide in AR, is unchecked. We don’t want to hide it before we finish aligning the model in space.
- Now, you will have to update
position
androtation
a little, then update the object by pressing the [+ Add/Update Object] button. The model’sposition
y-axis will need be elevated a bit to account for the distance between your camera and the floor AprilTag, perhaps 1.5m. The model’srotation
y-axis (Euler) you will have to experiment with, to match the default rotation of your model.- Position: 0,
1.5
, 0, (x, y, z) - Rotation: 0,
??
, 0, (x, y, z)
- Position: 0,
-
Try using your iPad/iPhone to test the
position
androtation
entering your scene in AR mode as we did in the localization tutorial, to make sure your model lines up to the AprilTag. - Once your model is in place, disable the view in AR, by adding the Hide in AR property, this time set it to checked and press the [+ Add/Update Object] button again.
Program Your Space
All this so far helps you Twin your physical space in 3D, but now, let us add some interactivity the Twinned data. Your experience in previous Python tutorials will help you generate interactions from buttons and other objects. Here is some guidance when building a digital twin application.
- Data: What data is useful in proximity to your space? What useful displays or controls were previously impractical or inappropriate? Consider these data classes:
- Sensor data embedded in walls or machines: network, electric, compute, pipes and filtration.
- Sensors which cannot be blocked for light access: foliage, plants, solar panels.
- System components which are hidden for aesthetics, but difficult to find for maintenance.
- Text I/O: There are multiple ways to render text, data, and allow user input. Try these strategies:
- Text Color: Pay attention to the overall colors of your room model, you want any text you display to be well contrasted. ARENA UI Panels have light or dark themes, and text in general can be any color.
- Portal/Videosphere: Videospheres and Portals are a nice to have for hybrid interaction and can align well to a 3D model twin, but consider your goal. Do you want to host a hybrid meeting, or provide an XR interaction of your valuable data?
goal
Scan your space and add it to your scene using these techniques to create a replica of your physical space for virtual visitors. Then, run a Python application which provides a live feed of data, perhaps showing data which is inconvenient or impractical to display physically, but useful to show/hide/control in XR in proximity to the physical world.