草庐IT

全面解读“数字孪生”

Mila的Blog 2023-04-14 原文

理解数字孪生

随着互联网技术的深入发展,数字孪生被越来越多地提及,那么数字孪生到底是什么?数字孪生,翻译自英文“Digital Twin”,最早在2002年,被从事产品生命周期管理PLM的Michael Grieves教授,在一次产品生命周期管理课程中提出,因而有一种观点认为数字孪生就是PLM的演变。

发展至今,我认为对数字孪生最完整的解释是:综合运用感知、计算、建模等信息技术,通过软件定义,对物理实体进行描述、预测,进而实现物理空间与虚拟空间的交互映射。通俗来讲就是,把现实世界中的物理实体,通过一系列技术映射到虚拟空间中去,以实现一些更高要求的目的。

我们用生活中的场景举例:我想有一个不用我打开衣柜翻找和过多思考就能解决我穿衣问题的「聪明的助手」。我找到的解决方案就是「孪生」一个聪明衣柜。
然后就是执行方案:

step1:把所有的衣服和我自己制作成3D的素材,我可以找设计师或者自己使用可视化设计工具去进行。
step2:整理我所有的相关数据,包括:衣服的数据(尺码、颜色、风格、配件)、我的数据(身体数据、日程、心情、偏好)、场景数据(场合、天气)、衣柜的数据(空间、分区)。
step3:数据整理后实时接入,需要一套智能的算法帮助我完成搭配、衣服管理、新旧更换等等一系列事情。
step4:这些都准备好了需要有一个可以承载的平台,让可以通过屏幕或者投影去完成一系列展示和交互。每天有推荐搭配、数量提醒、换季提醒等等。
step5:衣服搭配都这么智能了,我的衣柜要不要也做成3D的,可以远程控制,衣服放入自动叠放、分区、挂好,旧衣服淘汰包装。新衣服线上试穿、购买直接下单等等都搭配起来呢?

举这个例子,是为了让大家感受到在这个简单的数字孪生过程中,有着无限可能的商机存在,并且上下游关联,形成一个闭环,你可以找到自己要做哪一环。

科学拆解数字孪生生态结构

数字孪生的圈层

关于数字孪生生态,需要先明确几个圈层。具体包括:
物理层是基础:现实世界的物理实体;
数据层是关键:数据收集、数据处理、数据分析;
模型层是核心:可视化模型、算法模型、数据模型(软件);
功能层是目标:描述、诊断、预测、决策。

数字孪生的技术要素

数字孪生生态中的要素包括2个空间和3个关键技术。
两个空间指的是现实空间与虚拟空间,二者信息实时联通并且能够进行交互:现实空间的数据反映到虚拟空间的描述中,虚拟空间的决策和处理结果反馈回现实空间。
三个关键技术包括数据、模型、软件。数据要求实时、动态,并且围绕数据做处理和分析;模型包括可视化模型和数据模型(多偏向于算法模型);软件是前两者重要的表现形式,也是应用和市场化的基础。

数字孪生生态中的多种角色

从以上的分析可以知道,在数字孪生生态中,有多种角色:
专注于数据的:数据采集(物联网相关)、数据处理、数据驱动模型(算法);
专注于软件的:代码、软件;
专注于映射的:可视化设计与表达、动态监测和呈现;
专注于决策的:人工智能、决策支持、综合服务。
并且除此之外,衍生的一系列服务、解决方案、咨询、平台、工具等等,都是大家可以参与进去的身份。

数字孪生的发展和作用

当前全球50多个国家、1000多个研究机构、上千名专家学者开展了数字孪生的相关研究并有研究成果发表。包括:
德国、美国、中国、英国、瑞典、意大利、韩国、法国、俄罗斯等科技相对发达的国家;
德国亚琛工业大学、美国斯坦福大学、英国剑桥大学、瑞典皇家理工学院、清华大学等各国一流大学;
西门子、PTC、德国戴姆勒、ABB、GE、达索、空客等国际著名一流企业;
美国NASA、美国空军研究实验室、法国国家科学研究中心、俄罗斯科学院等世界顶尖国家级研究机构;
具有智能制造、航空航天、医疗健康、城市管理等各研究背景的专家学者。

数字孪生以数字化的形式在虚拟空间中构建了与物理世界一致的高保真模型,能够模拟对象在物理世界中的行为,监控物理世界的变化,反映物理世界的运行状况,评估物理世界的状态,诊断发生的问题,预测未来趋势,乃至优化和改变物理世界。

数字孪生能够突破许多物理条件的限制,通过数据和模型双驱动的仿真、预测、监控、优化和控制,实现服务的持续创新、需求的即时响应和产业的升级优化。

数字孪生正在成为提高质量、增加效率、降低成本、减少损失、保障安全、节能减排的关键技术,同时数字孪生应用场景正逐步延伸拓展到更多和更宽广的领域。数字孪生具体功能、应用场景及作用如下表所示。

如何落地数字孪生

综上,数字孪生绝对不是某种技术、某个方案、某种商业模式,而是一个生态圈,并且是开放的、协作的。从工业到互联网,从企业到城市到国家,已经有很多力量投入到数字孪生生态的构建和技术的尝试中。从数字孪生五维模型的角度出发,如下技术大发展对数字孪生的实现和落地应用起到重要的支撑作用。

物联网
对物理世界的全面感知是实现数字孪生的重要基础和前提,物联网通过射频识别、二维码、传感器等数据采集方式为物理世界的整体感知提供了技术支持。

VR/AR/MR
实现可视化与虚实融合是使虚拟模型真实呈现物理实体以及增强物理实体功能的关键。VR/AR/MR技术为此提供支持:VR技术利用计算机图形学、细节渲染、动态环境建模等实现虚拟模型对物理实体属性、行为、规则等方面层次细节的可视化动态逼真显示;AR与MR技术利用实时数据采集,场景捕捉,实时跟踪及注册等实现虚拟模型与物理实体在时空上的同步与融合,通过虚拟模型补充增强物理实体在检测、验证及引导等方面的功能。

边缘计算
边缘计算技术可将部分从物理世界采集到的数据在边缘侧进行实时过滤、规约与处理,从而实现了用户本地的即时决策、快速响应与及时执行。结合云计算技术,复杂的孪生数据可被传送到云端进行进一步的处理,从而实现了针对不同需求的云-边数据协同处理,进而提高数据处理效率、减少云端数据负荷、降低数据传输时延,为数字孪生的实时性提供保障。

云计算
数字孪生的规模弹性很大,单元级数字孪生可能在本地服务器即可满足计算与运行需求,而系统级和复杂系统级数字孪生则需要更大的计算与存储能力。云计算按需使用与分布式共享的模式可使数字孪生使用庞大的云计算资源与数据中心,从而动态地满足数字孪生的不同计算、存储与运行需求。

5G
虚拟模型的精准映射与物理实体的快速反馈控制是实现数字孪生的关键。虚拟模型的精准程度、物理实体的快速反馈控制能力、海量物理设备的互联对数字孪生的数据传输容量、传输速率、传输响应时间提出了更高的要求。
5G通信技术具有高速率、大容量、低时延、高可靠的特点,能够契合数字孪生的数据传输要求,满足虚拟模型与物理实体的海量数据低延迟传输、大量设备的互通互联,从而更好的推进数字孪生的应用落地。

大数据
数字孪生中的孪生数据集成了物理感知数据、模型生成数据、虚实融合数据等高速产生的多来源、多种类、多结构的全要素/全业务/全流程的海量数据。
大数据能够从数字孪生高速产生的海量数据中提取更多有价值的信息,以解释和预测现实事件的结果和过程。

区块链
区块链可对数字孪生的安全性提供可靠保证,可确保孪生数据不可篡改、全程留痕、可跟踪、可追溯等。独立性、不可变和安全性的区块链技术,可防止数字孪生被篡改而出现错误和偏差,以保持数字孪生的安全,从而鼓励更好的创新。
此外,通过区块链建立起的信任机制可以确保服务交易的安全,从而让用户安心使用数字孪生提供的各种服务。

AI
数字孪生凭借其准确、可靠、高保真的虚拟模型,多源、海量、可信的孪生数据,以及实时动态的虚实交互为用户提供了仿真模拟、诊断预测、可视监控、优化控制等应用服务。
AI通过智能匹配最佳算法,可在无需数据专家的参与下,自动执行数据准备、分析、融合对孪生数据进行深度知识挖掘,从而生成各类型服务。数字孪生有了AI的加持,可大幅提升数据的价值以及各项服务的响应能力和服务准确性。

有关全面解读“数字孪生”的更多相关文章

  1. ruby - 查找字符串中的内容类型(数字、日期、时间、字符串等) - 2

    我正在尝试解析一个CSV文件并使用SQL命令自动为其创建一个表。CSV中的第一行给出了列标题。但我需要推断每个列的类型。Ruby中是否有任何函数可以找到每个字段中内容的类型。例如,CSV行:"12012","Test","1233.22","12:21:22","10/10/2009"应该产生像这样的类型['integer','string','float','time','date']谢谢! 最佳答案 require'time'defto_something(str)if(num=Integer(str)rescueFloat(s

  2. 世界前沿3D开发引擎HOOPS全面讲解——集3D数据读取、3D图形渲染、3D数据发布于一体的全新3D应用开发工具 - 2

    无论您是想搭建桌面端、WEB端或者移动端APP应用,HOOPSPlatform组件都可以为您提供弹性的3D集成架构,同时,由工业领域3D技术专家组成的HOOPS技术团队也能为您提供技术支持服务。如果您的客户期望有一种在多个平台(桌面/WEB/APP,而且某些客户端是“瘦”客户端)快速、方便地将数据接入到3D应用系统的解决方案,并且当访问数据时,在各个平台上的性能和用户体验保持一致,HOOPSPlatform将帮助您完成。利用HOOPSPlatform,您可以开发在任何环境下的3D基础应用架构。HOOPSPlatform可以帮您打造3D创新型产品,HOOPSSDK包含的技术有:快速且准确的CAD

  3. 区块链之加解密算法&数字证书 - 2

    目录一.加解密算法数字签名对称加密DES(DataEncryptionStandard)3DES(TripleDES)AES(AdvancedEncryptionStandard)RSA加密法DSA(DigitalSignatureAlgorithm)ECC(EllipticCurvesCryptography)非对称加密签名与加密过程非对称加密的应用对称加密与非对称加密的结合二.数字证书图解一.加解密算法加密简单而言就是通过一种算法将明文信息转换成密文信息,信息的的接收方能够通过密钥对密文信息进行解密获得明文信息的过程。根据加解密的密钥是否相同,算法可以分为对称加密、非对称加密、对称加密和非

  4. ruby - 将n维数组的每个元素乘以Ruby中的数字 - 2

    在Ruby中,是否有一种简单的方法可以将n维数组中的每个元素乘以一个数字?这样:[1,2,3,4,5].multiplied_by2==[2,4,6,8,10]和[[1,2,3],[1,2,3]].multiplied_by2==[[2,4,6],[2,4,6]]?(很明显,我编写了multiplied_by函数以区别于*,它似乎连接了数组的多个副本,不幸的是这不是我需要的)。谢谢! 最佳答案 它的长格式等价物是:[1,2,3,4,5].collect{|n|n*2}其实并没有那么复杂。你总是可以使你的multiply_by方法:c

  5. Ruby 的数字方法性能 - 2

    我正在使用Ruby解决一些ProjectEuler问题,特别是这里我要讨论的问题25(Fibonacci数列中包含1000位数字的第一项的索引是多少?)。起初,我使用的是Ruby2.2.3,我将问题编码为:number=3a=1b=2whileb.to_s.length但后来我发现2.4.2版本有一个名为digits的方法,这正是我需要的。我转换为代码:whileb.digits.length当我比较这两种方法时,digits慢得多。时间./025/problem025.rb0.13s用户0.02s系统80%cpu0.190总计./025/problem025.rb2.19s用户0.0

  6. ruby - 按数字(从大到大)然后按字母(字母顺序)对对象集合进行排序 - 2

    我正在构建一个小部件来显示奥运会的奖牌数。我有一个“国家”对象的集合,其中每个对象都有一个“名称”属性,以及奖牌计数的“金”、“银”、“铜”。列表应该排序:1.首先是奖牌总数2.如果奖牌相同,按类型分割(金>银>铜,即2金>1金+1银)3.如果奖牌和类型相同,则按字母顺序子排序我正在用ruby​​做这件事,但我想语言并不重要。我确实找到了一个解决方案,但如果感觉必须有更优雅的方法来实现它。这是我做的:使用加权奖牌总数创建一个虚拟属性。因此,如果他们有2个金牌和1个银牌,加权总数将为“3.020100”。1金1银1铜为“3.010101”由于我们希望将奖牌数排序为最高的,因此列表按降序排

  7. ruby-on-rails - rails 中的正则表达式匹配 [\w] 和 "-"但不匹配数字 - 2

    我想为名字验证编写一个正则表达式。正则表达式应包括所有字母(拉丁/法语/德语字符等)。但是我想从中排除数字并允许-。所以基本上它是\w(减)数(加)-。请帮忙。 最佳答案 ^[\p{L}-]+$\p{L}匹配anykindofletterfromanylanguage. 关于ruby-on-rails-rails中的正则表达式匹配[\w]和"-"但不匹配数字,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.c

  8. ruby-on-rails - 将数字字符串转换为数字数组 - 2

    在我的应用程序中,我有一个文本字段,用户可以在其中输入类似这样的内容"1,2,3,4"存储到数据库中。现在,当我想使用内部数字时,我有两个选择:"1,2,3,4".split(',')或string.scan(/\d+/)do|x|a两种方式我都得到一个像这样的数组["1","2","3","4"]然后我可以通过在每个数字上调用to_i来使用这些数字。有没有更好的方法可以转换"1,2,3"to[1,2,3]andnot["1","2","3"] 最佳答案 str.split(",").map{|i|i.to_i}但是这个想法对你来说

  9. ruby - 递归地将所有数字字符串转换为 Ruby 哈希中的整数 - 2

    我有一个随机大小的散列,它可能有类似"100"的值,我想将其转换为整数。我知道我可以使用value.to_iifvalue.to_i.to_s==value来做到这一点,但我不确定我将如何在我的散列中递归地做到这一点,考虑到一个值可以是一个字符串,或一个数组(哈希或字符串),或另一个哈希。 最佳答案 这是一个非常简单的递归实现(尽管必须同时处理数组和散列会增加一些技巧)。deffixnumifyobjifobj.respond_to?:to_i#IfwecancastittoaFixnum,doit.obj.to_ielsifobj

  10. ruby-on-rails - Rails 格式验证——字母数字,但不是纯数字 - 2

    什么是测试格式验证的最佳方法让我们说一个用户名,使用字母数字的正则表达式,但不是纯数字?我一直在我的模型中使用以下验证validates:username,:format=>{:with=>/^[a-z0-9]+[-a-z0-9]*[a-z0-9]+$/i}数字用户名(例如“342”)通过了验证,这是我不想要的。 最佳答案 您想“向前看”一封信:/\A(?=.*[a-z])[a-z\d]+\Z/i 关于ruby-on-rails-Rails格式验证——字母数字,但不是纯数字,我们在Sta

随机推荐