控制软件

基于模型设计的控制程序自动生成

2025China.cn   2011年06月29日

         MathWorks公司发布了新产品Simulink PLC Coder(PLC编码器), 这是一种软件产品,可以为可编程逻辑控制器(PLC)和可编程自动化控制器(PAC)生成符合IEC 61131标准的结构化文本程序。这种技术把基于模型的设计生成PLC和PAC可执行程序,实现对生产制造和能源发电设备的控制,包括来自罗克韦尔自动化公司的产品。
概述

         MathWorks产品(图中的兰色方框)现在可以生成结构化文本程序和C语言程序,推动了基于模型的设计、测试和在PLC系统上的应用。
Simulink PLC Coder可生成结构化文本(ST为IEC1131-3中编程语言中的一种)格式的源代码,它要通过Simulink模型,Stateflow流程图和MATLAB处理,然后使用一种来自工业自动化供应商提供的集成开发环境(IDE)编译后,下载到PLC或PAC中运行。而Mathworks合作的第一个自动化供应商就是罗克韦尔自动化公司。
    “工业自动化是一个竞争激烈的领域,各公司都不断地寻找创新的方法,开发更为复杂的机电工业系统,”Tony Lennon, MathWorks公司的工业自动化和机械工业经理说道,“我们的客户认识到:带有自动程序生成的模型设计方法是设计和验证这些复杂系统的最佳方案,这种方法涵盖了电气、机械和控制系统范畴。可以使整个设备成功地运行。”

Simulink PLC Coder的功能


         实现PAC程序的自动生成过程如下:用户先用Simulink软件(上图左)完成基于模型的设计,然后通过鼠标操作执行Simulink PLC Coder,生成符合IEC 61131-3标准的结构化文本程序(上图中),最后用RSLogix(罗克韦尔自动化的编程软件)把这个程序变成罗克韦尔自动化公司PAC中的可执行码并下载,控制机械设备的运行(上图右)。 

        使用Simulink PLC Coder, 工程师能够完成工控系统控制程序的自动生成,包括回路控制、离散量控制、数据采集和监视控制等应用。自动程序生成,是基于模型设计中的一个集成部分,帮助工程师消除了传统手工编程方式带来的很多错误,缩短了整个项目的开发和调试时间。

 

[DividePage:NextPage]

罗克韦尔自动化公司与MathWorks公司的合作

        罗克韦尔自动化公司的战略合作经理Jason Weber说:与MathWorks公司的协作,“我们的客户获得了使用模型设计开发PAC应用程序的能力,提高了机械设备的性能。基于模型的设计与我们虚拟设计与制造的理念非常接近和一致,这使得用户的产品能够更快地进入市场,降低工程费用,并且生产前就能很好地验证设备。”

       MathWorks公司的Matlab是一种编程环境,可用于算法开发、数据分析、可视化界面和数字计算。Simulink是一种图形环境,可用于多领域中嵌入式系统的模型设计和动态模拟。这些产品能够生成C语言代码,已经非常广泛地用于与基于PC的控制。增加了结构化文本的程序输出,扩展了基于模型设计的应用范围,因为控制工程师非常熟悉PLC/PAC产品,比如基于罗克韦尔自动化的ControLogix PLC/PAC控制器和RSLogix编程软件。

Simulink PLC Coder 的产品特色

         ▪ 自动生成符合IEC 61131-3 标准的结构化文本程序;
         ▪ Simulink 的支持,包括复用子系统、PID控制功能块和查找表;
         ▪ Stateflow 的支持,包括图形功能,真值表和状态机;
         ▪ 嵌入式MATLAB支持,包括if-else声明、循环结构和数学指令;
         ▪ 支持多种数据类型,包括布尔、整数、列举和浮点,以及向量、矩阵、可变参数;
         ▪ IDE支持,包括 PLCopen XML,罗克韦尔自动化® RSlogix™ 5000;
         ▪ 测试结果报告。

使用Simulink PLC Coder生成PLC程序
         在Simulink中, 你可以用Simulink PLC Coder生成结构化文本,做法如下:用鼠标右键点住一个子系统块,在弹出的菜单命令中选择:PLC Coder > Generate Code for Subsystem选项。在MATLAB中,你可以调用plcgeneratecode 命令,创建新的脚本,然后通过提示,自动地完成构建过程,生成结构化文本。


         支持超过130个以上的Simulink功能块、所有的Stateflow构造和多种嵌入进MATLAB的功能,Simulink PLC Coder可以完全实现你的控制系统模型,包括反馈回路、各种模式、状态逻辑和数学运算。你可以使用Simulink PLC Coder把离散时间的工厂模型转换成结构化文本,使用硬件回路(HIL)进行测试。做为选择,你可以使用实时车间(Real-Time Workshop®)生成C/C++ 程序代码,用于对离散时间或者连续时间模型的HIL测试。
基于模型设计的发展

         嵌入式系统的使用不断地向汽车工业转移。通过使用复杂的、板级的、基于软件的电子控制,这种转移呈现出提高性能、增加安全和方便维护的需求。另外,除了公交车辆工业的转变之外,嵌入式系统的第二波热潮正在商用汽车工业中出现。这里,嵌入式系统用于控制液压系统,而以前这要依靠机械控制来完成的功能。在这两个工业中,系统复杂性的增加了对传统系统开发流程的高要求:满足项目的时限、费用和质量等指标提出了巨大的挑战。为了应对这些挑战,主要汽车制造商中的工程师,正在跨越手动编程的系统设计流程,而使用图形模型设计、分析,并用软件确定机械的性能和行为。

        使用模型设计可确保了一个最终产品满足系统的要求。模型设计使不同专家组成的工程团队一起更有效率地工作,工作在设计流程的不同阶段人们可以不断沟通;指出并改正在早期开发流程中的错误;自动生成牢靠、高效和高质量的程序。通过软件工具提供商的独特视角,按照基本的法则引领基于模型设计的成功应用是可行的。使用范围可以从相关的特定实践,到自动程序生成,再到必须解决的组织问题。

 

[DividePage:NextPage]

什么是基于模型的设计?

         在基于模型的设计中,开发流程要围绕一个系统模型中心――通过模型提炼出可执行的规范,然后是:设计与模拟、生成与执行、测试与验证。

         这个系统模型是一个可执行的规范,规范的描述和使用贯串整个设计流程。可执行的规范还包括了输入和期望的输出或接受的标准、应用环境,以及与要求的链接和参考。可执行规范的目标能与设计的目标清晰地沟通,并且允许通过仿真对规范要求进行可行性和兼容性分析。当软件和硬件的执行完成了规范要求,比如固定点和时间行为,程序能够自动生成,通过测试指标可以对系统进行验证,这个流程节省了时间,避免了手动错误的发生。
         使用了基于模型的设计,工程师能够从以下方面提高效率:

         • 使用一种公共设计环境,跨越不同的项目团队;
         • 把设计直接连接到要求;
         • 设计集成了测试,不断地发现和纠正错误;
         • 通过多方面的仿真,改进算法;
         • 自动生成程序;
         • 开发和复用测试套件;
         • 自动生成文件;
         • 跨越多个处理器和硬件目标,重用设计部署系统。

基于模型设计的使用

         公司为什么要采用基于模型的设计?有的情况是,公司是从上到下的管理模式,战略规划需要部署一套公共的工具和流程。有时是,工程师们在大学使用过模型方法,现在要寻找工具解决当今工作中的问题,这样的草根会主动采用这种模型设计方法。还有的时候,基于模型设计是一种实用的技术,有广泛的用途,比如:六西格码或系统工程。不管什么推动力促进了基于模型的设计,这种努力应该是持续的,因为公司能够看到回报。回报来自于以下不同的方面:

         • 获得了效率,比如减少了完成整个项目所需的时间;
         • 加快了产品进入市场的速度;
         • 提高了产品的质量;
         • 降低了对物理原型的依赖。

         此外,当工程师们有了合手的工具,工作起来常常会有更多的乐趣。

结论

         基于模型设计的应用已经得到很好地建立、归档和提炼,可以用于开发嵌入式控制系统和PLC/PAC控制系统,通过多年的实践和大大小小项目的执行,在航空、国防、汽车、生物、医药、化工、石油、通信、计算机、办公设备、地球与海洋科学、电子、金融服务、工业自动化与机械、仪器仪表、半导体、基础实施和能源等领域有广泛的应用,这些方法和最佳实践已经被众多行业所接受。

(原创)

标签:罗克韦尔自动化 PLC编码器 模型设计 控制程序 我要反馈 
什么是新一代机器人界面(HMI)?
ABB协作机器人,自动化从未如此简单
优傲机器人下载中心
即刻点击并下载ABB资料,好礼赢不停~
西克
专题报道