作为新一代通用目的技术,数字孪生体技术在城市管理中的应用受到广泛关注。2020年7月16日,数字孪生体联盟设立数字孪生城市实验室,把推进数字孪生城市开源社区作为重点,得到了中国自动化学会、深圳工业总会、国家无线电监测中心检测中心深圳实验室和深圳市信息基础设施投资发展有限公司等的支持。
数字孪生城市的建设是一个多领域、多学科和多家利益相关者参与的系统工程,无论涉及多少领域、做了多少工作,可视化呈现是其中重要的部分,涉及计算机图形学、地理信息系统、物联网、数字孪生体、人工智能、数据库、程序设计等知识。
虽然不少大型互联网公司给出了高度集成的智慧城市解决方案,但它蕴含的风险非常高,体现为运行成本高居不下,安全隐患多和系统弹性不够等挑战。为了解决这些问题,数字孪生城市实验室设计了以开源项目为主的数字孪生城市开发体系。
从数字孪生城市的可视化开发来看,可以分为基础设施、服务层和应用层,除此之外,开发体系还需要内容生产部分,为平台提供三维模型、专题地图等内容。
(一)数字孪生城市基础设施
基础设施层用来为数字孪生城市的整个体系提供支持,这一部分包括了操作系统、数据库、物联网等。
操作系统使用Linux系列,Ubuntu或CentOS都是可以的,这里不做赘述。
数据库部分则要考虑两类数据的管理,一类是常规的关系型数据,另一类是空间数据。关系型数据使用PostgreSQL,空间数据通常使用POSTGIS、MySQL空间扩展等。
物联网管理平台是终端设备与智能应用之间的纽带,是数字孪生城市的基础性支撑平台,是数字孪生城市与物理世界的沟通的桥梁。物联网平台使用IOT3000就可以支撑整个体系。
(二)数字孪生城市服务层
GIS服务是实现数字孪生城市应用基础。GIS服务是构建在数据库基础上的可以扩展的系统框架可以简化搭建GIS框架的工作量。通过二次开发扩展可以让我们搭建基于GIS开放框架的GIS应用系统。服务层基于开放的GIS标准,同时兼容开源的空间数据库,与整个框架体有很好的兼容性。开源GIS服务软件有如下可以使用:GeoServer、MapServer、TileCache等。
除了GIS服务外,服务层还提供应用服务能力,为客户端提供具体的业务功能,此能力是与具体业务紧密相关的,没有通用框架、程序使用,主要通过自行开发实现。此应用可以简单理解为综合性的信息管理系统,要结合物联网、地理信息、业务信息进行开发。
(三)数字孪生城市应用层
应用程序是数字孪生城市能力的体现,专业的开发者可以根据需要,使用开放平台提供的能力,构建出各种各样功能的应用程序。为了呈现更好的视觉效果,在通常的Web应用开发框架基础之上,必须要为数字孪生城市应用增加三维GIS、图表等功能。
数字孪生城市应用首先是一个三维GIS应用,在三维GIS开发上,Cesium是最为流行的开源项目,它可以用来显示海量三维模型数据、影像数据、地形高程数据、矢量数据等等。除了三维应用,数字孪生城市应用也可能有需要二维地图,这方面可以使用OpenLayers,也是一个开发WebGIS客户端的JavaScript包,可以提供地图展示功能。OpenLayers可以和Cesium一起配合使用,实现二维、三维地图集成。
Cesium之在3D地球方面确实强大,但是相对来说更偏底层一点,一些很炫酷的效果如果需要自己做,会花费大量的时间,而且很多时候实现起来很有挑战。EarthSDK是一个Cesium的封装,里面有很多效果可以直接使用。
图表显示使用ECharts,可在浏览器上显示直观,生动,可交互,可高度个性化定制的数据可视化图表。
在项目的管理、组织上,应使用Angular或VUE。这两个框架都是JavaScript语言开发的Web开发框架,为Web应用的模块化开发提供基础,通过模块化开发,来降低大型项目的组织管理难度。数字孪生城市应用的开发,应基于这两个框架来进行。
(四)数字孪生城市内容生产
数字孪生城市开发需要制作的内容主要有两个:三维模型和专题地图。
三维模型的设计与开发推荐使用Blender。Blender是一款开源的跨平台全能三维动画制作软件,提供从建模、动画、材质、渲染、到音频处理、视频剪辑等一系列动画短片制作解决方案。对于数字孪生城市的三维模型来说,使用其中的建模、材质就可以很好的完成设计开发。当前,3DS Max、SketchUp、Revit等商业软件也可以用于三维模型的设计与开发。
Blender比较适合创建精细的模型,但只能一个一个操作,对于城市建筑这个规模的模型来说不太合适,需要有一个批量创建模型的方法。此工作可以使用Cesiumlab,当然它不仅仅是一个模型创建工具。
Cesiumlab是一款专为Cesium开源数字地球平台打造的数据处理工具集。目前包含地形数据处理、影像数据处理、点云数据处理、数据下载、矢量数据处理(矢量楼块切片,矢量点转I2DM)、倾斜数据处理、三维场景(OBJ,FBX,IFC,3DS,DAE)处理、BIM数据(REVIT,IFC,MICROSTATION,CATIA)处理等工具。
数字孪生城市应用可能还需要根据业务需求制作涉及相关业务的专题地图。例如,某一地区充电桩分布图。基本GIS系统是不会提供这种与业务相关的地图的。因此,需要使用一些工具制作专题地图。QGIS和uDig是两个比较常用的开源GIS软件,可以用于专题地图的开发。
专题地图制作完成后,可以将其发布到GeoServer或MapServer,这样就可以为数字孪生城市应用提供专题地图了。
结合到以上的开源项目及应用,可以构建一个低成本的、开放架构的数字孪生城市,避免被智慧城市供应商技术锁定,促使数字孪生城市具有高可用、高弹性和低成本的应用价值,从而引领我国新基建时代的创新发展。