研选课堂
HOME
研选课堂
正文内容
plc编程数控语言 PLC编程入门,先来认识6种编程语言
发布时间 : 2024-11-25
作者 : 小编
访问数量 : 23
扫码分享至微信

PLC编程入门,先来认识6种编程语言

传统的PLC编程语言只有两种,指令表(IL)及梯形图(LD),有的称梯形逻辑图(LLD)。而今为便于各类型的工程技术人员都能使用PLC,PLC厂商都增加了它的编程语言。国际电工组织也制定与几次修订了PLC编程语言国际标准。并在1993年做了全面修订后称之为

IEC 61131-3 的修订版。我国在1995年11月发布了GB/T 15969-1/2/3/4 标准,与IEC 61131-1/2/3/4等同。该标准推荐了6种编程语言,除了指令表及结构化文本(ST)为文字语言 ,还有梯形图、功能块图(FBD)、连续功能图(CFC)及顺序功能图(SFC) 等图形语言。

目前,IEC 61131-3编程语言不仅用于PLC,而且还用于集散型控制系统、工业控制计算机、数控系统和远程终端单元。

由于这个标准的建立是在PLC已广泛使用之后,加上它不是强制性标准,所以,有些老的PLC厂商还是在原来语言的基础上做了扩展,并没有完全采用这个标准。再就是,即使语言相同,但细节还是有不少差异。

倒是国产PLC,如和利时公司的LM、LK系列机,是在有了标准之后才开发的,能全面采用这个标准。再就是ABB公司的PLC也使用标准规定的6中语言编程。

下面就给大家简要介绍一番:

指令表(IL)

指令表语言是PLC编程最基本的语言。但是,用它编的程序,可读性较差,目前已不常用。故不在此做介绍。

结构化文本语言(ST)

ST语言与BASIC语言、PASCAL语言或C语言等类似。它没有单一的指令,只有由一组指令构成的含义完整的各种语句。具体语句有赋值语句、条件语句、选择语句、循环语句及其他语句(EXIT语句、RETURN语句、功能块调用语句等)。

不同品牌PLC的ST语言所提供的函数、运算符可能略有不同。

ST语言功能比图形语言强,但不如图形语言直观,目前用的还不大普及。如欧姆龙PLC只是在自编功能块的程序中才可使用它。

同样为ST语言,各PLC厂商的细节不完全一样。

梯形图(LD)

梯形图来源于美国,是一种基于梯级的图形符号布尔语言。

梯形图语言与电气原理图相对应,与原有继电器逻辑控制技术相一致。与原有的继电器逻辑控制技术不同的是,梯形图中的功率流不是实际意义的电流,内部的继电器也不是实际存在的继电器。

梯形图的左母线好像电气原理图的电源线一样,一般不直接与输出类指令(相当于电气原理图的负载)相连,中间总要有能建立逻辑条件的一些指令(相当于电气原理图的控制元件)。但有的PLC也允许这么做。

用梯形图符号编的PLC程序,很像电气原理图。如上图所示。图b为施耐德公司Naza PLC用的梯形图。

下图所示为与IL语言程序对应的梯形图程序

关于梯形图的文章有很多,在此不再赘述,本公众号以前也发过几篇文章,大家可以去看一看:

关于PLC梯形图,你想知道都在这里!

想短时间内掌握西门子PLC梯形图的编程方法就一定要看这篇文章!

学PLC必看:看懂电动机控制系统中PLC梯形图和语句表

PLC常用的基本控制电路及梯形图

功能块图(FBD)

FBD语言(一种对应于逻辑电路的图形语言),与电子线路图中的信号流图非常相似。FBD广泛地用于过程控制。

FBD语言是以功能模块为单位,描述控制功能。特别是控制规模较大、控制关系较复杂的系统,用它表达将更为方便。

目前,PLC厂商推出一些高功能及高性能的硬件模块的同时,多提供与其有关的功能块图程序,这为用户使用这些硬件及进行编程提供了很大方便。

FBD语言占用内存较大,执行时间较长,因此,这种语言多只在大、中型可编程序控制器和集散控制系统的编程和组态中采用。

连续功能图(CFC)

CFC与FBD类似,也是按需要选用种种功能块。所不同的是,它更灵活,块的位置可任意摆放,特别有信号反馈时,画起来更方便。

为了块的执行有明确的顺序,它的每个块的右上角都标有序号。但在实际表达时,这个标号也可选择不显示。

FBD及CFC语言在DCS系统编程中用得较多。此外,由于这两种语言差别不大,有时,仅使用FBD语言。因而,有的也把IEC 61131-3自动化编程语言说成5种。

顺序功能图(SFC)

SFC语言以描述控制程序的顺序为特征,以图形方式,简单、清楚地描述系统的所有现象,并能对系统中存有的像死锁、不安全等反常现象进行分析和建模,并可在此基础上编程。所以,得到了广泛的应用。

其实,SFC语言仅仅是一种组织程序的图形化方式。其实际使用要与其它语言配合,否则无法实现其功能。所以,严格地讲,它不能算是完整的编程语言。

1.组成

步(Step)

用方框表示,分有初始步、活动步、不活动(休止)步三种。一个步是否为活动步,即是否处于激活状态,则取决于上一步及与其相应的转移。

动作(Action)

动作是步的组成部分,一个步含有一个或多个动作,用一个附加在步上的矩形框来表示。每一动作中的程序代码都可以用IEC的任一语言如ST、FBD、LD或IL来编写。每一动作还有一个修饰词(Qualifier),用来确定步激活时其动作什么时候执行或终止。

有向连线

从上到下、从左到右的步间连线。也可用加箭头做非上下、左右的步间连线。

转移

在有向连线上的垂直短线。与转移相关的逻辑条件,用文字、布尔代数表达式、图形符号标注在转移短线旁。

2.SFC转移规则

步的转移指的是有向连线相连的前后步激活状态的转换。

步间转移的规则是:

①步间的转移逻辑条件为真;

②被转移步的前一步是活动的。

不满足此两条件,将不转移。

为了启动顺序功能流程图程序的执行,总是要指定一个初始步,其标志为S0,是程序运行开始时被激活的那个步。有个这个初始步,则随着相应转移逻辑条件满足,流程图中步的激活状态将逐步转换,直至最后一步被激活,或根据有向线指定路线不停地循环转换。

3.SFC主要形式

根据结构的不同,可分为以下几种形式:单序列控制、并行序列控制、分支结构序列、转移序列等。

下图所示为一段SFC语言编写的程序。

同样称SFC语言,但有的是合乎标准的,如欧姆龙CJ2所用的,其Action有以上修饰词。有的没有,使用时要看具体软件的说明。

本文选自《PLC实用编程指南 第3版》

编后语

PLC编程入门,先来认识6种编程语言~附赠详细解读!

传统的PLC编程语言只有两种,指令表(IL)及梯形图(LD),有的称梯形逻辑图(LLD)。而今为便于各类型的工程技术人员都能使用PLC,PLC厂商都增加了它的编程语言。

我国在1995年11月发布了GB/T 15969-1/2/3/4标准,与IEC 61131-1/2/3/4等同。该标准推荐了6种编程语言,除了指令表及结构化文本(ST)为文字语言,还有梯形图、功能块图(FBD)、连续功能图(CFC)及顺序功能图(SFC)等图形语言。

目前,IEC 61131-3编程语言不仅用于PLC,而且还用于集散型控制系统、工业控制计算机、数控系统和远程终端单元。

由于这个标准的建立是在PLC已广泛使用之后,加上它不是强制性标准,所以,有些老的PLC厂商还是在原来语言的基础上做了扩展,并没有完全采用这个标准。再就是,即使语言相同,但细节还是有不少差异。

倒是国产PLC,如和利时公司的LM、LK系列机,是在有了标准之后才开发的,能全面采用这个标准。再就是ABB公司的PLC也使用标准规定的6中语言编程。

下面就给大家简要介绍一番:

指令表(IL)

指令表语言是PLC编程最基本的语言。但是,用它编的程序,可读性较差,目前已不常用。故不在此做介绍。

结构化文本语言(ST)

ST语言与BASIC语言、PASCAL语言或C语言等类似。它没有单一的指令,只有由一组指令构成的含义完整的各种语句。具体语句有赋值语句、条件语句、选择语句、循环语句及其他语句(EXIT语句、RETURN语句、功能块调用语句等)。

不同品牌PLC的ST语言所提供的函数、运算符可能略有不同。

ST语言功能比图形语言强,但不如图形语言直观,目前用的还不大普及。如欧姆龙PLC只是在自编功能块的程序中才可使用它。

同样为ST语言,各PLC厂商的细节不完全一样。

梯形图(LD)

梯形图来源于美国,是一种基于梯级的图形符号布尔语言。

梯形图语言与电气原理图相对应,与原有继电器逻辑控制技术相一致。与原有的继电器逻辑控制技术不同的是,梯形图中的功率流不是实际意义的电流,内部的继电器也不是实际存在的继电器。

梯形图的左母线好像电气原理图的电源线一样,一般不直接与输出类指令(相当于电气原理图的负载)相连,中间总要有能建立逻辑条件的一些指令(相当于电气原理图的控制元件)。但有的PLC也允许这么做。

用梯形图符号编的PLC程序,很像电气原理图。如上图所示。图b为施耐德公司Naza PLC用的梯形图。

下图所示为与IL语言程序对应的梯形图程序

关于梯形图的文章有很多,在此不再赘述,本公众号以前也发过几篇文章,大家可以去看一看:

功能块图(FBD)

FBD语言(一种对应于逻辑电路的图形语言),与电子线路图中的信号流图非常相似。FBD广泛地用于过程控制。

FBD语言是以功能模块为单位,描述控制功能。特别是控制规模较大、控制关系较复杂的系统,用它表达将更为方便。

目前,PLC厂商推出一些高功能及高性能的硬件模块的同时,多提供与其有关的功能块图程序,这为用户使用这些硬件及进行编程提供了很大方便。

FBD语言占用内存较大,执行时间较长,因此,这种语言多只在大、中型可编程序控制器和集散控制系统的编程和组态中采用。

连续功能图(CFC)

CFC与FBD类似,也是按需要选用种种功能块。所不同的是,它更灵活,块的位置可任意摆放,特别有信号反馈时,画起来更方便。

为了块的执行有明确的顺序,它的每个块的右上角都标有序号。但在实际表达时,这个标号也可选择不显示。

FBD及CFC语言在DCS系统编程中用得较多。此外,由于这两种语言差别不大,有时,仅使用FBD语言。因而,有的也把IEC 61131-3自动化编程语言说成5种。

顺序功能图(SFC)

SFC语言以描述控制程序的顺序为特征,以图形方式,简单、清楚地描述系统的所有现象,并能对系统中存有的像死锁、不安全等反常现象进行分析和建模,并可在此基础上编程。所以,得到了广泛的应用。

其实,SFC语言仅仅是一种组织程序的图形化方式。其实际使用要与其它语言配合,否则无法实现其功能。所以,严格地讲,它不能算是完整的编程语言。

1、组成

步(Step)

用方框表示,分有初始步、活动步、不活动(休止)步三种。一个步是否为活动步,即是否处于激活状态,则取决于上一步及与其相应的转移。

动作(Action)

动作是步的组成部分,一个步含有一个或多个动作,用一个附加在步上的矩形框来表示。每一动作中的程序代码都可以用IEC的任一语言如ST、FBD、LD或IL来编写。每一动作还有一个修饰词(Qualifier),用来确定步激活时其动作什么时候执行或终止。

有向连线

从上到下、从左到右的步间连线。也可用加箭头做非上下、左右的步间连线。

转移

在有向连线上的垂直短线。与转移相关的逻辑条件,用文字、布尔代数表达式、图形符号标注在转移短线旁。

2、SFC转移规则

步的转移指的是有向连线相连的前后步激活状态的转换。

步间转移的规则是:

①步间的转移逻辑条件为真;

②被转移步的前一步是活动的。

不满足此两条件,将不转移。

为了启动顺序功能流程图程序的执行,总是要指定一个初始步,其标志为S0,是程序运行开始时被激活的那个步。有个这个初始步,则随着相应转移逻辑条件满足,流程图中步的激活状态将逐步转换,直至最后一步被激活,或根据有向线指定路线不停地循环转换。

3、SFC主要形式

根据结构的不同,可分为以下几种形式:单序列控制、并行序列控制、分支结构序列、转移序列等。

下图所示为一段SFC语言编写的程序。

同样称SFC语言,但有的是合乎标准的,如欧姆龙CJ2所用的,其Action有以上修饰词。有的没有,使用时要看具体软件的说明。

-------End-------

来源:机械工业出版社E视界,节选自《PLC实用编程指南 第3版》

相关问答

数控机床上的plc编程如何去学习?

数控机床现在有很多的控制系统,比如FANUC,三菱或者西门子的数控系统,所以你要学习数控机床中的PLC编程,首先你要确定一个品牌,然后去学习它的PLC编程知识!...数...

大家来比较一下(PLC编程和数控编程)?

PLC编程与数控编程不同点:1.plc主要是用于非标自动化设备,而数控是针对标准机台(如车床、铣床,磨床等)。2.plc编程是开放的平台,可以根据自己的想法随意...

数控机床如何与PLC通讯?

数控机床与PLC通讯可以通过串口通信实现,通信协议一般为Modbus或Profibus。数控机床向PLC发送指令,PLC控制设备按指令执行工作,同时将执行结果反馈给数控机床...

PLC程序有几种表达方式,也就是编写方式-花舞深蓝的回答...

PLC程序常用的编程方式主要是梯形图语句表功能块你这个可能是数控系统的程序编号这种是类似加工中心类的编程语言,一般是定位用的,一般PLC是使用梯...

如何对数控系统的PLC连接?

要实现数控系统与PLC的连接,可以按照以下步骤进行:1.首先,需要确定数控系统与PLC的连接方式。常见的连接方式包括直接连接和通过网络连接。直接连接可以通过...

前辈们!有没有谁了解什么是数控编程应该怎么样编程?

[回答]可以通过以下方法解决问题:1、数控编程非常简单的说就是用于数控代码将零件的加工刀具路径表达出来让数控机床已完成加工的过程;数控编程主要分成:...

数控车床plc是什么?

可编程控制器。数控车床是数字程序控制车床的简称,它集通用性好的万能型车床、加工精度高的精密型车床和加工效率高的专用型车床的特点于一身,是国内使用量最...

plc好还是数控编程好?

还是数控编程好些数控编程比PLC编程工作相对稳定些。想往自动化更深层次发展,PLC编程方向更近些。看个人喜欢哪方向。还是数控编程好些数控编程比PLC编程工...

在数控装置CNC中,什么叫“PLC”?

PLC可编程逻辑控制器,一种数字运算操作的电子系统,专为在工业环境应用而设计的。它采用一类可编程的存储器,用于其内部存储程序,执行逻辑运算,顺序控制,定...

plc编程与传统编程有什么不同?

1.plc主要是用于非标自动化设备,而数控是针对标准机台(如车床、铣床,磨床等)。2.plc编程是开放的平台,可以根据自己的想法随意编写程序。加装功能模块后基...

 马可波罗酒店  人民出版社在哪 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2024  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

在线咨询真诚为您提供专业解答服务

热线

188-0000-0000
专属服务热线

微信

二维码扫一扫微信交流
顶部