數字孿生的實現方案及可行性分析

脆皮鸡發表於2024-08-06

簡介

數字孿生(Digital Twins):就好比你有一個雙胞胎兄弟,你們長得一模一樣,但一個是活在現實裡的真人,另一個是活在電腦裡的虛擬人

這個虛擬的兄弟,就是你的“數字孿生”。在現實世界中,數字孿生通常指的是透過各種資料和先進的技術手段,建立一個真實物體或系統的虛擬副本。

這個副本不僅外觀和原型一樣,而且還能模擬和反映原型在現實世界中的行為和狀態。比如,一座大樓、一輛汽車,甚至是整個城市,都可以有自己的數字孿生。

常見方案

想要做數字孿生,肯定要進行涉及 3D,目前市面上主要有四種數字孿生的實現方式:

  • 使用遊戲引擎進行 3D 場景的構建,例如虛幻引擎(Unreal Engine)等;
  • 使用webGL技術透過程式碼程式設計構建 3D 場景,例如 Three.js 等;
  • 使用開源平臺快速構建 3D 場景,例如太極開發者平臺;
  • 使用其他公司開發的 0 程式碼編輯器進行構建,例如 Thingjs 等。

在開始介紹前,需要說明的是,無論選擇哪種方式,都需要硬體工程師這邊提供關於裝置的 3D 模型,才能進行下一步的場景構建。

1. 遊戲引擎

  • 使用遊戲引擎進行場景構建,能夠實現非常複雜的 3D 場景及動效,因為其本身就是為遊戲設計的,所以對於 3D 場景的表現力非常強。
  • 但是需要開發者對遊戲引擎有一定的瞭解,學習成本較高,而且對硬體要求較高,一般需要較高配置的電腦(需要採購專業的圖形工作站)才能執行,需要例如 RTX™ 4060RTX™ A5000,視訊記憶體至少在 16G 以上的顯示卡,記憶體至少在 32G 以上。
  • 最後使用其內建的構建工具輸出為 web 應用,然後透過瀏覽器訪問。
  • 但是由於其場景是實時渲染的,web 端實際是透過 webRTC 技術進行影片流傳輸,所以對於伺服器的要求也比較高,一般需要 100M 以上的頻寬,並且有同時開啟的使用者數量限制(想要多使用者訪問就要建立更多的例項,對硬體的要求更高)。

體驗連結:可以跟我要,請勿外傳,由於其實現特性,暫不放出來避免被投訴。😅

介面:

image

可以操縱現實裝置:

image

2. webGL

  • 使用 webGL 技術透過程式碼程式設計構建 3D 場景,例如 Three.js 等。
  • 而 Three.js 是一個純 JavaScript 實現的,是一個用於建立和呈現實時 3D 渲染庫,它是一個基於 WebGL 的封裝,為開發者提供了一套易於使用的 API,使得在網頁上實現複雜的 3D 視覺化變得更加簡單和高效。
  • 其允許開發者,透過程式碼程式設計來構建 3D 場景,可以實現一些簡單的 3D 場景,但是對於複雜的 3D 場景的表現力有一定的限制,不能實現太複雜的 3D 場景。
  • 由於場景的構建是透過程式碼來定義的,涉及到數學知識,例如矩陣、向量等,所以對於非專業的開發者來說,學習成本較高,我們之前沒有接觸過,需要更多的時間才能上手,開發週期大幅度增加
  • 總的來說,3D 模型的最終效果沒有遊戲引擎好,而且其場景計算是在客戶端實時進行的,執行速度取決於使用者的裝置效能,對於一些低效能的裝置可能會出現卡頓的情況,但是不存在同時開啟的使用者數量限制。

體驗連結1:https://stevenfeng.cn/threejs-demo/
體驗連結2:https://fengtianxi001.github.io/MF-TurbineMonitor/

介面1:

image

介面2:

image

模型可以播放動畫(由硬體工程師進行定義,透過程式碼點選播放):

image

3. 太極開發者平臺

  • 官網:https://www.gbim.vip/
  • 這是一個由飛渡科技以自身的技術積累和行業經驗打造的數字孿生平臺,提供了一站式的數字孿生解決方案。
  • 其意願是為了讓更多人加入數字孿生的賽道,降低行業門檻,秉承開源共享的原則,提供給大眾使用。
  • 透過太極開發者平臺,使用者可以快速構建 3D 場景,只需要透過拖拽的方式就可以完成 3D 場景的構建,對於介面設計和互動設計都有很好的支援。
  • 只需要 HTML + JS 就可以快速入手,不需要太多的程式設計經驗,學習成本較低。
  • 需要使用其提供的 TaiChiStudio 進行 3D 構建,目前是 免費 的,但是不清楚未來是否會收費,而且開發文件及編譯器 IDE 還不夠完善。
  • 總的來說,他是免費的,開發者學習成本低,同時還能夠實現遊戲引擎的效果,可以看做是對遊戲引擎的進一步封裝,但是硬體要求特別高具體參考如下:

分類 標準配置 推薦配置
CPU 英特爾 ® 酷睿 ™ i7 8 核 16 執行緒 3.5GHz 同等或更高配置 英特爾 ® 酷睿 ™ i9 10 核 20 執行緒 3.5GHz 同等或更高配置
GPU* Nvidia GeForce RTX™ 3060Ti 同等或更高配置 僅支援 Nvidia Nvidia GeForce RTX™ 3090 同等或更高配置 僅支援 Nvidia
視訊記憶體 8 GB 24 GB
記憶體 32 GB 64 GB 或以上
硬碟 15 G 以上剩餘空間 SSD 40G 或以上
作業系統 Windows 10 64 位作業系統 Windows 10 64 位作業系統
網路 100M 頻寬 或以上 100M 頻寬 以上

GPU 僅支援 Nvidia,不支援 Amd 的型號; 硬碟儲存空間視工程資料大小而定,除了作業系統暫用的空間外,儘量有額外的 40G 以上的 SSD(固態)硬碟。
需要採購專業的圖形工作站才能進行開發。
由於我們的電腦執行非常卡頓,所以我們沒有進行過多的嘗試,不清楚其具體的效能表現。


體驗連結: 由於其是實時渲染的,官方未提供線上預覽連結,本地執行太卡了,可以參照下面的截圖。
影片連結:
https://taichiresource.gbim.vip/dtsweekly/weeklyducument/01智慧園區/智慧園區宣傳影片.mp4
https://taichiresource.gbim.vip/dtsweekly/weeklyducument/05智慧港口/智慧港口宣傳影片.mp4

軟體介面:

image

實現效果:

image

image

image

image

4. Thingjs

  • 參考連結:https://www.thingjs.com
  • ThingJS 是一款基於 Web 的 3D 視覺化開發工具,提供了 0 程式碼編輯器,透過拖拽的方式就可以完成 3D 場景的構建,對於介面設計和互動設計都有很好的支援。
  • 無需程式設計,透過配置就能快速落地數字孿生場景,支援多種 3D 模型格式,支援多種 3D 場景的構建,例如工廠、城市、醫院等。
  • 但是其是收費的,需要購買其服務,具體價格在 1-10 萬不等,存在使用期限等多方面的限制。
  • 其實也是正常的,人家畢竟是一個公司,需要盈利,但是對於一些小型的企業來說,可能會有一定的壓力。
  • 頁面訪問也卡,對硬體也有一定的要求。

介面:

image

對比分析

綜上所述,可以參照下面的 對比表格 進行選擇:

方案 優點 缺點 適用場景
遊戲引擎 3D 場景表現力強,能夠實現複雜的 3D 場景及動效 學習成本高,對硬體要求高,伺服器要求高,同時開啟的使用者數量限制高 複雜的 3D 場景,對錶現力要求高的場景
webGL 3D 場景表現力一般,對複雜的 3D 場景有限制 學習成本高,開發週期長,執行速度取決於使用者的裝置效能 簡單的 3D 場景,對錶現力要求不高的場景
太極平臺 免費,學習成本低,能夠實現遊戲引擎的效果 硬體要求高,不清楚未來是否會收費,開發文件及編譯器 IDE 不夠完善 對硬體要求高,對學習成本要求低的場景
Thingjs 0 程式碼編輯器,支援多種 3D 場景的構建 收費,具體價格在 1-10 萬不等,存在使用期限等多方面的限制 對 3D 場景的表現力要求高,不需要開發介入的場景

綜合開發難度、實現效果等方面,個人傾向於選擇太極平臺。👍

相關文章