线下实训
HOME
线下实训
正文内容
plc顺序编程语句表 无论啥品牌的PLC,用这种编程方法来进行逻辑控制顺序控制都太棒
发布时间 : 2025-04-19
作者 : 小编
访问数量 : 23
扫码分享至微信

无论啥品牌的PLC,用这种编程方法来进行逻辑控制顺序控制都太棒

不管什么品牌的PLC,使用下面的方式来进行逻辑控制顺序控制,都是非常好的一种编程方法。既方便监控又可以随意跳转到哪一步。请改变一下我们的编程思维好么?我看那些人的所谓步进指令,还有大量的置位复位指令,非常不好阅读,也不好检查和更改。下面贴出利用三菱软件的编程图,其它品牌都一样可以采用(西门子更是如此)。

其实这就是ST编程里的ST语言的CASE语句的梯形图转换。

所以很多人说什么ST语言只适用于计算,不适用于逻辑控制什么的,我就呵呵了。ST语言也一样适用于逻辑控制,只是看各位编程人员擅长于使用哪种编程语言了。下面再贴出上述编程方式的ST语言下的控制:

下面是监视的过程:

这和梯形图下的顺序控制方式是一样的。

这种控制方式比那些所谓的置位复位要方便很多。建议从日系编程学习入门的朋友转变一下思维,摒弃那种编程方式!

看看网友的讨论:

莫头脑 said:

我看那些人的所谓步进指令,还有大量的置位复位指令,非常不好阅读也不好检查和更改 那他们的程序是否正常运行……

965528555 said:

正常运行是一回事,是否更具有阅读性或者说,是否愿意接受更好的表达方式那是另一回事。

1530694073 said:

我表示欧美系都是不步进顺序逻辑,可读性很强

cvlsam said:

真正的日系编程思维是这样的,当然译码编码指令其他PLC厂牌中也有。

D500就是显示运行到哪一步,M寄存器还可以在人机界面上做个跑马灯演示。

Good Luck~

gk_0 said:

我觉得置位复位挺好用的呀,也很直观呢。

楼主例子中大量使用比较、运算指令,如果几千步以上,那么扫描时间是否会比位指令长很多呢?

965528555 said:

这里首先我们明白一个问题,即不管你的程序是多少步,PLC的扫描永远是从程序的首端扫描到END,这个过程是一样的。

而PLC在扫描某一行时,通过你所说的比较运算指令即可判断该行是否成立从而是否继续扫描该行后面,反而可以节省时间,即该条件不满足就可以跳到下一个。而置位复位则不一样了,每行都得扫描完才能下一个。

其实是更节省PLC的扫描时间,比如CASE语句,第一行就会判断Step等于几,然后就直接跳到等于几的那行去扫描了。假如是一万步十万步,这中间就节省了非常多的扫描时间,但是置位复位就没这优势了。必须逐行扫描以免错过任何一个。

bnnyygy said:

一直都是这样写顺序控制的。

欧姆龙ST语音写的,E文不好,变量都是中文。

965528555 said:

非常好,也感谢分享。但是建议最好是使用CASE语句来写你这个程序部分,而不是大量的IF语句。

273708367 said:

感觉越复杂可读性越差,扫描周期也越长,每个人习惯不同改变也不是一朝一夕了。

chi1225 said:

每一步前面都要搞一个比较指令,感觉不好看,指令占的空间又大,发现还是用DECO(解码指令)比较好。。

965528555 said:

那是因为三菱的软件一显示注释就显得大,而且一个比较指令占用的空间长,将近三四列,西门子根本不存在这个问题,人家的一个比较指令就占用一列。

MIC小赖 said:

这个模式从06年的台湾东捷的机台上就已经看到了,目前我们这动作部分管控基本都是这样写的。

965528555 said:

有一种论调很不好,即“我们都习惯那么久了,改变不是容易的事,要么就是你说的也不好用,虽然我没用过但肯定不好用”。

这样想法不太好,之前我也是从日系入门学习的。后来我一学习西门子的时候我也是内心抵制它,一点也不好学,思想转不过弯来,不好用。后来我想我还是去熟悉它我才好判断它到底是不是好用,如果我熟悉它了它确实不好用我就舍弃它,用我认为好用的。

结果经过我的比较,发现西门子的PLC确实好用,那么我就接受它。

就文中所说的编程方法来说,我之前也是采用什么置位复位的方式,后来我看到国外的人是这样写,包括西门子博途软件的官方库写法,我觉得我可以先接受它然后运用一下,来写个实例,看是不是更方便,如果是,我接受,如果不是,我就舍弃。

有一次有朋友说西门子的触摸屏或WINCC的画面编辑用面板技术在某些场合非常方便。于是我就去了解它,当我学习并用面板技术做了一个HMI面面(比如现场十套控制几乎相同的过程画面),我觉得确实不错,那么我就去接受它。

所以如果在工作中有一种别人推荐你而你没有使用过的方式方法,请不要先拒绝,拿你那些老习惯来安慰自己来躲避。应该先尝试一下,然后对比一下,也许你会有所收获呢?或者说你可以试完了再骂人家这SB,不行啊,还是没我之前的习惯用法好。

yinguiyao said:

有步进指令的用步进指令,没有的就用你这个方法,如西门子200 200smart就没有步进指令。

用步进指令好处是不用考虑时序的问题,同一时间段只有指定步被扫描,而你这个方法要注意同一扫描周期相邻两步不被同时执行,例如在每步都加时间延时或者其它的办法。

我发过一个贴子,参考:

http://bbs.gkong.com/archive.aspx?id=463847

cvlsam said:

200中有步进指令,只是中文翻译成顺序继电器指令了。

同一个扫描周期相邻两步并不会同时执行,因为PLC扫描机制决定了顺序执行。

西门子中的Graph并不是步进指令,而是顺序功能,也就是其他厂牌中的SFC,之所以使用Graph,是因为在西门子的PCS7系统中,还存在SFC编程方式,为了区别,就如同西门子的ST语言翻译成SCL,因为和其语句表STL容易冲突。

Good Luck~

zhujilucj said:

我大部分用的还是置位复位指令,有少数几个程序也在用这种方法。这个方法特别适合跳跃分支多的程序。

微信网友也加入讨论:

Electric epoch said:

本人很赞同作者的编程方法,如果是结构化用这种方式会更好

启海 said:

不管作者的方式是否适合,但是有讨论有比较肯定能进步。

代奇伟said:

我一般写时序是通过移位指令写

William said:

我也是用这种方式写的.CASE语句里面写定时器需要注意一些。

耿彪 said:

使用DECO指令完美解决顺序控制

优态 said:

st局部运算用还可以,全用阅读性不好自己都会忘更别说其他人,这东西和高级语言还是有太大差距,好的程序不是有多花里胡哨,稳定,可阅读性才是王道。高级语言也是如此。

上虞宁 said:

其实St挺好使,之前不习惯现在戒不掉

吕·D·Will said:

case写流程很好,但是在日系个别plc里资源消耗非常大

如果你也想加入讨论, 链接在此 http://bbs.gkong.com/archive.aspx?id=470284

温馨提示:本文来源于中华工控网工控论坛(本号)网友和讨论,转载请注明出处。

指令表(IL)、梯形图(LD)都是PLC 的常用编程语言?图文详解

PLC 是一种工业控制计算机,其软件必然是通过编程语言来编辑的。

目前 PLC 常用的编程语言有梯形图、指令语句表和顺序功能图。功能块图和结构文本高级语言则存在于某些PLC中。

一、指令表(IL)

指令语句表也叫助记符或列表,是基于字母符号的一种语言,类似于计算机的汇编语言。

这种编程语言是用一系列操作指令组成的 语句表将控制流程描述出来,并通过编程器或者编程软件送到PLC中去,指令语句表是由若干条语句组成的程序,语句是程序的最小单元。一个操作功能是由一条或若干条语句来完成的。PLC的操作指令系统比计算机的汇编语言简单很多。但表达形式类似。也是由地址、操作码和操作数三部分组成,关于FX2N的具体操作指令待讲解程序编制时再作介绍。

下图为—指令表程序(FX2N PLC)

若果把指令表的逻辑关系写成逻辑表达式则为:

Y0=(X0+Y0)* X1

不同品牌的PLC其指令表的形式是相同的,但是指令的符号表示,各编程元件表示则相差很大。

指令表编程语言是最基本的程序设计语言。它具有容易记忆便于操作的特点,它可以用最简单的编程工具—手持编程器进行编程。它与其他语言多有一一对应的关系,而且,一些其他语言无法表达的程序用它都可以进行表达。它的缺点是阅读困难,其中的操作功能很难一眼看出,不便于工控人员之间进行交流和沟通

早期,在编程软件普及前一般都是先用梯形图设计程序,然后再手工编译成指令表程序,最后用手持编程器将程序送入PLC。现在,编程软件已经普及,在编程软件上,我们只要编好梯形图程序,软件会自动编译成指令表程序。所以,我们今后重点是梯形图编程语言的学习和编程软件的操作。对指令表编程语言则不作进一步讲解。但是,PLC的各种操作指令的学习则是必不可少的编程基础。

二、梯形图(LD)

梯形图编程语言习惯上叫梯形图。其源自继电控制系统电气原理图的形式,也可以说,梯形图是在电气控制原理图上对常用的继电器,接触器等逻辑控制基础上简化了符号演变而来的,

由于PLC在结构上,工作原理都和继电器控制系统截然不同,因而他们之间必定存在着许多差异。初学者可以通过继电器控制电路图切入梯形图,但一旦入了门,则必须完全离开继电控制电路图

下图为根据指令表这一节中的指令表程序所画出的梯形图,其功能和指令表程序一样,但理解却容易多了,电工师傅们一看就知道,这是一个电动机起、保、停控制程序

和指令表编程语言一样,尽管都是梯形图,但各个厂家PLC对梯形图的画法还是有差别的。对最基本的逻辑控制指令差别并不大,但对功能指令(实现数据操作的指令)的表达上差别非常大。这也是为什么学习三菱PLC后再学习西门子S7-300/400,很多人感到不好学的原因之一。

梯形图语言优点非常特出,形象、直观、易学、实用,电气人员容易接受,是目前所有PLC都具备的编程语言,也是用的最多的一种PLC编程语言。

(未完待续,下一节内容为顺序功能图、功能快图、结构文本),电工小琦原创,未经授权不得转载,违者必究!

往期优秀文章回顾:

电气工程师的PLC基础应用实例:S7-200 SMART如何实现喷泉控制?

相关问答

plc语句表的顺序?

PLC语句表的通常顺序如下:1.输入语句:包括读取传感器输入、按钮输入等。2.条件语句:根据输入值或其他条件判断是否执行下一步操作。3.输出语句:包括控制执...

s7-300plc语句表例子?

您好,以下是S7-300PLC语句表的示例:指令|语法|说明---|---|---LD|LDI0.0|加载输入I0.0的状态AND|ANDI0.0,I0.1...

西门子PLC每个语句是怎么开始的,是怎么结束的?-盖德问答-化...

ob1里程序循环扫描晕,我问的可不是这个呀。建议你看看梯形图指令是从左到右从上到下对于语句表格式类似于汇编语言

plc编程语言有哪些?

PLC编程语言主要包括以下几种:1.LadderDiagram(梯形图):是PLC最常用的程序设计语言,采用电气线路图的形式表示控制逻辑,能够可视化控制方案,易学易懂。...

属于PLC编程语言有哪些?

常见的PLC的编程语言通常都有梯形图(LAD),语句表(STL),和功能图块(FBD)这三种,当然有的PLC中还存在SCL,ST,GRAPH等编程语言,但是这些就没有前边说的3种更...常见...

plc序号是什么?

PLC序号是指在PLC程序中给每个步骤或操作分配的唯一数字标识符。它通常是一个整数,用于识别和跟踪程序的不同部分。PLC序号在程序编写和调试过程中非常重要,因...

PLC梯形图转换指令语句表(三菱FX系列)?

1、打开三菱plc的主界面,通过文件那里的打开选项载入梯形图。2、下一步,需要在菜单栏中点击视图按钮。3、这个时候,找到工具栏并选择STL这一项。4、这样一...

有没有人把三菱PLCst编程中for循环语句详细说一下?

灯泡之光!连个for循环都不会用,也不知道谁给的勇气在我面前指点江山自以为是!!果真是知识越贫乏,越有一种莫名其妙的优越感!!灯泡之光!连个for循环都不会用...

PLC编程语言中的基本符号?

您好,在PLC(可编程逻辑控制器)编程语言中,有一些基本的符号用于表示不同的操作和逻辑。以下是一些常见的基本符号:1.圆括号:用于控制运算的优先级和改变...

plc编程语言有哪些?

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

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

QQ

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

热线

188-0000-0000
专属服务热线

微信

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