研选课堂
HOME
研选课堂
正文内容
plc采用fbd编程语言 S7 300PLC之旅——STEP7的三种基本编程语言:LAD,FBD,STL
发布时间 : 2025-04-18
作者 : 小编
访问数量 : 23
扫码分享至微信

S7 300PLC之旅——STEP7的三种基本编程语言:LAD、FBD、STL

在上一篇文章《复盘“运料小车程序”,聊一聊PLC编程》中,驼子假定了一个运料小车的控制程序,简单的聊了一下一下PLC控制项目的编程步骤。有小伙伴认为程序体理解起来稍微有点难度,为了使有需要的小伙伴能有一个更为清晰的认识,驼子将在本文介绍以下STEP7 的三种基本编程语言:LAD、FBD以及STL。

一、梯形图LAD

梯形图语言是从常用的继电器与接触器逻辑控制基础上简化了符号演变而来的,具有形象、直观、实用等特点,电气技术人员容易接受,是目前运用上最多的一种PLC的编程语言。

在PLC程序图中,左、右母线类似于继电器与接触器控制电源线,输出线圈类似于负载,输入触点类似于按钮。梯形图由若干阶级构成,自上而下排列,每个阶级起于左母线,经过触点与线圈,止于右母线。图1为一段典型的梯形图语言编写的程序。

图1 梯形图语言

上图中,“常开点”I0.3、I1.2、I1.1及“常闭点”I0.2串联后,与“常开点”M0.0并联,然后为“线圈”Q4.2供电。在“继电器与接触器“型电路中,用梯形图编程会显得一目了然,犹如看电气连接图一般。

二、功能块图FBD

FBD用方框图的形式来表示控制逻辑,类似于数字逻辑门电路的编程语言。驼子在大学时,对数字电路情有独钟,因而后来对FBD语言有了天然的好感,工作中倾向于用FBD进行编程。FBD语言对于有数字电路基础的人来说很容易掌握,该编程语言用类似与门、或门的方框来表示逻辑运算关系,方框的左侧为逻辑运算的输入变量,右侧为输出变量;信号也是由左向右流向的,各个功能方框之间可以串联,也可以插入中间信号。在每个最后输出的前面组合逻辑操作方框数是有限的,同一组逻辑运算的输出结果的数目也要根据操作系统的不同而不同;经过扩展,不但可以表示各种简单的逻辑操作,并且也可以表示复杂的运算、操作功能。图1的梯形图控制逻辑用FBD编程的话,如图2所示。

图2 FBD语言

图2中,方框”&“为“与”运算,“>="为或运算,其真值表如下:

图3 真值表

FBD语言的编程过程类似于数字电路中用集成模块搭建电路,每个模块都有其自己的功能,根据控制需要,选用合适的模块,用“线”连起来即可。

三、语句表STL

STL是一种与汇编语言类似的助记符编程语言,用一个或几个容易记忆的字符来代表PLC的某种操作功能,每个语句由地址(步序号)、操作码(指令)和操作数(数据)三部分组成。语句表可以实现某些不易用梯形图或功能块图来实现的功能。玩过单片机的小伙伴再学习STL,可能会有些优势。图4为用STL编写的同一控制逻辑的程序。

图4 STL语言

其中,“A”为与运算,“AN”为与非运算,“O”为或运算,“=”为赋值运算。

用STL编程,需要对PLC的微观逻辑结构有相当的了解,比如:需要了解各种存储模式,熟悉各种寻址方式,同时还要能熟练使用各种编程助记符。可以说,能够熟练运用STL编程的小伙伴,siemens的PLC一定玩的相当的溜。驼子我的STL编程仍处在初学者阶段,犹记得去年用STL编写过一段光电测距仪的接口程序,不知死了多少脑细胞,实在是不堪回首。

四、三种语言,该如何抉择?

1、三种语言互相转换

在STEP7中,可以通过菜单选择,在三种语言中相互切换显示。如图5所示。

图5 LAD、FBD、STL切换显示

当然,通常LAD和FBD直接可以互相切换,LAD、FBD也可以转换为STL语言,但STL却不一定可以转换为LAD或FBD语言。

2、三种语言的优劣比较

LAD是最常用的PLC编程语言,其形象、直观,稍懂电气的人就能很快上手,而且目前市面上几乎所有的PLC都支持LAD编程,一通百通。其在“继电器或接触器型”逻辑功能中应用比较好,但随着STEP7中集成的程序功能单元越来越多,LAD语言写出的程序多少有点“不伦不类”。如图6所示,程序单元“CMP>=D”在FBD程序中,以“块”的形式显示,与其他单元一样;但在LAD语言中,仍以“块”的形式显示,与其它“触点单元”放在一起显得有点格格不入,虽然不影响逻辑,但看起来不工整。

图6 FBD、LAD程序对比

FBD语言写出的程序,个人认为逻辑性较强,在编程过程中,可以根据被控对象的控制逻辑,“轻易”的捋清程序逻辑,编程就会轻松许多。同时,STEP7提供了大量的、功能各异的“程序逻辑单元”,仅需要简单的拖动,就能实现编程。

STL接近于汇编语言,起点较高,不容易掌握。但在一些需要对硬件操作的时候,比如:驼子曾经编写过的激光测距仪的接口程序,就不得不用到STL语言了。

浅析PLC几种常用的编程语言

大家都知道学习某种新知识,技巧跟方法是关键的。正如新手刚开始接触PLC,它的软件编程语言与一般计算机语言相比,具有明显的特点,它既不同于高级语言,也不同于一般的汇编语言,它既要满足易于编写又要满足易于调试的要求。早期的PLC仅支持梯形图编程语言和指令表编程语言,现根据国际电工委员会制定PLC编程支持的语言包括以下五种:梯形图Delete(LD)、指令表Delete(IL)、功能模块图Delete(FBD)、顺序功能流程图Delete(SFC)及结构化文本Delete(ST)。

一、梯形图语言(LD)梯形图语言是PLC程序设计中最常用的编程语言,它是与继电器线路类似的一种编程语言。因为从事电气人员对继电器控制较为熟悉,所以梯形图编程语言应用的程度上比较广泛。特点:1、具有直观性、形象性及实用性,与电气操作原理图相对应;2、梯形图程序与继电器控制系统相类似,电气从业人员易于掌握;3、梯形图使用的继电器是由软元件来实现的,使用和修改较为灵活方便

二、指令表语言(IL)指令表编程语言是与汇编语言类似的一种助记符编程语言,和汇编语言一样由操作码和操作数组成。特点:1、常采用助记符来表示操作功能,具有容易记忆,便于掌握;2、与梯形图有对应关系,在PLC编程软件下可以相互转换有部分软件没有这个功能(如:三菱的GX Works2)3、便于操作,在手持编程器的键盘上采用助记符表示,在无计算机的场合可实现编程设计。

三、功能模块图语言(FBD)功能模块图语言是与数字逻辑电路类似的一种PLC编程语言,对于有数字电路基础的人比较容易掌握。特点:1、以功能模块为单位,分析理解控制方案简单容易2、功能模块是用图形的形式表达功能,直观性强,有较好的易操作性3、对规模大、由于功能模块图能够清楚表达功能关系,使编程、组态及调试时间大大减少

四、 顺序功能流程图语言(SFC)顺序功能流程图语言是为了满足顺序逻辑控制而设计的编程语言。具有图形表达方式,能较简单和清楚地描述并发系统和复杂系统的所有现象,在模型的基础上能直接编程,所以得到了广泛的应用。特点:1、以功能为主线,按照功能流程的顺序分配,条理清楚,便于对用户程序理解;2、对大型的程序可分工设计,采用较为灵活的程序结构,可节省程序设计时间和调试时间;

五、结构化文本语言(ST)结构化文本语言是用结构化的描述文本来描述程序的一种编程语言,它是类似于高级语言的一种编程语言。在大中型PLC系统中,常采用结构化文本来描述控制系统中各个变量的关系,完成所需的功能或操作。特点:1、采用高级语言进行编程,可以完成较为复杂的控制运算;2、要求较高,需要有一定的计算机高级语言的知识和编程技巧;3、因为直观性和操作性较差,常用于其他编程语言较难实现的用户程序编制。

相关问答

PLC编程语言中LD/IL/FBD,ST/SFC/CFC的全称是什么?望高手指点?

LD:laderdiagramIL:这个又叫STL,statementlist而IL应该是日系叫法,I什么list的意思吧,没仔细研究过日系的PLC。FBD:FunctionBlockd...

plc最直接的编程语言是?

一、梯形图语言(LD)梯形图语言是PLC程序设计中最常用的编程语言,它是与继电器线路类似的一种编程语言。因为从事电气人员对继电器控制较为熟悉,所以梯形图编...

plc基本编程模式?

PLC编程有五种标准化编程语言:顺序功能图(SFC)、梯形图(LD)、功能模块图(FBD)三种图形化语言和语句表(IL)、结构文本(ST)两种文本语言。最常用的是梯...PLC...

plc编程语言的国际标准是哪个?

plc编程语言的国际标准是IEC61131。PLC有五种标准化编程语言:顺序功能图(SFC)、梯形图(LD)、功能模块图(FBD)三种图形化语言和语句表(IL)、结构文本(ST...plc...

西门子300的LADSTL和FBD是什么的?

是编程语言的名字或者说编程语言的格式,也就是编程方式。西门子300的编程软件STEP7支持七种编程语言分别是:LAD,STL,SCL,CFC,GRAPH,HIGRAPH,FBD。其中标准安装...

plc控制方式选择?

在选择PLC控制方式时,需要考虑到控制系统的稳定性、可靠性、灵活性和安全性等因素。一般情况下,可以选择基于传统的Ladder逻辑控制方式或者使用高级编程语言...

plc的编程方式有几种?

PLC的编程方式有梯形图语言(LD)、指令表语言(IL)、功能模块语言(FBD)、顺序功能流程图语言(SFC)、连续功能图(CFC)、结构化文本语言(ST)。但现目前在工业运用...

梯形图的特点,为什么梯形图能成为PLC第一编程语言?

一:从梯形图结构上讲,完全就是对电路的进行形象简化,利于初学者对程序进行编写与解读;二:日系PLC由于其性价比与稳定性,长久以来占领了大多数市场,而日系...

scl编程语言只能用m区吗?

是的,SCL编程语言只能使用M区。这是因为SCL是一种结构化控制语言,主要用于S7-300/400PLC上,而在该PLC中,M区是用于存储程序数据和使用长字(DWord)类型的内...

plc颜色传感器编程实例?

1.首先,需要将颜色传感器连接到PLC的输入端口,并确保已正确配置PLC。2.在PLC的编程软件中,创建一个新的程序,并为其命名。3.创建一个输入变量,将其与颜...

 dvd 刻录  世界小姐张梓琳 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2025  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

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

热线

188-0000-0000
专属服务热线

微信

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