西门子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控制指令,是中英文对照版的,希望能给大家日常工作中带来帮助。
1、LD( Load 装载 ) :动合触点
2、LDN( Load Not 不装载 ) : 动断触点
3、A( And 与 动合) : 用于动合触点串联
4、AN( And Not 与 动断 ) :用于动断触点串联
5、O( Or 或 动合 ) :用于动合触点并联
6、ON( Or Not 或 动断 ) : 用于动断触点并联
7、=( Out 输出 ) : 用于线圈输出
8、OLD( Or Lode): 块或
9、ALD( And Lode): 块与
10、LPS( Logic Push ) :逻辑入栈
11、LRD( Logic Read ) :逻辑读栈
12、LPP( Logic Pop ) :逻辑出栈
13、NOT( not 并非 ) :非
14、NOP( No Operation Performed ) : 无操作
15、AENO( And ENO ) :指令盒输出端ENO相与
16、S( Set 放置 ) : 置1
17、R( Reset 重置,清零 ) :清零
18、P( Positive) :上升沿
19、N( Negative) :下降沿
20、TON( On_Delay Timer ) :接通延时定时器21、TONR( Retentive On_Delay Timer ) : 有记忆接通延时定时器
22、TOF( Off_ Delay Timer ) :断开延时定时器
23、CTU( Count Up ) : 增计数器
24、CTD( Count Down ) : 减计数器
25、CTDU( Count Up/ Count Down ) :增减计数器
26、ADD( add 加 ) : 加注意
//ADD_I (_ I 表示整数)
ADD_DI( DI表示双字节整数)
ADD-R(R 表示实数)
它们都是加运算只是数的大小不同。
27、SUB( Subtract 减去,减少) :减
28、MUL( Multiply ) : 乘
29、DIV( Divide ) : 除
30、SQRT( Square root ) : 求平方根
31、LN( Napierian Logarithm 自然对数 ) : 求自然对数
32、EXP( Exponential 指数的 ) : 求指数
33、INC_B( Increment 增加 ) : 增1
//其中_B代表数据类型 还有W(字节)、DW双字后面几个都是这样的。34、DEC_B( Decrement 减少 ) : 减1
35、WAND_B( Word and 与命令 ) :逻辑与
36、WOR_B( Word or 或命令) : 逻辑或
37、WXOR_B( Word exclusive or 异或命令) :逻辑异或
38、INV_B( Inverse 相反 ) : 取反
39、MOV _B( Move 移动 ) : 数据传送
40、BLKMOV_B( Block Move 块移动) :数据块传送
41、SWAP( Swap 交换 ) : 字节交换
42、FILL( Fill 填充 ) : 字填充
43、ROL_B( Rotate Left 循环 向左) :循环左移位
44、ROR_B( Rotate Right 循环 向右) : 循环右移位
45、SHL_B( Shift Right 移动向左) :左移动
46、SHR_B( Shift Right 移动向右 ) : 右移动
47、SHRB( Shift buffer 移动缓存) :寄存器移位
48、STOP( Stop 停止 ) : 暂停
49、END/MEND( End /Mend ) : 条件/无条件结束
50、WDR( Watch dog reset ) : 看门狗复位
51、JMP( Jump 跳) :跳转
52、LBL( Label 位置 ) : 跳转标号
53、FOR( For 循环 ) : 循环
54、NEXT( Next 再下去) :循环结束
55、SBR( Subprogram Regulating子程序控制 ) : 子程序调用
56、SBR_T( Subprogram Regulating Take ) : 带参数子程序调用
57、SCR( Sequence Control 顺序控制 ) : 步开始
58、SCRT( Sequence Control Transfer 顺序控制转移 ) : 步转移
59、SCRE( Sequence Control End 顺序控制结束 ) : 步结束
60、AD_T_TBL( Add data to table 添加数据到表格中) : 填数据表
61、FIFO( First in First out 先进先出 ) : 先进先出
62、LIFO( Last in First out 后进先出 ) :后进先出
63、TBL_FIND( Table Find 表格查找 ) : 表查找
64、BCD_I( Binary Coded Decimal _I 二进制编码的十进制 ) :BCD 码转整数
65、I_BCD( I_ Binary Coded DecimaL ) :整数转BCD码
66、B_I( Bit to int ) :字节转整数
67、I_B( int to bit ) :整数转字节
68、DI_I( Double int to int ) :双整数转整数
69、I_DI( int to double int ) :整数转双整数
70、ROUND( Round 取整 ) : 实数转双整数
71、TRUNC( Trunc 截取 ) :转换32位实数整数部分(舍去小数取整)
72、DI_I(double int to int ) :双整数转实数
73、ENCO( Encode 编码) : 编码
74、DECO( Decode 译码) :译码
75、SEG( Segment decoder分断译码器 ) : 七段显示译码器
76、ATH( ASCII码 turn hex ) : ASCII码转16进制
77、HTA(Hexadecimal toascii) : 16进制转ASCII码
78、ITA( // int to ascii) : 整数转ASCII码
79、DTA( // double int to ascii ) : 双整转ASCII码
80、RTA( // real to ascii) : 实数转ASCII码
81、ATCH(//attach ) : 中断连接
82、DTCH( Depatch ) : 中断分离
83、HDEF( High speed counter definition ) : 高速计数器定义
84、HSC( High Speed Counter 高速计数器 ) :启动高速计数器
85、PLS( Pulse 脉冲 ) :脉冲输出
86、READ_ RTC( Read real time clock 读实时时钟 ) :读实时时钟
87、SET_RTC( Set real time clock ) : 写实时时钟
88、XMT( Transmitter ) : 自由发送
89、RCV( Receive 接收 ) : 自由接收
90、NETR( Net read 网络读 ) : 网络读
91、NETW( Net write 网络写 ) : 网络写
92、GET_ADDR( Get address 获取地址 ) : 获取口地址
93、SET_ADDR( Set address 设置地址 ) : 设定口地址
94、PID( Proportional Integral Differential 比例、积分、微分 ) :比例积分微分调节器。
——END——
相关问答
三菱plcdhscr指令详解?
三菱PLC中的DHSCR指令是用于将数据从一个寄存器复制到另一个寄存器的指令。它可以在不同的寄存器之间进行数据传输,包括整数、浮点数和位数据。该指令可以用于...
怎么设计用顺序控制指令SCR编写的舞台灯光的PLC控制?
西门子PLC顺序控制指令即西门子S7-200系列PLC控制指令,主要分为定义顺序段、段开始、段结束、段转移四个板块,详细简介如下:1、定义顺序段即定义一个顺序控...
西门子PLC顺序控制指令的简介?
西门子S7-200系列PLC提供了顺序流程的相关指令,即顺序控制继电器指令LSCR、SCRT、SCRE。LSCRn是标记一个顺序控制器段(SCR)的开始,n为顺序控制器S的地址,当n...
plc中ctutonrscrt表示啥?
PLC编程指令:TONR有记忆接通延时增计数器(CTU)顺序状态转移指令:当SCRT指令的输入端有效时,一方面置位下一个SCR段的状态器,已便使下一个SCR段开...
step7micro/win能绘制plc顺序功能图吗?
西门子200中是有顺序控制的专门指令的,但是你说的顺序功能图,可能西门子200的会和你期望的不大一样,但是,其实顺序控制的功能实现了,视图习惯不习惯,就不那...西...
PADS中这么多逻辑系列分别什么意思?
PADS中多逻辑系列意思是:ANABGAballgridarray球栅阵列封装BPFBQFCAPCAPACITOR电容器CFPCFP陶瓷扁平封装CLCCMOCONC...
屠宰场废料炼油设备产生的废气怎么处理?
在屠宰过程中难免会有牲畜剩余尸体腐烂的现象等,此类现象会导致屠宰厂产生一系列废气。其中废气包含氨气、硫化氢和硫醇等一系列恶臭气体,会对人体及周围环境...
西门子PLC,通过以太网给电脑画面传数据,电脑本地联接有发送...
楼主说的这个其实已经涉及到两台电脑和PLC通信的问题了。首先要用博途软件控制PLC,首先得用一台装有博途软件的电脑,通过网络或者编程电缆,连接到PLC上,然后打...
前辈们,有没有谁了解,巩义技术好的SCR电力调整器,SCR电力...
[回答]在切断电源后一段时间内。电力调整器的散热器,铜排等有可能处于高温状态,故请不要触摸,以免烫伤。w)端子,否则会造成端子发热而导致scr烧坏。负载y...
在线的资深人士在线等AI-3502MSCR三相电力调整器公司,SCR...
[回答]主要用于各种电加热装置的加热功率调整,既可以手动调整,又可以和电动调节仪表、智能调节仪表、PLC以及计算机控制系统配合,实现对加热温度的恒值或...