{{ title }}
{{ errorMessage }}


{{ errorMessage }}





{{ registerSuccessMessage }}
首页>技术应用> 正文 
投稿
软件研发能力是工业企业的“硬”实力
  2021-11-19   

宋胜凯/文MathWorks中国区工业自动化和制造行业市场经理

无论是“工业4.0”,还是“中国制造2025”,都在强调数字技术在工业领域的应用。我们看到,随着信息技术、通信技术以及人工智能技术的发展以及广泛应用,工业世界正在迅速发生变化。今天的工厂车间、生产机器,甚至是物料搬运设备,都已经非常先进。在5G、工业信息总线、大数据、AI等技术的支持下,工业设备的智能化显著提高,设备间相互协作,承担起越来越复杂的生产任务。

在这种高度集成化的设备、系统中,软件扮演了至关重要的作用,是包括AI技术在内的数字技术,在工业场景下应用的核心载体。

这种工业应用软件的研发,往往会涉及多个领域的工程师通力协作,涉及的学科领域包括软件工程、信息技术、机械工程以及电子电气工程等,复杂性非常高。对于工业企业来讲,工业应用软件的研发实力越来越多的体现着企业的创新力和核心竞争力。

工业应用软件的处理核心及架构

驱动工业世界智能化提升的主要驱动力,是规模不断增长的数据——既包括数量上的增长,也包括数据种类上的增长。振动传感器、视觉传感器、电动机、液压驱动器、生产机械以及厂房车间等等,都在生产运行过程中,越来越多的产生大量数据。

对如此规模庞大的数据进行处理,是工业应用软件的核心要务。

有哪些算法处理软件,各自都部署在什么样的运行环境中,是整个工业应用软件最初设计时需要考虑的问题,也就是软件部署架构问题。部署架构需要合理设计,以便更好地发挥云计算、高性能工业PC,PLC,以及MCU、GPU、FPGA/ASIC等嵌入式处理器各自的计算优势。

综合考虑工业场景下的实时性、经济性、安全性等方面的要求,“云-边-端”协同处理,是当前工业界应用比较多的工业应用软件部署架构。

image.png

其中,“端”更多的代表子系统、部件级的处理单元,“边”,即边缘设备,更多的是代表设备级、系统级的计算单元,而“云”是指“公有云”或“私有云”所代表的具有很高的计算资源弹性的计算机/服务器集群。

主要设计目标

“实时性”是我们考虑软件算法部署位置的一个首要因素。一般来说,子系统、部件级处理单元靠近数据源头,是实现高实时性软件的首选目标环境。比如,涉及闭环控制的场景,往往需要软件算法在微秒级别完成一次计算任务,以使整个控制回路仅有微秒级时延,达到比较高的实时性。在边缘端和云端,随着信息处理层级的提高,时间尺度加大,软件算法的实时性要求逐渐降低,通常在边缘端的软件完成秒级的任务处理,在云端完成分钟级、小时级,甚至是更大时间尺度的信息处理。

“经济性”是考量软件算法部署位置的另一个重要方面。硬件资源与算法软件复杂程度以及多任务支持程度密切相关,而云、边缘、端各自的运行环境为相应的硬件资源提出的约束条件各不相同,如端上的处理单元可能处于高震动、高温环境下,需要特别的设计考虑,必然会使成本上升。通常来说,越靠近端,单位计算成本越高。

数据“安全性”问题正在获得越来越多的关注。我们除了需要在软件设计中考虑数据传输的安全机制以及数据本身的源端加密机制之外,还需要从整个系统视角去看待数据安全的问题,对于工业应用软件来讲,涉及工业设备安全相关或知识产权相关的关键数据,尽量在边缘和端这种企业私域内完成处理,而对安全不那么敏感的数据,在有数据保护机制的条件下再放到公域的云端处理。

综合以上的设计目标,以包装机设备为例,整个系统可以按照下图的方式构建。

image.png

其中,实时控制软件部署在包装机(Packaging Machine)这个端上,预测性维护的应用软件由部署在边缘端和云端的信息处理程序共同构成,从边缘端发出的数据经过了安全性的处理,以通过公共网络发送到云端,满足数据安全性的需求。

工业应用软件融合了多个学科的知识

从学科的角度看,工业应用软件主要涉及控制工程和信号与信息处理两个学科,即主要由软件来完成控制方面的计算以及信号与信息处理方面的计算(注:在此我们将数据管理、任务管理以及通信交互等部分的软件做为支撑性软件来看待)。

与工业应用软件进行交互的是机械、电子电气、液压等领域的对象,无论是在靠近端的部分让软件实现对特定对象的实时控制,还是在边缘设备或云上开展有效的信息处理,符合功能要求的工业应用软件必然要融合各类对象的机理知识,或者说,开发者要综合工业领域的专业知识和计算机领域的知识,才能做好工业应用软件的开发。

AI技术正在从实验室走向工业现场

越来越多的工业企业在应用AI技术,提高设备智能化水平、生产车间的运营智能化水平,同时也在业务层面,利用AI技术探索新的面向服务的业务模式。AI在工业领域的落地应用,涉及一个关键的问题,即AI的部署问题。我们知道,AI技术的实现需要很大的计算资源支撑,如何在端、边缘这些计算资源有限的嵌入式设备上应用AI,是提高设备智能的关键。而在云端的AI部署上,如何将AI技术与工业领域的知识融合,是利用AI带来经济收益的关键。

这里有一个很好的例子,英国蒙迪(Mondi),一家国际性的包装和纸质产品集团,利用MATLAB开发了一款工业应用软件,部署到工业现场,应用AI技术实现了预测性维护和生产线的健康监测,借助该应用,Mondi降低了大量维护费用,为企业带来显著收益。

工业应用软件的研发需要多重支撑

当前,越来越多的工业客户在向系统集成化这个业务形态转变,综合利用研发数据、生产数据、运营数据,探索挖掘产品全生命周期的服务机会,获取新的增长点,这也是我们常听到的“数字化转型”的关键。

在此背景下,工业应用软件的研发主体——工业企业,需要一套研发工具和体系,来应对工业应用软件复杂度提升带来的研发挑战。这里的复杂程度有两重意思,一方面是指由软件与电子电气、机械、液压,以及AI技术等融合带来的更高的技术复杂度,另一方面指这种技术复杂性溢出到企业范围内的其它领域,如负责工程师职业技能提升的人力资源领域。

首先,合适的研发工具和体系要能系统化的处理和解决多学科问题,一是辅助设计工业系统中专业化非常强的机电液控制系统等,二是能够将这些多物理域的机理知识与AI等技术进行融合,在数据层面深入挖掘,开发面向服务业务的软件应用,如预测性维护应用。

其次,团队协作能力和工程师技能提升,是保证工业应用软件获得成功的关键使能要素,这就需要相应的软件研发工具和体系,要能够促进各领域工程师的交流沟通,同时,工具供应商完善的培训和服务体系是团队技能提升的重要保障。

MathWorks的产品和服务帮助工业企业开展软件研发

在研发工具方面,MATLAB/Simulink的产品体系包含100多个工具,不仅覆盖多个学科(机、电、液、软等),而且围绕基于模型设计的理念/方法,提供了包含测试与验证的完整工具链,支持开发云-边-端上运行的软件。

image.png

同时,AI应用开发以及企业级应用、云端应用部署,也有相应的产品与方案予以支持。

image.png

其中,在对AI技术的支持方面,MATLAB/Simulink不仅包含了用于AI算法建模和训练的工具,而且还提供了面向嵌入式部署应用的代码生成工具、组件编译工具,赋能工业领域的工程师快速将AI技术应用到实际的工业场景中。

在为工业企业研发团队的能力提升,提供服务的方面,MathWorks一方面有丰富的培训课程提供给客户,另一方面,还提供深度的技术支持服务和咨询服务,帮助用户建立先进的研发流程、促进研发团队整体能力的提升。

image.png

小结

工业世界的软件日益复杂,需要处理的工业数据正爆炸性增长,这既给工业企业带来很大的研发挑战,也是工业企业借助软件实现AI等新技术融合、开拓面向服务的新业务模式的机会。构建合理的软件研发平台与提升软件研发团队的技能水平,是工业企业研发成功的工业应用软件的关键。

image.png

作者:宋胜凯(MathWorks中国区工业自动化和制造行业市场经理)致力于MathWorks工具链在工业领域的应用和推广,在企业数字化转型过程中开展研发平台及体系建设有丰富的实践经验。

分享到:
  点赞
  收藏
  打印
评论(0)
已输入0字
最新文章
 2022-06-08