物联网技术
直播中

风尚男人

8年用户 909经验值
私信 关注
[问答]

机器开发人员面临哪些软件挑战以及硬件挑战?如何去应对这些挑战?

机器开发人员面临哪些软件挑战以及硬件挑战?如何去应对这些挑战?

回帖(1)

步雅芸

2021-6-26 18:10:22
  在设计下一代机器时,控制系统中的尖端技术、软件架构和机电部件有助于实现区别于竞争对手的自动化系统。本文将讨论机器开发人员当前所面临的最大软硬件挑战,并提供性能驱动方案以应付这些挑战。
  软件挑战
  1. 整合多种软件架构
  最适合对机器编程的软件架构和结构取决于需要优化的关键性能指标。为了优化对故障的反应时间,设计师需要一个“反应性”事件驱动的架构。如果设计师的自动检查系统要求对捕获的图像进行分析,那么就需要一个针对信号处理功能作了优化的架构。状态机架构非常适合于批处理或封装机器。半导体晶圆处理机需要基于高级模型的控制算法,该算法得益于支持实时积分解算器的架构。需要高速测试并进行实时分析的机器可以从数据流架构中获益。简单的逻辑和算法操作可以采用诸如可编程逻辑控制器(PLC)这样的序列式架构获得最佳执行效果。
  确定和应用正确的软件架构组合来解决自动化系统问题将成为未来设计的艰巨挑战。基于IEC 61131-3的语言(例如梯形逻辑和功能方块图)适合大部分主要完成开/关操作的离散型制造应用。不过,由于现代机器要求多次转换并包含预防性的维护例程,像国家仪器(NI)的LabVIEW这种以单一开发平台方式出现的语言能有效地整合用于规定操作模式的状态机、用于监视例程的数据流、用于精确控制的实时积分解算器、用于故障响应的事件以及用于开/关操作的时序逻辑。
  
  图1:状态机、积分解算器、时序逻辑、数据流和事件等不同的编程模型最好运行在明确的目标设备上,比如PC、PLC、PAC、DSP、FPGA和微处理器。
  2. 一次编写,到处运行
  虽然“一次编写,到处运行”的概念在采用.NET和Java技术的消费领域中逐渐普及,但在自动化控制领域中,实际情况仍与理想有很大差距。用梯形逻辑编写的针对某个PLC的IEC 61131-3兼容程序可能无法在另一个供应商提供的类似PLC上运行。因此,许多公司为了确保互操作性被迫对单个供应商施行标准化,在许多情况下这样做会导致非最优的性能,整个系统的总成本也相对较高。
  未来的挑战是一次性编写控制程序,然后将相同的程序应用到各种PC、PLC或嵌入式目标设备中去。自动化工程师需要在满足自动化系统的性价比要求基础上对PLC、可编程自动化控制器(PAC)、微处理器、数字信号处理器(DSP)或FPGA器件作出正确选择。NI LabIEW图形化开发平台提供的各种模块可以帮助设计师将代码移植到不同的平台上。设计师可以利用LabVIEW以图形化的方式开发程序,然后利用LabVIEW Real-Time工具在实时操作系统上配置应用程序,利用LabVIEW FPGA将代码输出到FPGA,利用LabVIEW DSP将代码配置到DSP,并利用LabVIEW Embedded将代码传送给32位微处理器。
  3. 系统验证
  目前大多数开发过程中都包含有代码审查阶段,它能保证所设计软件的可靠性。但是,由于现在的机电系统中软件和硬件结合得相当紧密,因此很有必要进行完整的系统验证。工程师们正在从只执行一个“配置”阶段转向要经历“设计、原型、配置”三个阶段。设计阶段除了控制系统硬件的算法和控制逻辑外,还包括对硬件的机械、热和流特性进行仿真。原型阶段包括建立机械和控制设计的虚拟或物理原型,以帮助工程师在最终实现之前进行概念性验证。配置阶段包括将控制算法和逻辑配置到PLC、PAC或嵌入式目标中,并对伺服制动装置、气动装置和水力装置等机械部件实施装配。
  工程师所面临的挑战是在每个设计、原型和配置阶段高效执行程序,并且在每个阶段将代码装入不同开发工具时不损失时间。LabVIEW为每个阶段提供了单一开发平台,为设计阶段提供了机械(SolidWorks、COSMOSWorks、COSMOSMOtion、MSC.ADAMS、MTS I-DEAS)、数学(MathCAD、Mathematica、MathWorks公司的MATLAB)、电子(Multisim、Ansoft、Anadigm、SPICE)、嵌入式(Code Composer Studio)和控制(MATRIXx、MathWorks公司的Simulink、CarSim)设计工具方面的接口;为原型阶段提供了PC平台上的集成化模拟I/O、数字I/O、运动、视像和通信接口;并根据性价比要求为配置阶段提供了各种配置目标(PC、PAC、FPGA、DSP、微处理器)。
  
  图2:LabVIEW为从设计到原型再到最终系统配置的图形化系统设计提供了单一的工作环境。
  硬件挑战
  未来的自动化系统将在各种不同的产品上执行复杂的任务,而且经常是同时进行。设计这种系统在硬件方面的挑战是,在实现复杂的自动化任务的同时要达到规定的吞吐量、良品率和可用时间指标。
  1.吞吐量
  机器的速度直接影响吞吐量。为了达到较高的速度,最好使用象线性马达这样磨擦力较小的机械部件,而不要使用象滚珠螺旋致动器这样的部件。设计师可以利用嵌入式技术提高控制系统的速度,比如具有1MHz环速率的FPGA,而非环速率只有1kHz的传统PLC。伺服系统将继续控制那些不再采用传统齿轮/凸轮系统的机器。
  象NI的CompactRIO这样的可编程自动化控制器包含有可编程FPGA和运行实时操作系统的浮点处理器,它们非常适合高吞吐量应用,例如分类或组装应用。
  2.良品率
  通过提高可重复性减少浪费是取得较高良品率的关键。而对机器编程让其遵循理想的运动控制轨迹是实现可重复性的重要因素。通过将马达调整为较短的延迟时间和较低过冲的阶跃响应可以实现这一目标。为了更好地进行调整,可以使用基于模型的控制方法来满足正确的PID调整参数要求,或者采用基于模型的控制算法代替传统的PID算法。而自动化检查和RFID等技术在筛选过程中具有重要的作用,可以显著加快进度。
  LabVIEW控制设计和仿真工具结合LabVIEW SoftMotion Development Module可以帮助设计师开发出采用模型控制算法的定制运动控制器,如线性二次调节器(LQR)或H-infinity,从而实现更好的可重复性和更高的良品率。NI公司的Vision Development Module可以帮助设计师开发出具有200多个图像处理和机器图形功能的自动化检查系统。
  
  图3:设计师可以实现包括PID、MFA和基于模型的控制在内的各种控制策略,从而缩短产品的上市时间和转换时间,提高可重复性。
  3.可用时间
  现代的封装机器需要在同一条生产线上处理10个以上的产品。这不仅涉及到系统中部件的可靠性,还涉及到不同产品之间的转换时间,而转换时间将影响系统的可用时间。通过设置控制算法以适应一条生产线处理不同产品的各种情况,能够改善转换时间。基于模型的自适应控制是最近出现的新方法,它不需要调整就能使控制系统适应系统的变化。如果在系统中采用智能监视和预见性维护手段,则能更好地提高系统可靠性。振动监视、数据记录、报警和部门间通信对提高未来系统的可靠性都有非常重要的作用。
  设计师可以在任何LabVIEW Real-Time或LabVIEW FPGA模块上应用Cybosoft公司针对LabVIEW开发的无模型自适应(MFA)控制算法,从而无需调整即可适应系统的负载变化。NI公司的Compact FieldPoint和PXI平台可以帮助设计师整合高速模拟I/O和智能监视与预见性维护解决方案,从而很好地实现振动监视、数据记录、报警和部门间的连接。
  今后,机器控制领域将面临更大的挑战,比如在一个复杂的自动化系统中整合多个软件架构,进行系统验证,并达到较好的吞吐量、良品率和可用时间指标。自动化系统成功的关键是,为系统选择到最适合当前任务、并能在未来扩展功能的软硬部件。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分