选择恰当的编程语言
您将为可编程控制器选择哪一种语言?在ICE61131-3定义的5种语言中,北美最普遍应用的是梯形图或梯形逻辑。其他的语言也不能忽视,因为有其实际应用。语言的选择依赖于编程人员的技能、要完成的编程任务、需解决问题的难易程度和控制系统的结构、谁需要和程序进行互动以及修改程序的频繁性。从1992年开始,PLCopen就着手推动和支持编程标准,该协会宣称这个标准只需较少的培训、更合乎逻辑的组织、模块化以及使用现代软件技术,并指出:“每个程序都是结构化的,以增强其重复使用性、减少出错以及提高编程和用户的效率。”
“同时,这个标准允许两种开发程序的方式:自上而下和自下而上。你可以指定整个应用并将其分成几个部分,说明您使用的变量等。你也可以从底部开始对应用进行编程,例如通过导出的功能和功能块进行。不论你选择哪种方式,开发环境将帮助你完成整个过程,”PLCopen 如是说。
IEC61131-3中的5种基本语言是:
——顺序功能图(SFC)—它不仅仅是一种语言,更是一种组织控制程序的图
——梯形图(LD)—多用于北美,以图形方式表达触点和线圈以及特殊指令块的梯级。它 源自继电器梯形图逻辑。
——指令表(IL)—一种类似汇编程序的基于文本的语言。在欧洲与其相对应的是LD。
——结构文本(ST)—一种类似Pascal的基于文本的语言。
——功能块图(FBD)—一种对应于线路图的图形语言。FBD广泛地用于过程工业。
有些IEC标准提供更多关于功能块的信息:如IEC61499和IEC61804,它们侧重于过程工业。功能块中装入了算法,这样不精通软件的人就更容易理解和应用它们。
要了解更多的有关功能块的信息,参见www.controleng.com/issues,2002年9月的“部件自动化实现建模和控制。”
在www.iec.org上,IEC发表了“可编程控制器—第三部分:编程语言。”IEC61131-3为在IEC61131第一部分中定义的可编程控制器规定了编程语言的语法和语义。其价格约为205美元。还有一本关于IEC的出版物是“可编程控制器—第8部分:编程语言的应用和实现导则。”
PLCopen(www.PLCopen.org)着重于对控制系统编程和参与发展编程标准的技术委员会的介绍。
IEC61131-3的优点和缺点
Wolfgang Langer,施耐德电气公司的软件产品经理,归纳了IEC61131-3的优点和缺点如下:
优点:
■较少的重复培训费用—因为在不同生产商的之间,其IEC编程语言看来是相似的;
■更着重于问题的解决和软件的重复使用性;
■当切换语言时,很少产生编程中的误解和错误;所有的IEC语言的工作情况是相同的;
■更强的一致性—可以使用由不同供应商提供的多种工具。PLCopen与制造商一起推动IEC标准的发展,使之符合互操作性标准。
缺点:
■太多可选的特征;
■当定义一个程序,没有对其页面值大小的实现限制作出定义;
■没有定义需要实现的最小子集;
■没有定义实现的最小限制,如在一个程序中必须支持多少个梯级;
■没有定义语言之间的转换。