赵敏 | 工业软件与工业互联网关系:“五不同三相似”

编者按近两年,特别是2020年,业界出现一种现象,把工业软件和工业互联网混为一谈,不是认为工业互联网包含了工业软件,就是认为开发工业软件等同于做工业互联网,甚至认为工业软件就是工业互联网,或者反之,工业互联网就是工业软件。这是典型的概念混淆,应该澄清。

工业软件与工业互联网,原本是不同年代、不同领域、不同用途的产物,是两个各自独立发展的领域。每个领域的发展历程和技术内容都可以写几本书。二者有着明显的区别,也有一定的相似之处。若用坊间话说,工业软件和工业互联网二者究竟有“几毛钱的关系”?笔者最近想了很久,发现清晰地阐述二者关系,还真的是一件不容易的事情。在本文中,笔者把现在大致能想清楚、说明白的要点概况为“五不同三相似”。不妥、不确切之处,欢迎读者指正与补充。1、二者年代领域不同工业软件的出现要早很多年。源于工业IT领域。业界比较公认的第一款工业软件,是1957年出现的一款名为PRONTO的数控程序编制软件,由“CAD/CAM之父”Patrick J. Hanratty博士在GE工作时开发。以此为起点,工业软件已经有64年历史了;若以美国宇航局(NASA)在1966年开发的世界首款CAE软件NASTRAN起算,也有55年历史了。自上个世纪70年代起,各种类型工业软件爆发式增长。时至今日,工业软件的类型和数量多得难以准确统计。工业互联网的源头,源于工业OT领域(自动化)。笔者在《铸魂:软件定义制造》书(P260)中以及若干篇文章中都指出,其源头是1969年出现的PLC,80年代PLC发展为现场总线,然后进一步发展为工业以太网。1999年物联网出现后,2002年出现工业物联网,2007-2008年中国企业开始在世界上首次使用“工业互联网”术语。数年后,工业内部诞生的工业以太网与工业外部诞生的物联网汇合到了一起,形成了今天的工业互联网。工业本是好土壤,工软工互自生长。各领风骚几十年,如今交汇论短长。2、二者用途目的不同笔者在《铸魂》前言中写到:工业软件是工业化的顶级产物。它如容器一般盛装了人类工业知识,给制造业带来两大巨变:第一改变了传统的设计、工艺、生产和运维方式,产品随时在赛博空间迭代优化,使制造过程敏捷精准;第二塑造了产品的“五官”和“大脑”,产品在物理空间的行为随场景而自动调整。由此,交互式工业软件主要在赛博空间定义数字产品的形、态、发展演变规律等,嵌入式工业软件主要在物理空间定义物理产品的形、态、发展演变规律等。工业软件的用途主要是“数字脑”代替人脑,辅助产品研制,控制机器运行,其关键词是“定义”——定义赛博和物理两个空间的各种人造系统。工业互联网是联接各种泛工业终端(如人、机、料、法、环、测等)的网络,总体上说,是一种包含了各种工业物理设备、传感器、工业网络、嵌入式系统或工业电脑的复合型装备网络,是新型的工业基础设施(不是新型信息基础设施!),是两化融合在新工业革命背景下的一种新体现。工业互联网的建设,既可以从IT层向下扎根,进入OT层,也可以从OT层向上生长,进入IT层。工业互联网的主要用途是由加速“数据自动流动”而加速“知识自动流动”,进而促进工业资源的优化配置。其关键词是“联接”——联接赛博空间和物理空间的各种系统,从正确的物理联接,到正确的数据联接,再到正确的逻辑联接。工软打造数字脑,辅助人机来思考。工互联接人机物,资源优化配置好。3、二者发展趋势不同工业软件的类别有很多,笔者在《铸魂》书中列出了几百种不同的工业软件(根据出版社的要求已做大量删减)。南山工业书院林雪萍在“工业软件 无尽的边疆:写在十四五专项之前”一文提到:“大概有5000多家软件工业软件供应商,提供了近2万多种不同的工业软件。而实际上,大量的工业软件并不在收录之中,因此实际数目要远大于此。”工业软件,以工具软件为主流,倾向于“特立独行”,分类上趋于发散,不同的工业软件厂商,喜欢以不同的架构,不同的高级语言,面向不同的工业细分领域,开发不同的工具软件。尽管也有诸如PLM或类似的平台类软件进行集成,但是能被PLM集成的工业软件的数量始终是有限的。大量的工业软件始终是分散、游离在PLM之外的。工业互联网,从一诞生就以“联接+集成”为己任,以开发工业互联网平台为导向。而工业互联网平台又相当于起到了一个“工业操作系统”的作用。因此,工业互联网平台就相当于是一个集成大平台,理想情况下,各种工业APP都以SaaS的方式运行在工业互联网平台上。因此,工业互联网平台本身(类似PLM的新型工业软件)以及运行在其上的工业APP(基于微服务的新型工业软件),是倾向于“归为一统”的,分类上趋于集成。工软门类散而繁,交互嵌入占尽端。工互趋于归一统,基于平台相互联。4、二者层次架构不同在《铸魂:软件定义制造》书中(P249),笔者将工业互联网三层结构与电脑网络的三层结构做了一个类比。如图1所示。

图1 电脑网络与工业互联网上的OS与应用软件从图1中可以看出,底层由工业终端设备组成的工业互联网,可以类比电脑/因特网;中层的工业互联网平台(也称工业操作系统、工业安卓),可类比电脑常用操作系统如(视窗、iOS、安卓、塞班等);工业APP(也称工业爱普、工互爱普)是工业互联网平台上的新型工业软件,可类比电脑上的应用软件,而按照目前国家统计局的经济分类标准,工业软件仅仅属于电脑应用软件的一个子集。二者之间虽然都是类似的三层结构,但是,交互式工业软件通常运行在电脑单机或局域网上,属于传统ISA95架构,而工业APP运行在工业互联网平台上,属于微服务架构,运行在基于云架构的工业互联网平台上。清楚了这个简明的三层结构,基本上就知道谁与谁作对比是恰当的。交互式工业软件属于应用层,嵌入式工业软件属于设备的边缘层,工业互联网总体上属于工业基础设施,如果没有说明与哪一部分工业软件对标,泛泛地比较“工业软件与工业互联网”,或讨论二者之间的从属关系,通常是说不清楚的。工软特征是应用,有网没网都运行。工互先天靠网生,三层架构分得清。5、二者计算模式不同工业软件和工业互联网都离不开计算。计算模式的不同或许是二者最大的不同。在计算上,基于统计学的云计算和基于MBSE(基于模型的系统工程)的工程计算,是两种截然不同的计算模式。为了弄清楚二者之间的技术差异,笔者与北京和利时系统工程有限公司工控软件系统架构师丁研先生多次交流探讨。本小节内容大部分内容来自丁研的贡献。云平台提供的并行计算的模式是,比如要算10亿条数据的平均值,假设单机算力不够快,可以把计算平均分配到10个节点上,每个节点各算1亿条数据,算完以后,10个计算结果发送到某一台主机上去做汇总。这个过程中,10个节点计算完成的时间点是随机的,但是算出结果的先后次序并不产生问题,因为各节点之间彼此没有耦合关系,这样就可以并行计算,对计算节点的调用也是算完即释放计算资源,不再占用。现在的工业互联网PaaS层的微服务,采用的就是这种计算模式,理想情况下,每个微服务都是一个计算任务(算法+数据),调用IaaS层的算力完成计算。工业软件中基于MBSE的计算就不同了,计算任务之间是串行模式。比如有一个CAE 大计算任务,要分成10个计算任务,任务1算完了以后,然后再交给任务2,然后再交给任务3,……,因为任务2要得到任务1的输出数据作为自身计算的输入,才能做计算,同样,任务3也要得到任务2的输出数据才能做计算,……而且,可能任务8、9、10一直占用计算资源。因此,一个CAE 大计算任务往往是在单机上跑,不能被拆分到若干个主机去做并行计算。即使是做多主机协同仿真,把大任务切成不同的计算任务(任务1、2、3等)部署到不同主机节点上计算,就必须要事先做好配置——任务1的输出结果要给任务2 ,同时把任务1部署到某一个节点上,任务2要部署到另一个节点上,然后让两个节点之间保持通讯,同时任务2的输出结果要给任务3,等等——这些配置过程不可省略,必须提前做好。这些计算任务之间具有典型的“紧耦合”关系。例如用CAE软件对一桌台球进行运动与碰撞仿真时,程序需要对每个球的位置、速度、方向等数据进行保存,而不能将这些数据交由外部程序进行管理,上下文数据之间呈现出依赖度极高的“紧耦合”关系。部署在工业互联网平台上的工业APP,目前普遍采用了微服务架构,调用了IaaS层云计算的算力。但是,即使是先天带有并行计算便利性的微服务,在组成工业APP组件时,也需要遵循工业软件中的MBSE的串行计算模式,把每一个微服务都作为一个一个的计算任务进行协同计算的配置,上下文数据之间必须是“紧耦合”关系,才能实现工业APP的计算功能。丁研先生着重指出,云计算的并行计算和微服务的核心是“无状态服务”计算模式。所谓“无状态服务”的技术特点就是,不对处理的上下文数据进行保存和管理,换句话说,每个计算的输入数据均来自服务的外部输入,同时计算结果(输出)也不会在微服务内部保存,通常会输出给外部应用或数据库。“无状态服务”计算模式的优点在于,可以通过集群化部署,实现并行计算、高可用性和弹性伸缩等特性。但缺点在于,当需要实现经典软件架构(尤其是带上下文的“紧耦合”功能)时,微服务架构反而会把(经典架构下)简单的问题复杂化,并极大提高系统设计与开发的难度:因为在“无状态计算”的模式下,不得不借助程序外部的上下文管理机制,实现有状态计算,而目前的技术体系,在处理此类问题时,并不理想,既缺少实时性,也缺少灵活性。综上所述,在工业互联网平台上研发一款MBSE工业APP时,设计人员会面临上述的两难问题:一方面是微服务因“无状态服务”特性所存在的先天性短板,另一方面是经典架构的高门槛。工软计算多串行,次序严谨高门槛。工互爱普微服务,想“有状态”极其难。6、二者相同类似之处工业软件与工业互联网,也有一些相同、类似之处。最大的相同之处,就是二者都带有“工业”这个与生俱来的标签,因为工业软件和工业互联网的源头,都是诞生于工业领域——早期的工业软件开发厂商都是工业巨头,时至今日,这个基本格局仍然没有变;早期的工业互联网诞生于工业现场总线,是基于工业自动化的需求而产生的工业以太网。第二个相似之处,是前面提到,在机器设备的PLC和各种控制单元(CU)中就有嵌入式工业软件,如各种固定的生产设备和移动的运载车辆,它们往往以固件的形式运行在机器设备的嵌入式系统中,打包在设备中整体销售,不单独计算或统计,因此大多不为人知。机器设备中的嵌入式工业软件,可以算作是工业互联网的一部分。或者说,工业互联网边缘层(终端)中的嵌入式软件是工业软件之一。第三个相似之处,是笔者与朱铎先合写的“中国工业互联网:高歌猛进为哪般?”文中(以下简称“该文”)指出的:“伴随着软件工具上云、业务系统上云、工业APP开发的过程,很多传统架构的工业软件已经开始有部分功能向云端迁移,同时,基于云的CAD、CAE、MES、PDM、ERP等软件也不断涌现。因此,新型架构的工业软件进入工业互联网平台,加强工互联网平台的应用与服务,就成为了一个明显的发展趋势。”如果仅仅从应用界面上来看,云化的工业软件已经成为工业互联网“软件层”的一部分,如该文中笔者提出的工业互联网平台扩展图所示,参见图2。

图2 工业互联网平台扩展图(点击看大图,英诺维盛公司版权)该文展望:大量基于局域网的传统架构的工业软件,正在加速向云架构迁移,未来一定会汇聚在工业互联网平台上,形成上图中“软件层”中的“云化CAD / CAE / CAM / CAPP / CAT / PDM / ERP / MES / SCADA / DCS / EAM / SCM / CRM / BI / MRO等”新型工业软件。如上一节所述,即使传统架构的工业软件经过云化迁移到了工业互联网平台上,形成了工业APP,形成了统一应用界面,但是其MBSE的天性,仍然要求工业APP必须按照MBSE的模式进行串行计算。工软工互工业出,不同领域通有无。云化技术做媒介,铺就融合发展路。7、小结比较工业软件和工业互联网的异同之处,是一个很难做的工作,因为历史和现实、传统和前沿、独立和融合,多种因素综合、纠缠在了一起,任何的厘清和辨析尝试,都既需要“博古通今,从头说起”,也需要“专业贯通,跨界融合”。传统架构的工业软件已经存在了60多年,而且因为工业的需要,看起来还将继续存在很长时间,并不会因为部分工业软件的云化和工业互联网的蓬勃兴起而被完全替代。尤其是,工业逻辑天生带有MBSE的基因,不是融入一些新架构或新计算工具就可以轻易改变的。现在,工业互联网的高歌猛进,又让很多不同专业的技术跨界融合在了一起,带来了高度的技术复杂性和多元化的观察视角。工业互联网,既不是某些ICT领域所认知和定义的“罩在”工业要素(人机物)上面的一张电信互联网,也不是某些工业领域所认知和定义的仅仅是机器设备物联网,更不是传统架构工业软件领域所认知和定义的软件集成和云化。可以说三者都有,但是都比三者要更综合,更强大。工业软件与工业互联网,从几十年前到今天,二者都是长期独立存在,但是其本身在变化,也正在发生部分交汇与融合:工业互联网中包含了大部分嵌入式工业软件,但是工业软件中也加入了新型的基于微服务架构的工业互联网APP。尽管如此,两个领域仍然界限清晰,特色分明。“五不同三相似”是一个基本的现状。(完)感谢北京和利时系统工程有限公司工控软件系统架构师丁研先生对本文的支持与贡献!【作者简介】赵敏,走向智能研究院执行院长,中国发明协会常务理事,创新方法研究会常务理事,英诺维盛公司创始总经理。国内著名两化融合/智能制造/工业互联网/工业软件专家,U-TRIZ创始人。正高级工程师。38年来一直致力于企业如何实现创新、转型的研究与实践,在国内外媒体和国际国内学术会议发表文章和论文百余篇,为企业解决200多技术难题。著有《创新的方法》、《TRIZ入门及实践》、《知识工程与创新》、《TRIZ进阶及实战》、《三体智能革命》、《智能制造术语解读》、《机·智:从数字化车间走向智能制造》、《铸魂:软件定义制造》等专著、合著。

(0)

相关推荐