PLC的编程语言与编程注意事项

点赞:4039 浏览:11736 近期更新时间:2024-01-09 作者:网友分享原创网站原创

摘 要:本文简述了可编程控制器(PLC)的基本特点和发展情况,介绍了PLC的顺序功能图、梯形图、功能模块图、指令表和结构文本等编程语言及其功能特点,阐述了PLC在编程过程中梯形图与指令表语言编程的规则和注意事项等.熟练掌握PLC程序的编程语言、编程方法及编程注意事项,对于PLC编程的快速入门及工程应用具有十分重要的意义.

Abstract:Thispaperbrieflydescribedthebasiccharacteristicsofprogrammablecontroller(PLC)anddevelopmentsituation,introducestheprogramminglanguageanditunctioncharacteristicsofPLCsequencefunctiondiagram,ladderdiagram,functionalblockdiagramandinstructionlist,expoundstheprogrammingrulesandmattersneedingattentionofPLCladderdiagramandinstructionlistinprogramminglanguage,etc.Ontopoftheprogramminglanguage,programmingmethodandthemattersneedingattentionofPLCprogramhasgreatsignificanceforquickstartingtoapplyPLCprogramming.

PLC的编程语言与编程注意事项参考属性评定
有关论文范文主题研究: 关于控制系统的论文范文 大学生适用: 在职研究生论文、学士学位论文
相关参考文献下载数量: 64 写作解决问题: 本科论文怎么写
毕业论文开题报告: 论文任务书、论文结论 职称论文适用: 职称评定、职称评中级
所属大学生专业类别: 本科论文怎么写 论文题目推荐度: 经典题目

关 键 词:PLC;编程语言;编程规则;注意事项

Keywords:PLC;programminglanguage;programmingrules;mattersneedingattention

中图分类号:TP313文献标识码:A文章编号:1006-4311(2013)36-0235-02

0引言

可编程序控制器(ProgrammableLogicController)简称PLC,是一种用程序来改变控制功能的工业控制计算机.从20世纪60年代末开始由美国率先研发成功后,该技术随着工业化的进程不断迅速发展.它是以微处理技术为基础,综合了计算机技术、自动控制技术和互联网技术而开发的一种新型的具有极高可靠性的通用工业控制装置,它具有体积小、控制能力强、配置灵活、编程简单、灵活通用、易于扩展、维护方便等一系列优点.

在我国,从20世纪70年始自主研发并生产投入应用以来,随着国民经济不断发展和工业化水平的不断提高,PLC技术得到了迅速的发展和广泛的应用.当今在自动化领域,PLC技术已成为加工业自动化的三大支柱之一.

1PLC的编程语言

PLC作为一种工业控制计算机,其功能的实现不仅基于硬件的支持,更要靠程序的设计和运用.程序又分为系统程序和用户程序,系统程序由厂家设计并永久固定在PLC内,用户程序是由用户根据生产实际或系统控制的要求,采用PLC专用的程序语言编制的应用程序,以实现所需要的控制目的.PLC专用的程序编制语言简称PLC的编程语言.

国际电工委员会(IEC)在PLC编程语言标准(IEC61131-3)中明确规定了PLC的五种编程语言:顺序功能图语言(C)、梯形图语言(LD)、功能块图语言(FBD)、指令表语言(IL)和结构文本(ST)语言.其中,前三种为图形语言,后两种为文字语言.

1.1顺序功能图语言(SequentialFunctionChart)顺序功能图是一种通用的技术语言,是描述控制系统的控制过程、功能和特性的一种图形,可以用来编制顺序控制的程序,实施对顺序控制系统的控制,但它并不涉及所描述的控制功能的具体技术.在IEC31131中,顺序功能图是位居首位的编程语言.

顺序控制功能图主要由步、有向连线、转换、转换条件和动作(或者命令)等部分组成.顺序功能图只标示一个工作周期的步,循环过程用有向连线的连接来表示.顺序功能图的基本结构可以分为单序列、选择序列和并行序列三种形式.

对于顺序控制系统,采用顺序控制设计法进行编程,其最基本的思想就是将一个完整的工艺流程或系统过程一个工作周期划分为若干个顺序相连的状态或阶段,这些状态或阶段就称之为步(Step),可以用编程元件状态继电器S或辅助继电器M来代表各步.顺序控制中的各个步,是根据系统的输出量的状态变化来划分的,各步的输出量的ON/OFF的状态是不变的.

1.2梯形图语言(LadderDiagram)梯形图语言是各类型PLC中应用最多的编程语言.梯形图语言是在电气控制系统图的基础上发展演变而来的,与电气控制原理图十分相似,但在符号使用和表达方法上还是有一定区别的.由于其使用方便、直观易懂、修改灵活,很容易被熟悉电气控制的技术人员所掌握.该语言特别适用于开关量逻辑控制.

梯形图由左右两条垂直的左母线、右母线以及触点、线圈和应用指令等组成.在左右两母线之间,触点在水平方位上布置,形成串并联的逻辑关系.

梯形图是为了表达各编程元件之间的逻辑关系而绘制的一种图形语言,并非真实存在的电路,为了便于分析和理解,常检测设一个能量从梯形图的左母线流向右母线,这个能量就称之为“能流”(PowerFlow),能流的方向是从左往右并按层依次流动的.

1.3功能模块图语言(FunctionBlockDiagram)功能模块图语言是一种类似于数字逻辑电路的编程语言,对于从事电子技术工作的人员非常容易掌握.该编程语言采用类似于与、或、非的门电路结构来表示各个编程元件之间的逻辑关系.结构常用方框来表示,在其左侧为逻辑运算的输入变量,在其右侧则为输出变量.目前,只有部分微型PLC模块使用功能模块图语言,现已很少有人使用功能模块图语言来进行PLC的编程了.1.4指令表语言(InstructionList)指令表语言是一种助记符表达式,它是PLC最基础的编程语言.所谓指令表编程,就是用一个或几个容易记忆和掌握的助记符来代表PLC的某种操作功能,用PLC内部的各编程元件来表示它的操作对象,从而编制成为控制程序.

PLC的指令通常分为基本逻辑指令、步进指令和应用指令.由于指令表程序没有梯形图程序直观明析,难以直接看出逻辑关系,因此在设计复杂的开关量控制系统程序时一般使用梯形图语言.通过安装在计算机上专用的编程软件画出梯形图,然后可直接转换成指令表程序,再通过数据线传送到PLC中运行.在工程现场,则是采用手持式编程器进行调阅和修改比较便捷.

目前,世界上各类型的PLC的指令表语言不尽相同,但基本功能和原理是相近的.

1.5结构文本语言(StructuredText)结构文本语言是采用计算机语言来描述系统中各种变量之间的逻辑运算关系,来完成所需的功能或操作.它是为IEC61131-3标准而创建的一种专用的高级汇编语言.与梯形图相比,这种编程语言能实现比较复杂的数学运算,编写的程序也非常简洁和紧凑.但由于这种语言需要较好的高级汇编语言编程基础,因此现在也只有原来是计算机专业的部分技术人员在使用.

2PLC编程规则与注意事项

在进行PLC程序编程设计时,一般情况下大多采用简明直观、形象易懂的梯形图.即使采用顺序功能图先进行组织程序的设计,然后也要转变成梯形图.根据任务设计出的梯形图,最终也要软件转换成指令表程序,然后录入或传送到给PLC.所以,在PLC编程中着重地就需要掌握梯形图语言和指令表语言的编程规则和注意事项.

2.1梯形图语言的编程规则与注意事项梯形图作为一种编程语言,绘制时必须遵循一定的规则,否则会出现无法用指令进行编程或者编制的程序更复杂甚至出错的情况.在编制PLC梯形图时,我们就要注意遵循以下规则和注意事项.

2.1.1水平而不垂直即编制梯形图时,各种符号要以左母线为起点,右母线为终点,右母线有时可省略不画.梯形图中所有的触点均应水平布置,不可垂直绘制,否则将非常难以判别触点间的逻辑关系.需要说明的是,在主控结构中,会用一个与一般触点垂直的触点放置在左母线上,这是梯形图中唯一的一个垂直放置的触点叫主控触点,它不参加与其它触点的逻辑运算,只在主控结构中作为控制一组电路的总开关.

2.1.2多上串右在有几个触点串联电路形成并联结构时,应将触点最多的那个串联电路布置在梯形图当层结构的最上面,而将单个的触点放最下边;如果有几个触点并联的电路形成了串联的结构时,应将触点最多的并联电路放在梯形图的最左边,而将单个的触点放最右边.这样在编程时就可以少用一些电路块串并联的ANB和ORB指令.

特别说明一下的是,遇到并联输出时,要将分支后面没有触点的支路放在最上面,将分支后有触点的支路放在下边,这样可以在完成同样功能的情况下,少用栈指令参与编程,使得程序结构更加精练、简洁明了.

2.1.3线圈右边无接点根据梯形图的运行逻辑关系来看,从左母线到线圈的各触点运算后的结果都将传送给线圈输出或驱动相关的触点动作,而线圈后面的触点即使参加运算也不可能有输出或驱动触点动作了,所以没有任何意义.在编程时就要注意在线圈右边不绘制任何触点.

2.1.4双线圈输出不可用在同一个程序中,同一元件的线圈使用了两次或多次,就叫双线圈输出.对于输出继电器来说,在扫描周期结束时,真正输出的是最后一个输出继电器的状态,而前面的则无效了.所以PLC的编程原则中就规定,同一段程序中不允许出现双线圈输出.如果因为逻辑结构特别必须出现,则可采用相关电路合并,或用辅助继电器替换合并电路来规避这样的现象.

2.2指令语句表的编程规则与注意事项在编程时常常会由设计好的梯形图来列写指令语句表.这时,根据梯形图上的符号及符号间的相互关系、正确地选取指令以及注意正确的表达顺序就显得尤为重要.

2.2.1在利用PLC的基本逻辑指令对梯形图进行编译时,必须按照从左到右、自上而下的原则进行.

2.2.2在处理较为复杂的触点串并联结构时,如果有触点组成的电路块的串并联结构或者需要用到堆栈相关的指令时,指令表中的表达顺序就要特别注意,先写出参与因素的内容,再表达参与因素之间的关系.

3结束语

在PLC的程序设计中,要熟练掌握PLC的编程语言,特别是顺序功能图语言、梯形图语言、指令语句表言,但在学习和掌握这些知识的同时,还要有针对性地了解和准确把握控制系统的控制目的、控制要求和工作原理,才能有效地运用这些语言来编写程序.另外,在学习编程方法和提高编程能力的过程中,要注意积累编程实践和应用经验,更好地掌握编程方法和技巧,以满足实际工作中的需要.