(中国航空工业集团信息技术中心,北京 100028)
软件(中国大陆及香港用语,台湾称作软体,英文为Software)是一系列按照特定顺序组织的计算机数据和指令的集合。但面对现代工业软件而言,该定义已不再适用。工业软件是以工业知识为核心、以信息物理系统(Cyberphysical Systems,CPS)形式运行、为工业品带来高附加值、用于工业过程的所有软件的总称[1]。
近几年国外对工业软件的定义(techopedia)为:“工业软件是一种可以帮助人们在工业规模收集、操作和管理信息的应用程序、过程、方法和功能的集合。工业软件的使用包括运营、制造、设计、建筑、采矿、纺织、化工、食品加工等行业用户及其服务提供商。”(Industrial software is a col⁃lection of application programs,methods and functions that can aid in collection,manipulation and management of infor⁃mation on an industrial scale,and sectors that make use of in⁃dustrial software include operations,manufacturing,design⁃ing,construction,mining,textile,mills,chemicals,food processing and service providers.)[2]
我国正处于从工业大国向工业强国的转变阶段,其中工业软件起着重中之重的作用,而一款成熟的工业软件,需要融入大量工业知识与长期积累的制造经验,不是仅凭计算机软件知识的工程师或将工业知识融入软件即可研发成功的。CPS 条件下智能制造快速发展,工业软件已成为制造业发展的核心要素之一,并将在发展中进一步展现其不可或缺的重要地位。
魂,主管人之精神灵气。类比到工业,软件便可称为工业的魂。没有软件,再先进的加工中心、仪器、设备都只是废铁一块;产品研发、生产、管理与设备运行、维护都将混乱不堪,先进的工业体系便也不复存在。例如:没有软件的辅助,全球最先进的第五代战斗机根本无法起飞,也就毫无价值;没有计算机辅助工程(Computer Aided Engi⁃neering,CAE)软件,诸如卫星、高铁、高端芯片等复杂产品根本无从开发[1]。
现今各类产品,由于其结构复杂、技术复杂以及产品更迭速度快,如果没有各类工业软件的辅助,仅依靠人力无法完成研发任务。依靠工业软件的研发手段,就是改模拟传递为数字传递、改串行研发为并行研发,其优点是在缩短产品研制周期的同时提高产品质量,降低研制产品成本,缩短产品研制周期,最终给客户呈现出精品。例如在开发、研制、制造过程中采用数字化技术和并行工程的波音777 飞机。波音公司依靠充分的技术储备和组织管理经验,零部件全部三维数字化定义、数字化预装配,以精益制造思想为指导,共建立238 个设计建造团队,实施并行工程。采用数字化预装配代替实物样机。生产过程中修正了2 500 处设计干涉问题,使设计更改和返工率减少50% 以上,装配时出现的问题减少50%~80%,研制周期由常规的10 多年缩短为4.5 年。最终造出的第一架波音777 性能优于已有24 年历史的第400 架波音747,这就是工业软件的强大之处[3]。未来,诸如飞机等复杂产品的研制将进入“以综合模型为基础,以数字孪生为驱动”的新型研发模式。
工业软件是一个十分庞大的体系,包括设计研发软件、生产制造软件、工业管理软件、工控软件等。制造执行系统(Manufacturing Execution System,MES)又称制造运营管理系统(Manufacturing Operations Management,MOM),是企业资源计划(Enterprise Resource Planning,ERP)等上游系统与分布式数控(Distributed Numerical Control,DNC)/制造数据采集管理系统(Manufacturing Data Collection and control,MDC)等下游系统之间的桥梁。MES 强调控制、协调和执行,使企业信息化系统在拥有良好的计划系统的同时还能使生产计划落到实处。功能完善的MES 软件应该包含高级计划与排程(Advanced Planning and Scheduling,APS),只有通过APS 才能使MES 中的计划更精确、科学,才能使MES 流畅地运行起来。若没有车间MES/APS 软件定义的设备能力、最优生产计划和生产质量管理等内容,所有机床、生产线等制造设备都无法按照给定的计划进行有序、高效的生产,甚至会陷于混乱和瘫痪状态①。
工控软件包含数据采集、人机界面、软件应用、过程控制、数据库、数据通讯等内容,其特点是与硬件绑定,相对封闭和专用。现代工业设备的正常运转和精准工作均依靠工控软件实现。在现代工业生产线上,工控软件中任何一个参数失调,都可能造成大批废品甚至是设备停机。
工业技术软件化的重点在于将工业知识/技术等要素从非软件形态转化为软件形态的同时,还需用软件定义、改变它们的形态或性质。工业技术是支撑工业发展的基本要素之一,是几十年来工业技术发展的重要趋势。而工业技术软件化离不开知识的传承。
人类知识传播路径如图1 所示。
Fig.1 Human knowledge transmission route图1 人类知识传播路线
在数字化储存方式出现之前,知识储存在人脑,或记录在其他介质上。在记录、使用、传播等方面受到诸多限制,同时知识的更新非常困难。传统物化载体记录和传播知识的方式已无法跟上现代快速发展与不断升级的新工业革命步伐。
数字化储存方式带来的巨大好处首先是无损复制,不再因反复使用而产生图文失真或磨损;其次,数字化图文在编辑上比纸介质更加方便自如;最关键一点,数字化可以打破空间界限,基于网络无损传输,在任意许可范围内实现共享,最大限度地满足全网范围内分布式传播与获取的需求。
此外,数字化设备所需的物理介质空间,与传统介质所占空间相比,几乎可以忽略不计。比尔·盖茨曾亲自示范:一张光盘记录的可打印文件,能够打印成几十米高的“打印纸柱”。只有将知识数字化后写入软件,让工业技术/知识最大限度地软件化,让工程师脱离厚重的设计手册,只用软件就可不限时空地调用工业技术/知识,才能把工业技术/知识的作用发挥极致。
工业技术是用于研发生产、用来解决技术问题的基本要素,它往往是发明与实践的结晶。工业技术的载体可以是碳基介质(如人脑、纸质书籍资料等),也可以是硅基介质(如硬盘、光盘等)。因此,拥有工业知识,就需要拥有承载工业知识的人或物。工业技术/知识被写入软件并存储到赛博空间就是工业技术软件化的结果。
工业技术软件化由索为系统公司在2016 年提出,旨在研究人类使用知识和机器使用知识的技术泛在化过程,建设自主的工业技术软件化平台,并以此作为一个技术突破口打破国际软件巨头对工业软件的垄断。
2017 年12 月15 日工业技术软件化产业联盟(又名工业APP 联盟)在北京正式成立,工信部原副部长杨雪山教授这样理解工业技术软件化:为什么要工业技术软件化?①从劳动生产率看,必要的;②从制造发展过程看,必需的;③从智能制造发展过程看,必然的;④从制造业发展未来看,最关键的。
必须将工业技术软件化放在整个工业化进程的大视角下理解:它是工业技术/知识的显性化、模型化、数字化、系统化和泛在化,是一个综合地不断提高人/机使用知识效率的发展过程。人和机器既是知识的创造者、使用者,也是受益者。可以认为,工业技术软件化是传统知识管理在以智能为标识的全新历史时期下的解构与重构,是其与数字化技术结合之后的又一次转型和发扬光大。
工业技术软件化由来已久,过程必将长期而缓慢。工业技术软件化量多面广,包括将某些专用知识嵌入商用软件、将特定的经验与技巧写成自用小软件、开发专用自主可控电力软件、开发自主可控嵌入式工控软件、开发工业物联网的设备驱动软件、开发服装柔性生产MES 软件等。工业技术软件化可以从企业的任何一个工作环节、选择任何一种工业技术/知识、面向任何尺度的软件交付物做起。
做好工业技术软件化,需要长期的技术积累和知识沉淀,需要企业有足够的耐心与实践。企业可将所有来自实践一线的工业技术、经验、知识沉淀下来,经过模型化、软件化、再封装,构成互不相关、高度适应外部需求变化的微服务,然后在更具体的工业场景中将它们组建成特定的工业APP[4]。
网景通讯公司创始人、硅谷著名投资者马克·安德森在《软件正在吞噬整个世界》中指出:软件的扩散和蔓延,已经是全球、全社会、全行业性质的,水银泻地般无孔不入,“软件化”已经是一场看不见但是可以切身感受到的“运动”。随着计算机在各行业的全面普及,软件涉及的领域愈加宽广,其体量或大或小,从几十行代码到几亿行代码不等。软件的作用已深入到社会生产生活各个方面。
软件大致可以分为系统软件、应用软件和中间件3类。作为这些软件的重要组成部分,工业软件是包含了所有承载工业要素、用于工业过程的软件。工业软件作为一种载体和工具在工业领域中建立数据自动流动规则体系,对业务活动赋能、延伸人类知识与智能。工业范畴与工业软件应用范畴一致,无论是重工业、轻工业还是化学工业,都离不开工业软件。
一个软件的质量,如其性能、功能、可维护性、可靠性、安全性、互操作性等质量指标,依赖于软件中的知识、算法、控制逻辑实现。特别是工业软件,如果没有特定的算法与知识支撑,无法进行研发。工业软件是复姓,首先姓“工”其次才姓“软”,其难点在于“工业”而不在“软件”。没有工业技术的长期发展与积累,就没有工业软件的应用与成长,而软件从另一方面再次提升了工业发展速度与质量,很多工业品没有软件的支撑无法开发。工业与软件是相辅相成、相互促进的。
常见的商用工业软件数量只占工业软件总量的10%~15%(估算值)。大量工业软件是企业针对相关项目开发的,并不会商业化。例如波音787 整个研制过程用到8 000 多种软件,其中只有不到1 000 种是常见的商业化软件,其余7 000 多种软件都是波音公司经过多年经验积累自行开发的私有(自用)软件,其中仅CATIA 就有超过6 000 个许可证[5]。
按照国际惯例,企业自己开发的软件往往被称作“in house(自用)”软件。相对于商用工业软件,自用软件具有更明显的特定意义。这类软件是专门在特定场合使用的,仅适用于某家企业的某个工序,没有普适性。大量的自用软件实际上已成为企业核心竞争力不可或缺的一部分。
理论上讲,工业软件研发主体应该是多样化的:有工业巨头的按需开发,有专业商用公司开发,也有企业员工根据自己的需求开发,还有自由个体凭兴趣开发,再或者有高校组织教师/学生进行开发,由研究院所组织团队自己开发,还有企业自己成立专门的部门或独立的公司进行开发。但是,真正把工业软件开发成功,且运用到产品生命周期管理过程中去,并通过产品或研究成果产生收益,再将收益不断持续投入新版本软件开发中,形成良性滚动发展,目前看来只有工业巨头能够做到。
工业软件在开发过程中,顶层系统架构搭建难度大,英文程序使用门槛高,硬件设备建立开销大,编程高手培养难度高,产权知识不易保护,后期维护相当繁琐。国外工业软件开发在20 世纪70 年代冷战时期进入爆发期,但也只有财力雄厚的军火商、汽车商才有条件独立开发或依托某厂商开发早期的CAD 软件。
例如:CADAM——由美国洛克希德公司支持的商用软件;CALMA——由美国通用电气公司开发的商用软件;CV——由美国波音公司支持的商用软件;I-DEAS——由美国NASA 支持的商用软件;UG——由美国麦道公司开发的商用软件;CATIA——由法国达索公司开发的商用软件;SURF——由德国大众汽车公司开发的自用软件;PDGS——由美国福特汽车公司开发的自用软件;EUCLID——由法国雷诺公司开发的自用软件,后成为商用软件等[1]。
企业自主开发工业软件是现有趋势,其成果往往以一种自用软件或“工业APP”的形式存在。这样的自用软件,算法未必最先进,菜单界面未必简洁大方,但可根据企业自身需求针对性解决问题。
工业APP 尚且处于初阶发展阶段,世界范围内仍未对它给出明确定义,在中国工业界依旧属于新生事物。工信部《工业互联网APP 培育工程实施方案(2018-2020 年)》定义为:“工业互联网APP(以下简称工业APP)是基于工业互联网、承载工业知识和经验、满足特定需求的工业应用软件,是工业技术软件化的重要成果。”
以1957 年帕特里克·汉拉蒂(Patrick Hanratty)博士开发出世界上第一款商业化的数控编程系统PRONTO 为起点,工业技术软件化开启了漫长的发展历程。PRONTO 数控编程系统迈出了工业软件的第一步,被称为“一切CAD的基石”。60 多年来,学界与产业界一直尝试将机械、电子、物理、化学等专业领域知识,以及在工业研发实践中积累的设计过程、加工技巧、工艺路线、造型方法、仿真经验、运维管理等方面知识“装入”软件这个“容器”,并在计算机充沛的算力支撑下,发挥巨大的“赋值、赋能、赋智”作用。如今相当一部分大型工业软件是由某种APP 发展而来。
《工业互联网APP 发展白皮书》指出,工业APP 作为一种新型工应软件,一般具有以下6 个典型特征:完整地表达一个或多个特定功能,解决待定问题;特定工业技术/知识载体;小轻灵,可组合,可重用;结构化和形式化;低代码化;平台可移植[6]。
作为工业技术知识的载体,工业APP 有两个关注重点:第一,对工业数据建模以及对模型进行持续优化;第二,对已有工业技术知识进行提炼与抽象。它强调高度的标准化与体系化且运行载体多样化,用户可以根据实际需求进行安装、使用、相互调用,甚至是卸载和更换其它工业APP,操作快速、方便、灵活。同时,工业APP 采用微服务技术,这是一种新型的软件架构技术,可以把一个应用程序分解为功能粒度更小,相互之间完全独立的组件,从而使工业APP 获得更高的敏捷性、可用性和伸缩性。
将作为基于通用设计软件的设计知识封装为工业APP 的基础,传统架构下的工业软件(如CAX/PDN/PM 等研发设计工具、ERP/MES/SCM 等运营管理软件和组织协同软件以及嵌入式软件等)正在加速解构、重构,同时云化改造迁移,实现工具平台化。解构后形成的工业APP 同时向工业互联网平台发展,协助传统工业软件更好地服务于工业活动。两者将在未来相互配合,长期共存,最终形成更加高效的生产力。
工业APP 体系庞大,涉及的工业技术门类众多,个性化强,对象繁多,关系复杂。它拥有一个三维体系框架,包含工业维、技术维和软件维。任何工业APP 都可按照该体系框架进行分解和组合,同时可具有多个维度属性,例如螺栓机加工工艺仿真APP 既属于基础共性APP,同时也属于生产制造APP,还属于应用改进环节APP。通常为了满足不同时期行业、企业或组织的产品发展战略需求,工业APP 体系需定期或不定期进行相应重新规划和修整。
工业APP 发展历程是工业技术软件化的结果,其发展演变路径可以总结为:工业技术/知识→工业软件→工业APP→工业互联网APP。工业APP 形式根据其发展历程和分享范围也可以分为3 种:个体自有模式、企业自有模式和商用公有模式。
在工业APP 生态中,存在不同的利益相关方,它们在产业链上各司其职又互相影响,形成有规律的共同体,在产业、技术发展的外部环境下,相互制约、价值共享、互利共存。坚持开放共享、共创共赢,引导大量工业企业、平台运营商、软件开发商、系统集成商和其他开发者等,建设以工业APP 与工业用户之间相互促进、双向迭代为核心,资源富集、创新活跃、多方参与、高效协同的工业APP 开放生态体系,为产业发展提供源源不竭的前进动力[4]。
常规工业软件,如CAX、PLM、MES 等,功能分散、深嵌在各种不同的底层架构中。通常需要单独购买不同种类的工业软件,才能使用其中不同种类的功能。目前没有任何一个工业软件厂商能够提供覆盖所有专业领域的软件解决方案,只有天生既姓“工”又姓“公”的工业互联网平台以及基于微服务技术、面向角色和场景的工业APP 才是解决这一问题的最终方案。值得指出的是,尽管工业APP 是工业互联网APP 的简写,但它们之间依旧有着细微差别。工业APP 与工业软件的关系与发展演变路径是:工业技术与知识→工业软件→工业APP(个体自有、企业自有)→工业互联网APP(商用公有)。
2018-2019 年西方各国对诸如中兴、华为等中国行业领头企业实施了各种维度上的封锁,既有芯片类硬件断供,也有工业软件断供。如果说芯片断供会导致企业停产,那么软件断供则是扼杀企业芯片设计和实验试制能力。没有芯片依然可以自主研发设备进行制造,但失去设计与实验试制能力则会被完全禁锢,所以开发出我国自主产权的工业软件刻不容缓。
目前众多行业都实施了多种形式和主题的“数字化/信息化”,软件价值和作用得到了一定程度的体现和发挥,诸如物联网、大数据、云计算、区块链等,新技术与术语层出不穷。这些新概念背后支撑性核心关键技术是工业软件。
但是,各方对工业软件的重视程度明显不够,工业软件和普通IT 软件往往被混为一谈,软件的“使能作用”“灵魂作用”没有充分发挥。同时,软件因为不可见,而往往不为人所知,从政府资源投向来看,近几年国家推出的若干重大工程集中于集成电路、大数据、智能制造等领域,但是在工业软件这个核心的“工业灵魂”问题上,几乎没有以“软件”为名的重大工程,更不用说专业化程度极高的工业软件。工业软件实际处于“说起来重要、落实起来次要、干起来不要”的尴尬境地。
如在“十五”至“十二五”期间,国家对三维CAD/CAE等核心工业软件研发的投入强度不足2 亿人民币。相比之下全球最大的CAE 仿真软件Ansys 公司2016 年在研发的投入资金为3.5 亿美元,约合20 亿人民币。即国外一家仿真软件公司一年的研发投入相当于我国3 个五年规划软件研发方面投入总和的10 倍。
由于认识上的缺失,我国已经错过了20 世纪70-80年代软件兴起期以及90 年代末的互联网软件高潮期。但如今智能技术重新洗牌,工业革命再次迎来新一轮“窗口期”。在这一时期,软件,特别是工业软件将成为新工业革命的关键要素。
工业软件一直面临着复杂的分类问题。目前国内外大都沿袭了传统通用软件的分类和命名方式。如CAD、PDM、MES 等。这样的划分也客观上造成工业软件种类庞杂、数量巨大和功能冗余。另一方面,国内在包括工业软件在内的诸多技术领域一直跟随国外的命名习惯,包括众多商用、自用工业软件等门类。如果缺乏科学的分类和简明的命名,是非常不容易学习、理解和掌握的,更不利于自主研发。因此建议按照联合国工业门类的视角分类工业软件,而不是从工业门类居多,庞大而复杂的信息化视角出发。本文提出一个新的工业软件体系,尝试重新划分和命名一些常见的工业软件,如图2 所示。重新分类后每种软件的简要说明如表1 所示。
Fig.2 New classification of industrial software图2 工业软件新分类
Table 1 Classification description表1 分类说明
我国拥有41 个工业大类、207 个工业中类、666 个工业小类,形成了独立完整的现代工业体系,是全世界唯一拥有联合国产业分类当中全部工业门类的国家。没有完成工业化的国家,不可能出现工业软件;而完成了工业化的国家,也不一定能够出现好的工业软件。2020 年国家出台了很多利好政策,支持软件产业发展,因此本文认为2020 年是中国工业软件元年;我国有相当完整的工业体系,尤其在各类桥梁、跨海大桥、复杂隧道、高层建筑、高铁施工、高速公路、金属结构、工程机械等工程建设方面,积累了强大的方法、算法、经验、知识,因此可基于建筑业,逐步形成工业软件优势,并进一步推广经验;争取在中华人民共和国建国100 周年时,在世界工业软件有一席之地,即在世界格局不变的前提下,我国占据工业软件三分之一天下(美国三分之一、欧洲三分之一),实现“2020 工业软件启元年,三十年后三分天下居其一”。
《论语》有言:“名不正则言不顺,言不顺则事不成”,中国以“工X 软件”定义和命名,简明扼要,易懂易记,专属中国。一旦加以推广使用,必能在业界传播开来并得到广泛认可。也只有在工业软件分类方式上加以改变,相当于重新开辟一条新的赛道,世界工业软件的“竞争赛道”才会发生变化,这样我国才能在命名基础和技术空间上,在新的赛道上,取得领先地位。
本文阐述了软件与工业软件的本质,系统分析了工业软件与工业技术的关系,对工业软件进行了重新分类,以期为我国工业软件发展开辟一条新的赛道。工业软件作为工业魂魄,必将在一个制造强国崛起的过程中伴随左右。工业软件是复姓,既姓“工”也姓“软”,“工”与“软”相辅相成,相互促进。软件是智能化的基础和载体,中国工业转型升级,道在软件!