对于PLC作为计算机控制技术来说,最大的问题在于它的不通用,尽管它最早于1968年开始产生并已经大量应用于工业生产。而IEC61131-3编程语言标准的出现则为PLC的进一步规范发展奠定了基础。
目前,传统的PLC公司如西门子、三菱、Rockwell、Moeller、LG、GE等编程系统的开发均是以IEC 61131-3为基础或与IEC 61131-3一致。尽管这些编程工具距离标准的IEC61131-3语言还有一定距离,但这些公司的编程系统会逐渐或终将与IEC 61131-3编程语言一致,是毋庸置疑的。
1.IEC 61131大致情况
IEC 61131是国际电工委员会(IEC)制定的PLC标准。
IEC 61131标准区分成以下几个部分:
第1部分:一般资讯;第2部分:设备需求与测试;第3部分:编程语言;第4部分:使用者指引;第5部分:讯息服务规格;第6部分:通过fieldbus通信;第7部分:模糊控制程式编辑;第8部分:编程语言应用与导入指引。
IEC 61131-3则是属于该标准的第3部分编程语言。
2.编程语言IEC 61131-3的现状和发展
1993年国际电工委员会(IEC)正式颁布了PLC的国际标准IEC 61131-3,规范了PLC的编程语言及其基本元素。这一标准为PLC软件技术的发展,乃至整个工业控制软件技术的发展,起到了举足轻重的推动作用。它是全世界控制工业第一次制定的有关数字控制软件技术的编程语言标准。此前,国际上没有出现过有实际意义的,为制定通用的控制语言而开展的标准化活动。可以说,没有编程语言的标准化便没有今天PLC走向开放式系统的坚实基础。
传统的PLC最常用的编程语言是梯形图,它遵从了广大电气自动化人员的专业习惯,易学易用,但是也存在许多难以克服的缺点:
1)不同厂商的PLC产品其梯形图的符号和编程规则均不一致,程序的可移植性差。
2)程序可复用性差。为了减少重复劳动,现代软件编程特别强调程序的可重复使用。传统的梯形图编程很难在调用子程序时通过变量赋值实现相同的逻辑算法和策略的反复使用。
3)缺乏足够的程序封装能力。一般要求将一个复杂的程序分解为若干个不同功能的程序模块。或者说,人们在编程时希望用不同的功能模块组合成一个复杂的程序,梯形图编程难以实现各程序模块之间具有清晰接口的模块化,也难以对外部隐藏程序模块内部数据实现程序模块的封装。
4)不支持数据结构。梯形图编程不支持数据结构,无法实现将数据组织成如Pascal、C语言等高级语言中的数据结构那样的数据类型。对于一些复杂应用的编程,它几乎无能为力。
5)程序执行具有局限性。由于传统PLC按扫描方式组织程序的执行,因此整个程序的指令代码完全按顺序逐条执行。对于要求即时响应的程序应用(如执行事件驱动的程序模块),具有很大的局限性。(www.daowen.com)
6)进行顺序控制功能编程时,一般只能为每一个顺控状态定义一个状态位,难以实现选择或并行等复杂顺控操作。
7)传统的梯形图编程在算术运算处理、字符串或文字处理等方面均不能提供强有力的支持。
在IEC 61131-3标准的制定过程中就面临着在突破旧有的编程语言不足的同时,又要继承其合理和有效的部分。
3.兼容并蓄是IEC 61131-3成功的基础
IEC 61131-3的制定,集中了美国、加拿大、欧洲(主要是德国、法国)以及日本等7家国际性工业控制企业的专家和学者的智慧,以及数十年在工控方面的经验。在制定这一编程语言标准的过程中,PLC正处在其发展和推广应用的鼎盛时期。主要是在北美和日本,普遍运用梯形图(LD)语言编程;在欧洲,则使用功能块图(FBD)和顺序功能图(SFC);德国和日本,又常常采用指令表(IL)对PLC进行编程。
为了扩展PLC的功能,特别是加强PLC的数据处理、文字处理,以及通信功能的能力,许多PLC还允许使用高级语言(如BASIC语言、C语言)。因此,制定这一标准的首要任务就是把现代软件的概念和现代软件工程的机制应用于传统的PLC编程语言。
IEC 61131-3规定了两大类编程语言:文本化编程语言和图形化编程语言。前者包括指令清单语言(IL)和结构化文本语言(ST),后者包括梯形图语言(LD)和功能块图语言(FBD)。至于顺序功能图(SFC),标准不把它单独列入编程语言的一种,而是将它在公用元素中予以规范。这就是说,不论在文本化语言中,或者在图形化语言中,都可以运用SFC的概念、句法和语法。于是,在我们现在所使用的编程语言中,可以在梯形图语言中使用SFC,也可以在指令清单语言中使用SFC。
IEC 61131-3允许在同一个PLC中使用多种编程语言,允许程序开发人员对每一个特定的任务选择最合适的编程语言,还允许在同一个控制程序中其不同的软件模块用不同的编程语言编制。这一规定妥善继承了PLC发展历史中形成的编程语言多样化的现实,又为PLC软件技术的进一步发展提供了足够的空间。
自IEC 61131-3正式公布后,它获得了广泛的接受和支持:
1)国际上各大PLC厂商都宣布其产品符合该标准的规范(尽管这些公司的软件工具距离标准的IEC 61131-3语言尚有一定距离),在推出其编程软件新产品时,遵循该标准的各种规定。
2)以PLC为基础的控制作为一种新兴控制技术正在迅速发展,大多数PLC控制的软件开发商都按照IEC 61131-3的编程语言标准规范其软件产品的特性。
3)正因为有了IEC 61131-3,才真正出现了一种开放式的PLC的编程软件包,它不具体地依赖于特定的PLC硬件产品,这就为PLC的程序在不同机型之间的移植提供了可能。
总部设在荷兰的国际性组织PLC open在推广该标准的应用并开发相关的软件产品,以及谋求该标准的进一步发展进行了不懈的努力,获得了广泛的响应和优秀的成绩。以上这些事实有力地说明了这个编程语言标准的生命力。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。