2.3 软件定义:定义创新创业运行规则
当你早晨起床打开手机查看今天的天气情况或浏览新闻时,你会不会想到你每天都会用到的软件是从什么时候开始出现的?“软件”这个词出现于20世纪60年代,我们知道,那时电子计算机已经问世20年了,在那之前电子计算机的功能都是通过程序来实现的,也就是机器语言和汇编语言。之后为了获得更高的工作效率,融合程序和文档的软件应运而生,并且作为独立的产品从硬件中分离出来。20世纪80年代Windows操作系统的出现,标志着软件成为独立的产业。然后互联网和软件结合在一起,相互推动发展,使软件进入了一个新的阶段,即网络化和服务化阶段,软件因此渗透到人们生活和工作的方方面面。
21世纪,软件进入了飞速发展的时期。2008年全球发生金融危机,世界上绝大多数产业都面临负增长的情况,而软件行业依然保持强劲的增长势头。根据我国工业和信息化部发布的数据,从2013年到2018年,软件和信息行业一直保持着较高的增长率。软件行业在国家经济层面也扮演着举足轻重的角色,世界上有十几个国家软件的支出超过了国内生产总值的0.5%,其中美国更是超过了1%。软件行业从业者的数量巨大,2014年全球从事软件行业的人数就已经达到2900万,这几年软件行业的从业人数依然保持着增长势头。可见,软件已经是现在经济发展中重要的一部分,不仅如此,其对于世界经济的发展也起到了很大的推动作用。
2019年3月14日,谷歌宣布其公司一名女性工程师岩尾历时四个月,通过云计算成功地将圆周率计算到3.14之后的31.4万亿个数字。由于圆周率在航空航天、工程制造、轨道交通等方面具有十分重要的作用,所以这一成果对于科学的发展具有很重要的意义。而在此之前人们都是通过超级电子计算机的超强计算能力来计算圆周率的,这次云计算取得的成功恰恰证明了软件在数据运算中的重要地位。
目前,世界上制造硬件的能力在不断突破,硬件产品的性能在不断攀升,这当然是一件十分可喜的事情,但是目前存在的一大问题是如何通过合理的软件运算使硬件得到合理的应用,如何使硬件的能力实现最大化。最好的一个例子就是目前极为火热的无人驾驶技术。无人驾驶技术是利用装配在车身上的摄像头、红外传感器、雷达等传感器收集车辆周围的环境信息,然后通过软件处理得到最优的行驶方案,从而达到不需要人为操控就可以自动驾驶的目的。无人驾驶技术如图2-4所示。现在,发展无人驾驶技术的除了传统厂商宝马、福特等之外,一些科技公司也加入了它们的行列,如百度、谷歌、特斯拉等。在互联互通的今天,各个厂商所用的硬件设施几乎一样,所不同的是如何处理硬件收集到的数据,从而得到最优的结果,也就是说软件决定了无人驾驶的未来,也同样决定了这些厂商未来的生死存亡。
图2-4 无人驾驶技术
2013年4月,在德国汉诺威工业博览会上,德国总理默克尔提出了“工业4.0”的概念。“工业4.0”是基于CPS(赛博物理系统)的工业革命。CPS是指虚拟与实体互联,用“虚”控制“实”,虚实融合;“实”当然指的是硬件,而“虚”指的就是软件。所以,为了“工业4.0”中“无人工厂”的实现,物理对象的数字化、虚拟化只能依靠软件侧来实现,而不是实体侧。以前,工业中的自动化靠硬件来实现,现在都是靠数字化、软件来实现。例如,西门子公司的安贝格电子制造工厂被称为世界上最先进的制造工厂,它的核心是基于数据分享的合作平台Team Center,实质是PLM、MES、TIA三位一体的工厂解决方案,也就是利用软件来合理地管理硬件,使工厂的效率达到最高。无人工厂设想如图2-5所示。
图2-5 无人工厂设想
2015年的Gartner战略报告中出现了“SDN”一词,也就是“软件定义网络”。这是“软件定义网络”第一次出现,之后这一概念被广泛应用和发展。软件定义网络是指利用应用程序编程接口(API)对网络内的硬件进行编程操作,从而形成新的网络结构,实现对网络内的硬件进行操控的目的。软件定义网络是一个革命性的创造,它解决了以往网络中存在的许多问题,如对硬件操控的灵活性低、网络反馈缓慢、网络中硬件虚拟化程度较低、维护成本高等。SDN的出现可以使网络的虚拟化程度更高,让网络中的所有设备可以通过一个软件整合在一起,实现网络中设备操控的简单化,使网络的应用和控制具备更高的灵活性;而且SDN可以极大地减少人们对网络的干预,减少网络运行过程中的错误和故障,大大降低网络的维护成本。
在电子计算机领域,从“软件定义函数”“软件定义硬件”发展到“软件定义网络”等;在制造业信息化领域,从“软件定义图纸”“软件定义三维模型”“软件定义流程”发展到“软件定义样机”等;在智能制造领域,从“软件定义机器”“软件定义装备”发展到“软件定义制造”等。当前,“软件定义世界”成为工业OT技术与信息IT技术融合的新趋势,对于推动制造资源数字化、网络化、智能化发挥了引领作用,也为新兴的信息物理系统在技术上创造了条件。
在万物互联的今天,“互联网中的一切皆可编程”是我们目前追求的目标:向下将“人、机、物”融合环境的网络资源、存储资源、数据资源、计算资源、传感资源等海量异构资源连接起来实现万物互联,向上通过编程提供社会计算、移动计算、云计算、工业互联网、物联网等众多应用模式,在此基础上支撑大数据、人工智能应用、共享经济、智能制造等新应用、新模式、新业态,也就是说我们目前的机遇是软件定义一切。我们看到软件定义不断泛化和延伸,我们要用软件定义我们的物理世界,再进入我们的城市、我们的行业、我们的校园,从单一的资源管控到“人、机、物”融合环境下对各种资源全方位的互联互通。
软件应用无所不在,正在吞噬整个世界。随着软件定义在工业、工程领域的深度发展,信息空间与物理空间的融合呈现泛在化趋势,设备的智能化水平越来越依赖工业技术软件化水平。发展信息物理系统和打造中国工业软件平台成为落实“中国制造2025”的两个重要方面。从软件对智能化的重要意义来说,软件定义创新创业的运行规则。