鱼与熊掌可兼得—如何完美开发机器?
发布时间:2018-03-01 www.cechina.cn
鱼与熊掌难以兼得
对于机器的开发者而言,我们总是需要面对“快”与“准”的矛盾,就像旋盖一样,既要精确的力矩输出以确保旋盖的质量可靠,又不能速度慢,机器控制如此,机器的开发过程亦是如此,我们要高速的响应市场的变化,而工艺以及那些具有附加值的创新设计却需要时间积累。
而“快”与“稳”这样类似的矛盾却到处可见,正如同鱼与熊掌一样,二者通常难以兼得。
软件很重要,但它多复杂呢?
相较于制造业,IT软件开发的复杂性更高,也使得其对软件工程的研究最为深刻,许多软件开发项目所遭遇的情形正如Brooks在其著作《人月神话》中所形容的:“……正像一只逃亡的野兽落到泥潭中做垂死挣扎,越是挣扎,陷得越深,最后无法逃脱灭顶的灾难”,程序设计工作正像一个泥潭…这一问题被形容为“软件危机”,具体表现包括开发进度难以预测、开发成本难以控制、用户对产品功能难以满意、产品质量难以保证、软件难以维护[i]。
图1-软件成为机器开发最为重要一环
对于软件的重要性,目前在业界已经是共识,它是Know-How的封装容器用于保护知识产权,软件也赋予了机器智能,根据变化来进行生产的适应与调整,然而,这也使得复杂性得以大幅度提高,传统的自动化行业顺序逻辑控制一个工程师可以控制,而今天,机器变得复杂,运动控制、安全、网络、IT连接、算法使得机器软件的开发变得更为复杂。
IEEE的软件工程知识体系对于软件项目管理所面临的特殊困难进行了总结,具体如下:
①客户经常不知道需要什么或者哪些是可行的;
②客户经常缺少对于软件工程所固有的复杂性的认识,特别是需求变更的影响;
③对于问题理解的不断加深以及情况的变化经常会产生新的软件需求或需求的变化;
④由于需求变化,软件经常是以一种迭代化序列化的过程构建的;
⑤软件工程必须将创造性和规范性两个方面相结合,在两者之间维持平衡常常很困难;
⑥软件开发的创新性和复杂性经常很高;
⑦软件开发的基础技术变化非常快。
随着机器变得复杂,自动化行业的软件也复杂,如何又“快速”又能“高品质”的开发机器软件成为了“鱼与熊掌”一样的问题。
鱼我熊掌兼得—机器开发效率提升方法
自动化不同于商业软件如办公软件、管理软件那么庞大,但在产业迈向智能的时代,其复杂性也大幅度提升,因此,重视软件工程也成为了必然。针对机器开发而言,通常其开发效率提升方法有以下几种。
1.软件复用与组件技术
软件复用指为了复用目的而开发软件的过程,即,对共性的软件模块进行标准化封装,以获得重复利用,软件复用主要为了解决两个主要的问题:①.软件生产效率问题:在软件无需从零开始的情况下,它可以大幅度缩短开发周期,②.软件质量问题:由于被复用的软件往往已经经过了反复的应用测试,较之新的模块而言,其出错的概率将大幅度降低。
《人月神话》的作者曾经认为软件开发没有“银弹”—一种寓意为解决问题的彻底性方法,而随着软件工程的发展,他也意识到“软件复用”是解决软件问题的“银弹”。
图2-基于软件复用思想开发的mapp是高效开发机器的利器
贝加莱的mapp的设计思想基于PLCopen标准库设计,采用标准化的设计在于降低成本,如同机械组件一样,标准化的配件制造成熟并可批量使用,因此,可以降低其使用成本,只需一次投入即可长期使用,但是,设备的开发同时也要实现个性化,解决这一问题的方法即是模块化,通过对模块根据机器进行共性划分,然后使得每个独立的模块被标准化,进而达到成本降低与机器的灵活性之间的平衡。图2反映了mapp的几个大的框架功能划分。
如图3,基于mapp来开发注塑机,各种模块的组合构成了不同机器的应用集成,例如:针对油压、带伺服泵、全电动注塑机等各种类型的机器,其共性的包括了配方、OEE、用户管理、报警等,行业工艺模块如注射循环、熔胶、锁模等也被封装为标准可服用功能块,针对单轴、多轴来实现全电动注塑机的开发,机器人集成可以实现产线级的配合,通过能源监测、OEE可以实现产线的生产运营管理。
图3-基于mapp的注塑机开发
mapp的思想解决“鱼与熊掌”兼得的问题:通过标准的软件封装解决快速开发问题,通过基于复用思想开发的组件也同时解决了软件的稳定可靠问题。
2.集成开发平台
当然,像mapp这样的机器开发思想,必须基于Automation Studio这样的集成开发平台来实现,集成开发平台也是一个解决软件开发效率的设计,它解决的问题在于:
--减少在多个开发工具之间的切换;
--通过工具的集成,节省开发周期;
--提供软件封装的基础能力;
--减少培训与教育的成本;
贝加莱的Automation Studio即是一个典型的集成开发平台,如图4,它包含了两个维度的集成:
图4-Automation Studio面向所有对象和整个流程的集成开发
第一面向所有对象,PLC,PC,运动控制(CNC,机器人与液压),网络配置,功能安全进行集成,第二个是它从软件的配置,选型(ServoSoft)、仿真接口(Matlab/Simulink,MapSim)、开发(IEC61131-3,C,C++)、调试(轴测试,机械共振分析等)、维护(分布式程序下载,FTP Server,VNC Server,Web Server)全部集成在一个开发环境里。
面向智能时代的开发
图5-智能时代的机器开发要素
在智能时代,集成开发平台不仅提供编程环境,也包括了以下一些与产线、智能相关的功能集成:
--机电一体化:不仅包括定位同步控制,也包括机器人、SuperTrak智能输送系统的集成;
--IIoT集成:对OPC UA/MQTT/REST等集成的支持能力;
--工厂集成:提供OEE、能源、维护等的数据访问与功能集成;
集成开发平台就是让高速开发与稳定可靠的项目得以平衡。
3.仿真建模
降低物理材料消耗,获得无法现实获得的场景,缩短开发周期与时间,这是普遍在欧洲使用的设备开发方法,通过MATLAB/Simulink、MapSim等仿真及自动代码生成功能生成的代码可以直接被导入运行于PLC上,对于复杂的工艺仿真而言,建模仿真对于提高开发效率降低成本作用巨大。
图6-MATLAB/Simulink仿真自动代码生成直接下载到PLC
例:如何吊装的更快又更稳?
图7-集装箱吊装的摇摆问题
集装箱吊装因为钟摆效应而无法快速定位,如图7所示,因此,如何让集装箱快速定位就是“防摇系统”所需要完成的任务,通过在MATLAB/Simulink中对该系统进行建模,然后生成代码并下载到X20PLC,通过PLC对牵引变频器的速度/位置控制进而实现对摇摆的抑制。
图8-基于建模的防摇系统开发过程
图8是基于贝加莱Automation Studio与MATLAB/Simulink的防摇系统开发过程,通过电子防摇系统开发,替代传统机械、液压等防摇系统的磨损,难以维护等缺点,并且在效率方面也能达到20%的提升。对于那些超过10000个标准箱的货船而言,每个吊装过程的时间节省意味着整个码头的吞吐能力,也意味着进出口额的增加。
借助于Automation Studio平台、仿真建模技术、mapp可以让机器制造商更快的设计机器,并且,针对工厂客户的需求提供面向大数据分析、工业物联网时代的应用接口,让机器制造商更快的响应市场的需求,赢得先机。
要了解mapp、Automation Studio、建模仿真,您可以来到贝加莱在广州自动化展的展台,共同交流。
欢迎光临贝加莱SIAF广州国际工业自动化展展台3.1-E17