从量子叠加看数字孪生(下) - 优锘科技

从量子叠加看数字孪生(下)

量子的坍缩性

本文下篇先聊聊量子的坍缩性,这个特性与叠加性紧密相关。还是之前提到的双缝干涉实验:如果实验人员为了确定电子到底是从两个缝隙中的哪一个穿过而设置一个检测装置后,那么电子穿过双缝以后,便不再是明暗相间的条纹,而变成符合粒子特性的两条竖线,也就是说电子同时通过两个缝隙的叠加性消失,最终二选一的从两个缝隙中的一个通过。
这种现场称之为“坍缩”。
    
    
关于坍缩性,物理学界有很多解释,大家听到最多的恐怕就是平行宇宙了,科幻题材的小说或者影片中被无数次提及。简单来说,这种理论认为只有一个终极的真实的高维宇宙和无数个只是高维宇宙在低维上的投影的平行宇宙。叠加态在高维宇宙中存在,坍缩后每一个被观测到的形态存在于某一个平行宇宙中。不太懂?看看下图你或许能理解一些。
    
    
这个三维的物体相当于高维宇宙,这个物体在平面上的投影相当于众多低维平行宇宙中的一个,而每个在二维平面上的观测者则认为他看到的形状就是真实的物体。
    
写了这么多来解释坍缩性,以及<上篇>关于叠加态的说明,相信你已经比较清楚了,平行宇宙理论中的高维宇宙处于叠加态,而优锘科技的ThingJS 3D可视化平台(以下简称ThingJS)就是用代码构建出来的处于叠加态的虚拟高维宇宙。
    
接下来,我们继续阐述ThingJS另外一些神奇的特性。

2  亦简亦繁

计算机能够存储和加工海量数据,但是人的大脑能够同时处理的信息就没那么多了。所以在计算机和人之间,应用系统需要扮演一个桥梁的作用,就是把海量数据以一种用户能够接受的方式表达出来,既能够帮助用户进行管理决策,又不至于让海量数据将用户淹没;既在用户初步接触管理对象的时候只展示一些简单而重要的信息,又能在用户了解概况后需要深入学习时,呈现更丰富详实的内容。
    
一般的应用,无论是智慧城市还是智慧园区,系统的首页面都是管理对象的概览。
   
    
这样的概览场景对于管理者而言是最熟悉的。一则是因为ThingJS呈现了与真实世界一模一样的外观,人的大脑对这种信息的理解不需要进行任何形式的转换,速度是最快的;二则,管理者通常都具备全局意识,下意识地就希望看到管理对象的整体。
   
这个概览就是“简”。
   
至于“繁”,前文已经提到,计算机具备存储和处理海量数据的能力。但想象一下,智慧城市或者智能楼宇应用中数以万计的智能设备,比如智能摄像头、智能灯杆、智能井盖等等同时显示在屏幕上的情形,绝对是一场灾难。那么,ThingJS在展示层面如何处理这些海量数据,以便让用户能够以合适的方式查看并使用这些信息呢?大致有以下三种方式

2.1 图层过滤

ThingJS在展示层处理海量数据的第一种能力叫图层过滤,就是将每种类型的设备设为一个图层,当这个图层的开关开启的时候,三维引擎就自动加载该类设备的三维模型并进行显示。反之,开关关闭的时候就隐藏。
   
   
另外,图层过滤还能结合层级切换功能,从设备类型和空间范围两个维度对显示的设备内容进行双重过滤,更加清晰明了的展示用户希望看到的设备。下图就是从单楼层和消防设备中的烟感设备两个维度来进行过滤后的设备显示画面。

2.2 图层叠加

一般情况下,为了避免用户误操作导致的加载模型过多问题,ThingJS平台应用的各个图层都是互斥的,即用户只能选取一个图层的设备进行浏览。但是在某些业务场景下,不同类型的设备需要同时显示才能满足业务需求,比如火灾或者非法闯入引发告警的情况下,要打开摄像头查看该告警位置的实时信息,这就至少需要两种不同类型的设备图层同时打开,也就是说,不同图层需要进行叠加,而ThingJS恰恰提供了这样的能力。
   
当然了,这种图层叠加的能力并不是简单的1+1,系统需要根据一定的规则进行处理,比如就近规则,告警点一定范围内的摄像头才显示;比如相关性原则,两种不同类型的设备有上下游关系的才显示等等。
   

2.3 缩地成寸

缩地成寸的能力是指ThingJS将一些空间上相距较远,但具有关联关系的设备在一张图进行展示。图中的每个图标代表一个设备,设备之间用表示实际连接介质(管道、通信网络、导电线路等)的连线进行连接。
   
与普通的工程图纸所使用的抽象的二维图标不同,这种缩地成寸的逻辑系统图中的设备图标都是与实际设备一模一样的三维模型,非专业人士也能够识别,这种方式带来的好处就是大部分用户都能马上理解系统的运行原理。
   

3  亦新亦旧

古希腊哲学家赫拉克利特说过:"人不能两次踏进同一条河流",是说事物总是在变化之中,人也不可能回到过去把某个时间点的境遇再经历一次,当然从技术的角度来讲这也是不可能的(至少现在如此)。
   
不过一切的物理定律在ThingJS这个高维宇宙中就不适用了,它不仅可能让用户有能力同时观察物体的多个物理状态,还能跨越时间,同时从历史和现在的两个维度观察世界。

3.1 图物关联

下面这张配电系统图对于配电管理专业人员来说再熟悉不过了。
   
   
但是对处于学习阶段的配电运维人员来说,这种传统的、过于抽象的系统图学习门槛还是比较高的,尤其是这种图与实际的设备很难建立起对应的关系。
   
ThingJS采用了图物关联的方式很好地解决了这个过去与现在、抽象与实际的矛盾。
   
   
上图中,左边为传统的配电系统图,右边是将配电系统的实际设备模型利用管线连接起来,是一种新形式的,非专业人士也很容易理解的系统图。再将两者在一个界面呈现出来,让用户很容易进行新旧对照。同时,新旧两张图中的所有关键元素也可以进一步映射互动,即在左图选中某个关键设备时,右侧三维界面自动聚焦到对应设备上。 

3.2 时间线

宠辱不惊,闲看庭前花开花落。去留无意,漫随天外云卷云舒。当一个人跳出当下,跨越时间来看事物的时候,就能拥有一个不一样的全局视角。
   
下面我们来了解一下ThingJS的时间线功能。
   
基于ThingJS平台开发的消防数字化预案应用,能够以时间为线索,将火灾从发生到扑灭过程中的环境信息、火情信息、消防设施信息、灭火力量部署信息、灭火进攻和人员撤退路线信息等像放电影一样,动态地呈现出来。而且无论是应急管理部门的领导和消防人员,无论专业知识的多少,都能对预案一目了然。一旦发生火灾,大家也能够根据预案从容应对,在最短的时间内,尽最大的可能性减少灾害造成的损失。
   
另外,基于时间线的三维监控数据的呈现,还可以帮助运维人员,从有别于传统的趋势图表曲线的角度,分析问题发生的根本原因。下面两张图就是某个时间段内以三维方式呈现的告警数据和温度数据的变化趋势。
   

亦真亦幻

现在全球市值最高的公司是哪家?大部分人能知道是微软。那么第二大呢?大部分人也知道,是苹果(数据来自于2019年8月14日普华永道发布的《2019全球市值百大企业排名》分析报告)。如果问这两家公司有什么共同之处,答案可能就千差万别了。每个人看事物的角度不一样,这种差异也正常。从个人的角度说,我认为可视化是他们产品共同的,也是最核心的能力。正是这种核心能力消除或者削弱了人与计算机之间的隔阂,降低了用户使用这些电子设备的门槛,才最终造就了微软和苹果各自操作系统的普及。

其实,各种业务应用程序在诞生之初也面临着同样的问题,一大堆人类感知晦涩的文字、线条、图表构成了业务应用的主要元素,这些抽象的元素阻碍甚至误导了用户利用应用去管理业务。不过,这些问题随着数字孪生系统的出现而大为改观。类似于ThingJS这样的平台,先基于现实展示了用户平日里所熟知的物理场景,又高于现实地在物理场景上展示管理数据,比如一些配置信息、监控信息等,即使毫无管理经验的用户,也能够很快地入手,进行相关的系统管理工作。

基于现实称之为“真”,高于现实称之为“幻”。从微软和苹果的成功,我们不难看出,亦真亦幻的数字孪生平台降低了用户使用应用程序的难度,必然是未来应用界面的发展趋势

4.1 字融于物

字融于物是ThingJS平台亦真亦幻特性最直接的体现。抽象的文字或者数字,在三维场景中与物体关联在一起,并且随着物体的移动而移动。任何人都能容易地理解,这些符号一定是代表物体的某种特性。如果说传统的应用界面是毫无规则胡乱堆砌在一起的枯枝,那么三维世界则是一棵主次分明的枝干组成的大树,而其中的符号就是这些枝干上郁郁葱葱的树叶。ThingJS因此显得生机勃勃、丰富多彩。
   
   
上图中,不仅仅将建筑、人员、面积等物理对象的基础信息做了呈现,还在左侧的图表区域将当前场景层级的一些统计信息做了展示,包括业务统计信息、楼宇能耗统计信息等。两种不同颗粒度的符号信息与物理场景信息整合在一起,全面细致地对被管对象进行了表现。

4.2 视觉特效

现在的招聘广告,尤其是针对需要对外服务的职位,有一句常用语,“形象好气质佳者优先”。人如此,系统界面也是如此。一套布局规范、配色合理、实而不华、艳而不俗的应用系统是很容易获得用户的好感并快速推广开来的。
   
ThingJS平台经过多年的实践,汇聚了众多客户和优锘特效工程师的辛勤汗水,积累了丰富的视觉特效。如同ThingDepot模型库一样,数量不断增加,质量不断提升,通过在项目中的复用为客户输出高品质高效率的业务应用系统。
   
下图智慧城市中的网格管理功能中,建筑物的扫光效果、道路车辆的流动效果和街区网格的光栅效果等等,立刻让一个广袤的水泥森林城市变得生动鲜活。
   

5  亦独亦群

有一类项目的建设是让甲乙双方都非常头痛的,就是系统集成类的项目。既然提到了系统集成,就意味着新系统要依赖甲方已有系统提供的数据,如果已有系统的厂商配合力度不够,就会影响项目的进度,而这个进度的延迟就与客户希望尽快看到项目的建设效果产生了矛盾。
   
从本质上说,ThingJS是物联网整合平台,也就是说它的最终交付是要依赖其它子系统的数据的,刚所提到的矛盾在ThingJS身上也会出现。那么,优锘科技是如何避免这种问题出现的呢?
   
其实,在ThingJS平台建设的最初,我们就考虑到了这个矛盾,并采取了一系列措施,保证平台在少依靠甚至不依靠其它系统的情况下,也能够正常的运行。

5.1 独善其身

所谓的独善其身,就是在ThingJS平台内部实现数据的自给自足。一般情况下,系统的运行需要五种类型的数据:地理信息数据、建筑布局数据、物体模型数据、物体配置数据和物体监控数据。
   
首先,地理信息数据可以从外部购买并一次性的全量下载到服务器,变成系统自身的一部分;
   
其次,建筑布局数据通过CAD图纸或者现场采集可以获得;
   
再者,虽然项目中涉及到的物联网设备类型众多,但ThingDepot模型库已经积累了众多主流的设备模型数据,所以物体模型数据很容易就得到了。
   
然后就是物体配置数据,由于资产台账表要么是用户手工管理,要么可以经由现有系统导出离线数据获取也不是问题。
   
最后就是监控数据了,对于监控数据,ThingJS平台的实施团队配备了模拟数据生成工具,只要物体配置数据完备,就能利用工具自动生成监控数据,既可以用于内部测试,又可以用于外部演示。
   
至此,所有平台运行需要的数据都已经完备,虽然其中的一些数据的准确性、完整性和实时性还有些欠缺,但并不影响性能和功能的验证。更重要的是,项目的相关干系人都能够直观地了解到系统建设的成果,这对于项目的成败至关重要。
   

5.2 兼济天下

虽然说通过系统内部的自给自足,项目组能够利用少量时间完成大部分工作,但作为一个完整的系统,ThingJS平台最终还是要和其它子系统进行对接,获取真实的、实时的数据。
   
对外接口技术难度不大,但未知的外接系统众多,接口形式众多,而且对接工作在项目建设期和运营期都可能出现,那么如何在开发人员缺失的情况下,让平台能够具备一种能力,以便于普通的项目实施人员甚至甲方的运维人员轻而易举地完成系统对接呢?
   
答案就是:ThingJS平台的DIX功能模块。
   
DIX(Data Integration Exchange)是优锘科技IT和IoT各产品线的数据集成模块,支持MQTT、OPC-DA、OPC-UA、Modbus-TCP、Modbus-RTU、BACNET等物联网协议。同时支持HTTP、HTTPS、Socket、Syslog、Web Service、WebSocket、JDBC、SNMP、MQ、Kafka等常用集成方式,并内置市场主流IT及IoT监控管理工具的集成插件,集成实施无需编程开发。
   

6 后记

借用了量子物理的叠加和坍缩理论,并通过上下两篇文章,我向大家介绍了优锘科技ThingJS平台的八大特性。但个人认为,数字孪生系统要成为应用系统,尤其是物联网应用的交互标准推广开来,还要有很长一段的路要走,其特性也远远不止这八个。
   
吴军在他的文章中提到:判断一项技术能够发展起来的原则之一,就是是否用更少的能量传递更多的信息。移动通信从1G的模拟通信发展到现在的高并发、低延迟、高可靠、高速度的5G,无一不是遵循着这个原则。我想,数字孪生技术也是如此:同样的一个电脑屏幕或者一个手机终端,它却能向用户传递了更多的有效数据,帮助用户以最高的效率认知和管理数字新世界。
   
优锘科技将与大家一起努力,让数字孪生的时代更早一天到来。