数字比特的海洋(软件)会给制造下什么样的定义?但对于很多从事制造业的人们而言,当听到软件定义制造之类的话,总觉得类似表达是不是太极端了,有人甚至明确地表示不屑。从事机械、制造、以及OT领域的一些专家学者对“软件定义”之类的话多有排斥,亦事出有因。的确有少数IT出身的专家在谈论智能制造及“软件定义”之类的话题时,没能落到实处;还有少数制造或传统自动化出身的专家在谈论数字化和智能化技术的时候忘记了回家的路。这两种情况当然是应该避免的。
言软件定义制造,难道设备和工艺不再重要?无论数字-智能技术多么先进,基本的工艺和装备永远是重要的,因为产品要靠它们生产出来;人也是最重要的,甚至某些传统的手工工艺未必都能去掉。日本某先进的机床公司里,在应用数字-智能技术的同时,却存在原始的手工刮研工艺,而且是用在高精度要求之处。制造领域的学者和专家们能够深刻体认制造之不易,如果说软件定义制造,是不是IT技术主导制造呢?是不是有人又在玩概念,玩虚的?于是有制造领域的学者建议,不要提软件定义制造,只言软件使能制造。
笔者亦是机械制造专业出身,也认为“软件定义制造”不能算一个严格的学术概念,但作为技术意识或观念、作为一种描述趋势的定性说法则可以被接受。在当今学科和技术交融的时代,机械、制造及传统自动化领域的学者和专家们更应该欣然融合来自异学科的新概念或理念,只要其主体思想是合理的。当然自己要清醒的是,不要忘了回家的路!
如果把语义绝对化,那么“软件使能制造”同样存疑,扳手和螺丝刀就不是软件使能的。之所以言软件定义制造,不只是因为制造中要用到很多软件,而是软件在制造中的作用越来越关键,软件越来越体现产品和企业的竞争力。只要我们略为细察,软件的确已经渗透到制造的方方面面,且成为其核心能力。只要看看今日智能产品和装备中软件之作用,就能领略其言之真。图1.是制造中所用到的部分软件。
图1. 软件支撑智能制造“软件定义”这一术语起源于计算机学科领域,“软件定义制造”之说则是行业融合的自然结果。一般认为,软件定义的说法始于“软件定义的网络”(Software-Defined Network,SDN)。传统的“硬件为中心”的网络体系结构,复杂性高、扩展性差、资源利用率低、管理维护工作量大,无法适应上层业务扩展演化的需要。
2008年前后,斯坦福大学提出“软件定义网络”并研制了OpenFlow交换机原型。OpenFlow中,网络设备的管理控制功能从硬件中被分离出来成为一个单独的完全由软件形成的控制层,抽象了底层网络设备的具体细节,为上层应用提供了一组统一的管理视图和编程接口(Application Programming Interface,简称API),而用户则可以通过API对网络设备进行任意的编程从而实现新型的网络协议、拓扑架构而不需改动网络设备本身,满足上层应用对网络资源的不同需求。
2011年前后,SDN逐渐被广泛应用于数据中心的网络管理,并取得了巨大的成功,重新“定义”了传统的网络架构,甚至改变了传统通信产业结构。在SDN之后,又出现针对泛在化资源的“软件定义一切(Software-DefinedEverything,SDX)”。实现SDX的技术途径,就是把过去的一体化硬件设施打破,实现“硬件资源的虚拟化”和“管理任务的可编程”,为用户提供更开放、灵活的系统管控服务。
通过软件定义,底层基础设施架构在抽象层次上就能趋于一致。软件定义概念融入各个领域的同时正在不断“泛化”,软件定义正在向物理世界延伸。在“工业互联网”、“工业4.0”和我国“制造强国战略”的发展蓝图中,软件定义将成为企业核心竞争力的战略需要。伴随着软件定义的泛化与延伸,软件将有望为物理实体定义新的功能、效能与边界。
在制造中,软件的作用越来越大。
· 智能产品需要软件;
· 产品设计中结构的创成需要软件(如衍生式设计,Generative design);
· 加工过程的控制、优化需要软件;
· 管理调度优化需要软件;
· 从采购到销售的整个供应链系统的优化需要软件;
· ……
几乎在制造的所有方面都离不开软件。
不妨把“软件定义”的理念引申到制造中,但“定义”主要不是表现在“需要”,不是局限于应用软件后提高效率,而是若没有软件,产品的某些功能可能根本不存在;过程的高性能、高质量无法达到;企业的目标不可能实现;某些市场也可能不存在……现在可以回答,数字比特的海洋(软件)能为制造下的定义:人力或传统自动化不能实现的功能、性能、高质量……
软件定义制造:
● 如果软件在制造系统的某些产品/过程中所发挥的作用是人力或传统自动化不可企及的,则言产品/过程是软件定义的;
● 如果软件在制造中的关键作用是人力或传统自动化不可企及的,则言软件定义制造。
软件定义制造,并非言所有的软件都能定义制造。能定义制造的软件主要是工业软件,而非一般的通用软件。工业软件绝不是一般互联网公司可以涉足的。仅就代码行数而言, Windows软件甚至不及某些复杂产品(如飞机)中用到的工业软件。可见,工业软件承载的是何等大尺度的工程量!
工业软件还不能容忍哪怕一点瑕疵,比如****火箭,若控制火箭动作的软件有某个细节不对,火箭立即失控。通用软件则不然,如Windows软件出错,重启系统不致有太大问题。工业软件中沉淀了大量工厂场景数据、知识、及很多人的经验、才智。