西门子200PLC中顺序控制指令的简单讲解
西门子200的PLC编程软件Micro/win中是配置有实现顺序控制功能的指令的,因为我个人也也很少用,最近有个项目想使用这个方法,就研究了一下,顺便给小伙伴们分享一下。其实,我最终还是使用的很多set/reset指令去做的程序,不过喜欢用哪种方式,还是看个人的爱好,不过还是发出来让想用的朋友们了解一下!
先看一下西门子200中顺序控制的指令吧:
顺序控制的3个指令
如图,红框中是梯形图编程时候指令树下的程序控制指令中的3个指令。来看一下这3个指令的大概意思:
SCR是装载顺序继电器,作为顺序控制段的段首,也就是开始顺序控制。
SCRT是转换,就是条件转换的意思,从一个顺序继电器转换到另外一个顺序继电器。
SCRE是结束顺序控制。
指令大概了解了,就来看一段程序吧:
程序的第一段监控截图
该图片上网络1我用M0.0去置位S0.0,目前大家看到S0.0不为1,是因为被网络5的SCRT指令转换了,S0.0就自动被复位为0了。从下边的图片可以看到, S0.0为0,而S0.1为1了,就是已经转换了。
程序执行第一段时的监控状态图
从这个图片上还可以看到更多的信息,就是M10.0为1,而Q0.0不为1; Q0.0不为1,所以T1就没有再计时了。原因是什么呢?就是前一个图片上我写的,S0.0=1的时候,SCR和SCRE那段之间的程序才能被执行;现在S0.0=0了,中间的这段程序就不能被执行了。--这就是和300PLC或者其他PLC中顺序控制的作用一样的地方了。
接着往下边看程序:
如下图,上边说SCRT转换指令使得S0.0被复位,而S0.1被置位,就使得网络7和网络9之间的程序处于可以执行状态。我把M0.2设置为1,Q0.1和Q0.2就输出了。
当S0.1为0的时候,即使M0.2的值为1,Q0.1和Q0.2依然是无法输出的。
程序的后一段监控截图
程序讲完了,再来说一些使用中的约束
约束1: 在西门子200micro\win中编程的时候,一般是要求母线和后边的指令之间是必须要有一个接点指令的,所以我们常常要使用SM0.0。但是,SCR和SCRE指令是个例外,以及LBL和NEXT指令,它们可以直接接母线,而中间不能有其他指令,否则将出现编译错误!如下图:
SCR和SCRE指令必须直接接母线
约束2: 这3个顺序控制继电器指令的操作数只能是S区,注意不是SM,如果你指定的操作数是V区或者M区,总之不是S0.0这样的顺序控制继电器,直接会显示红色波浪线提示错误。
约束3: SCRT转换指令应该写在前一个顺控的SCRE结束指令之前,否则会出现非致命错误,导致无法下载。这个是可以理解的,因为如果前一个顺控结束了,还何谈转换呢?
如下图,我把结束指令SCRE本应该写在网络7的,提取到网络5,就是在SCRT指令之前。
SCRT指令如果在SCRE指令之后程序无法下载
在下载的时候,就出现了如下的错误,这错误是和未下载之前在输出窗口输出的编译错误是不同的。这种情况是编译时候输出窗口没有报错,而下载的时候报错的!
下载是提示非致命错误
至此,文章就结束了,实现顺序控制的编程方法多种多样,但是主流的PLC都配置有顺序控制的专门指令,西门子200也不例外。希望通过本文,能让想使用顺序控制专用指令的小伙伴对西门子200PLC中的编程有更多了解。
感谢阅读,如果觉得对你有帮助请关注,如果有问题请关注+留言,谢谢!
PLC采用顺序功能图设计法,这样的程序设计才是对的
前面的文章小编给大家说过常用的程序设计方法包括逻辑设计法、移植转换设计法、顺序控制设计法、经验设计法 等这几种,上一次也介绍了其中的移植转换设计法,这一篇文章就介绍一下顺序控制设计法吧。
PLC多数是靠移植设计法进行程序设计,你认同吗?
如何采用经验设计法,进行PLC程序设计?
什么是PLC逻辑设计法?现在知道还不算太迟
在讲顺序控制设计法之前,我们先了解一下什么是顺序控制。
如果一个控制系统可以分解成若干个独立的控制动作,且这些动作必须按照一定的先后顺序执行才能保证生产过程的正常运行,这样的控制系统就称为是顺序控制系统。
比如说在机械行业,典型的机械手控制就可以利用顺序控制的方法来实现控制。
我们所说的顺序控制设计法就是针对顺序控制系统的一种专门的设计方法,我们以西门子S7-200 SMART PLC为例介绍一下,我们可以采用三种程序编写方法实现控制系统要求,包括使用逻辑指令、使用置位/复位指令、使用SCR/SCRT/SCRE指令,这些方法都可以设计出顺序功能图及其对应的梯形图程序。
我们以冲床动力头进给运动控制为例来介绍一下采用以上三种方法的编程。
控制要求:某专用冲床动力头的进给运动一个周期包括快进、工进和快退3步,动力头的初始状态停留在最左边,限位开关I0.1状态为1,启动按钮为I0.0,Q0.0~Q0.2控制3个电磁阀依次控制快进、工进和快退3步。
按下启动按钮,动力头的运动如图所示,工作一个循环后,动力头返回并停留在初始位置。
一、使用逻辑指令实现
首先根据控制要求画出顺序功能图,M0.0是初始状态,M0.1是快进工作状态步,M0.2是工进工作状态步,M0.3是快退工作状态步。
I0.1是快退限位开关,动力头的初始状态停留在最左边即I0.1接通,并按下启动按钮I0.0时,开始执行快进Q0.1动作,到I0.2快进限位时执行工进Q0.2动作,到I0.3工进限位时执行快退Q0.3动作,快退到快退限位I0.1时进行循环。我们根据顺序功能图可以快速地编写出梯形图程序。
二、使用置位/复位指令
使用逻辑指令实现的顺序功能控制同样也可以利用置位复位指令实现,该方法是以转换条件为中心的编程方法,所谓以转换条件为中心,指的是同一种转换在梯形图中只能出现一次,而对辅助继电器可以重复进行置位和复位。
我们以初始状态步M0.0为例,如果步M0.0要实现转换,必须满足两个条件,首先M0.0是活动步,所以我们可以用SM0.1置位启动初始状态M0.0,其次是转移条件满足,即按下启动按钮I0.0接通,并且动力头的初始状态停留在最左边即I0.1接通,所以将M0.0和I0.0、I0.1的常开触点串联在一起,当条件都满足时,可以做置位M0.1,转移到M0.1快进工作步,同时把上一个状态M0.0复位掉。其他工作步也是按照同样的方法去做即可。
三、使用SCR/SCRT/SCRE指令
S7-200 SMART PLC提供有专用的顺序控制指令SCR/SCRT/SCRE,我们可以利用这些指令实现,这其实是由多个SCR程序段组成的,一个状态就是一个SCR程序段,而每个SCR程序段又包括了步的起始即SCR,驱动输出处理,转移条件SCRT,和步的结束即SCRE。
写程序的时候注意在SCR段中,用转移条件对应的触点驱动SCRT指令即可实现转移到下一个状态步。
这种方式跟前面的置位复位指令有所不同,这里我们将M0.0~M0.3的状态步换成了状态继电器S0.0~S0.3,前面的转移是用S置位指令,这里是使用SCRT指令。
以S0.0初始状态为例,首先是SM0.1置位S0.0激活初始状态,然后以SCR S0.0作为状态的起始,SCRE作为状态的结束,在其中间编写转移条件和转移方向,也就是下启动按钮I0.0接通,并且动力头的初始状态停留在最左边即I0.1接通,所以I0.0、I0.1的常开触点串联在一起,从而驱动SCRT S0.1,满足条件时即可以转移到S0.1状态步中去。
以上就是使用逻辑指令、使用置位/复位指令、使用SCR/SCRT/SCRE指令等几种不同的方法实现顺序控制系统程序的方法,你掌握了吗?没掌握的话赶紧收藏起来~
小白入门必懂PLC软件+干货包 重磅加餐
现在为你准备好了,这些曾经让你头秃、加班熬夜的技术干货!
PLC入门学习全流程、电工基础大全、电工进阶PLC、PLC例程、西门子工程师地图……
软件汇总
学习步骤
现在你还有什么可担心的呢?赶紧看领取方式吧~
相关问答
plc中ctu代表什么意思?
当CXX的当前值大于等于预置值PV时,计数器位CXX置位。当复位端(R)接通或者执行复位指令后,计数器被复位。当它达到最大值(32,767)后,计数器停止计数。plc...
ctu在程序中什么意思?
PLC编程指令:TONR有记忆接通延时增计数器(CTU)顺序状态转移指令:当SCRT指令的输入端有效时,一方面置位下一个SCR段的状态器,已便使下一个SCR段开...