五、第3章(2) 位逻辑指令_第1页
五、第3章(2) 位逻辑指令_第2页
五、第3章(2) 位逻辑指令_第3页
五、第3章(2) 位逻辑指令_第4页
五、第3章(2) 位逻辑指令_第5页
已阅读5页,还剩62页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

3.3位逻辑指令学习PLC编程的2份重要资料:S7-200操作手册,软件帮助。编程方式:梯形图、指令表、功能块图,推荐使用梯形图。PLC通过I点与外部控制信号连接,Q点与外部负载连接,而输入对输出的控制也就是I对Q的控制,是通过编程实现的。编程中各类元件对应PLC存储单元,各存储单元以2种形式在程序中体现:触点、线圈,触点控制线圈。PLC梯形图语言的编程原则1、梯形图由多个梯级组成,每个线圈可构成一个梯级,含多条支路,每个梯级代表一个逻辑方程;2、梯形图中的继电器、触点、线圈不是物理的,是PLC存储器中的位(1=ON;0=OFF);编程时常开/常闭触点可无限次引用,但线圈输出只能是一次;3、梯形图中流过的不是物理电流,而是“概念电流”--“能流”,只能从左向右流动;4、用户程序的运算是根据PLC输入/输出映象寄存器中的内容,逻辑运算结果可以立即被后面的程序使用;5、PLC的内部继电器不能做控制用,只能存放逻辑控制的中间状态;6、输出线圈不能直接驱动现场的执行元件,通过I/O模块上的功率器件来驱动。S7-200指令系统按功能分,共有19类位逻辑指令 定时器指令 计数器指令程序控制指令 子程序指令 中断指令比较指令

高速计数器指令 脉冲输出指令

传送指令

数字运算指令 移位和循环指令字符串指令 转换指令 逻辑操作指令表指令 时钟指令 通讯指令编码和解码指令指令系统2.功能块、指令盒1.继电器触点线圈——()Enable输入参数IN1IN2N输出参数OUT功能数据类型地址条件长度EN操作数形式:3.3.1位逻辑指令简介位逻辑指令是二进制变量的指令,即:对触点和线圈进行运算操作的指令。1.触点:对二进制变量的状态进行检测,检测的结果用于位逻辑运算;

2.线圈:二进制变量状态的定义操作,其状态根据它前面的逻辑运算结果而定。触点--开关线圈--指示灯为1时将灯点亮,为0时灯灭开关控制灯--触点控制线圈。常开触点--常开开关,为0时断开,为1时闭合;常闭触点--常闭开关,为0时闭合,为1时断开;PLC中的位就是二进制变量,一个二进制变量既可以作为触点,也可以作为线圈。3.3.2基本位逻辑指令逻辑关系梯形图指令表I0.0I0.1LD I0.0A I0.1= Q0.0LD I0.0O I0.1= Q0.0LDN

I0.1= Q0.0LDI0.0NOT=Q0.0与或非ANDORNOT当I0.0与I0.1

都“ON”时,则输出Q0.0

“ON”(1)。当I0.0

或I0.1

“ON”时,则输出Q0.0为“ON”(1)当I0.1

“OFF”时则输出Q0.0

“ON”(1)Q0.0I0.0I0.1Q0.0Q0.0I0.1LD:从数据区读取位信息,位单元为1时,常开触点闭合,常闭触点打开。反之触点复位。NOTQ0.0I0.0一、单触点与、或、非注意:触点的串并联指令只能是单个触点与别的触点或电路串并联。AI0.2是与图中A点处的结果(即X0与X1的结果)相或,而不是与I0.1相或。I0.0I0.2I0.1LD I0.0A I0.1O I0.2= Q0.0例:Q0.0逻辑关系梯形图助记符LD I0.0O I0.1LD I0.2O I0.3ALD= Q0.0LD I0.0A I0.1LD I0.2ANI0.3OLD= Q0.0当“I0.0

或I0.1”与“I0.2

或I0.3”

都“ON”时,则输出Q0.0

“ON”。块与ALD(AndStack)块或OLD(OrStack)当“I0.0

与I0.1”或“I0.2

与I0.3非”

“ON”时,则输出Q0.0

“ON”。I0.0I0.1I0.2I0.3Q0.0I0.0I0.2I0.1I0.3Q0.0注意:读指令表时,每个块从LD(LDN)开始,在下一条LD(LDN)之前结束,再看各块之间的串并联关系。二、块与、块或已知下图中的语句表程序,画出对应的梯形图。

1、分析项目要求

输入设备:起动按钮SB1和停止按钮SB2,发出用户的起动和停止命令;FR触点用作电机的过热保护。输出设备:接触器KM线圈案例1:电机的启保停与过载保护

2、正确选择输入输出软元件

一个控制信号对应一个输入元件I,一个负载对应一个输出元件Q。

分配I/O地址,填写接口电路表

一个输入设备原则上占用一个输入点,一个输出设备原则上占用

一个输出点。停止按钮SB1------I0.0;启动按钮SB2-----I0.1;FR触点------------I0.2;接触器KM--------Q0.0;

3、画出输入输出接线图将选择的输入输出设备和分配好的I/O地址一一对应连接。(多种方案)例如:工程案例一:子项目11LQ0.0Q0.1Q0.2Q0.31MI0.0I0.1I0.2I0.3KMFRSB1SB24、编制梯形图程序注意绘制梯形图的原则:从左到右,从上到下,一个梯级只能有一个输出线圈。工程案例一:子项目15、填写符号表6、编译程序,写出指令表7、下载程序,调试(仿真)案例1讲解:电机启保停、过载保护控制继电器控制电路图I/O分配:I0.0:停车I0.1:启动Q0.1:KM梯形图:语句表LDI0.1OQ0.0AI0.0=Q0.0启动优先停止优先Q0.0I0.0Q0.0I0.1(1)I/O分配决定PLC的端子接线图I/O分配:I0.0:停车I0.1:启动Q0.1:KM(2)停止设计-不同外部器件决定不同编程Q0.0I0.0Q0.0I0.1Q0.0I0.0Q0.0I0.1(3)电机保护设计-不同外部连接方式决定了编程不同练习:编写上面三种接线图对应的程序(梯形图、指令表)例怎么办?I0.1M100Q0.2M101Q0.1Q0.3M102三、堆栈指令--入栈、读栈、出栈对于多重输出电路,需采用堆栈操作,S7-200有一个9位的堆栈。1.逻辑入栈(LogicPush,LPS):将多层分支点压入堆栈,原栈中的数据依次向下一层推移,栈底值被推出丢失。2.逻辑读栈(logicRead,LRD):指令将堆栈中第2层的数据复制到栈顶(读出)。第2~9层的数据不变。3.逻辑出栈(LogicPop,LPP):将栈顶值取出,原栈中的数据依次向上移动一层。4.装载堆栈(LDSn):将第n层的值复制到栈顶,其他数据依次下移一层。(很少用)堆栈指令应用例1(一层栈例)LPSLRDI0.1M100Q0.2M101Q0.1Q0.3M102LPP

LDI0.1LPSAM100=Q0.1

LRDAM101=Q0.2

LPPAM102=Q0.3堆栈指令应用例2(一层栈,栈与块嵌套)LPSLPPI0.1I0.5Q0.2I0.4Q0.1Q0.3I0.3I0.2M0I0.0

0LDI0.11LPS2LDNI0.23AM04OI0.0

5ALD6=Q0.17LPP8AI0.39=Q0.210LDI0.411OI0.512ALD13=Q0.3I0.001234LDALPSA=56=LPPQ0.078910LDLPSA=111213LPPA=I0.0I0.1I0.2Q0.0Q0.1I0.3I0.4Q0.2I0.5Q0.31415161718LDLPSA=LRD1920=A21222324LRDA=LPP2526A=I0.6I0.7Q0.4I1.0Q0.5I1.1I1.2Q0.6Q0.7Q0.1I0.1I0.2I0.3I0.4Q0.2I0.5Q0.3LPPI0.6I0.7LPSQ0.4I1.0Q0.5LRDI1.1Q0.6I1.2Q0.7LRD步序指令数据LPSLPPLPS母线LPP堆栈指令应用例3(一层栈)例4:堆栈嵌套(二层栈)I0.001234LDLPSALPSA56LPP=Q0.078A=I0.0I0.1I0.2Q0.0I0.3Q0.1910111213LPPALPSA=1415ALPP16=I0.4I0.5I0.6Q0.3I0.1I0.2LPSQ0.2I0.3Q0.1Q0.2Q0.3I0.5I0.6I0.4LPPLPSLPPLPSLPP步序指令数据第一层栈第二层栈堆栈指令应用堆栈指令的说明LPS、LRD、LPP指令无编程元件。LPS、LPP指令成对出现,LRD在中间出现。LRD指令可有可无,也可有两个或两个以上。堆栈可以嵌套,最多8个。堆栈存储器的操作规则:先进栈的后出栈,后进栈的先出栈。四、沿触发(跳变触点指令)上升沿(正跳变指令):检测到一次正跳变(由0变1)时,后面的逻辑状态接通(为1)一个扫描周期。下降沿(负跳变指令):检测到一次负跳变(由1变0)时,后面的逻辑状态接通(为1)一个扫描周期。仅在一个扫描周期内有效。指令助记符:正跳变-EU,负跳变-ED,无操作数;

梯形图编程指令:PNPNI0.5I0.4M1.5M3.2LDI0.5EU=M1.5LDI0.4ED=M3.2五、置位、复位指令具有记忆和保持功能经常配合沿指令使用一般,在一个程序中有了一个置位指令,必须有一个复位指令将地址复位。PNI0.0I0.1V2.0V2.0S13R2LDI0.0EUSV2.0,13LDI0.1EDRV2.0,2案例2按钮控制灯的开、关设计要求:

1.5个按钮控制3个灯的开、关。(按钮是自复位的)

2.I0.0控制L1灯开,I0.1控制L1灯关。

3.I0.1和I1.0都可以控制L2灯开。

4.当L1灯亮后,按下I1.1,L3灯亮。5.I1.2关掉所有灯。画出接口电路,写出程序,仿真调试。输入按钮SB1I0.0SB2I0.1SB3I1.0SB4I1.1SB5I1.2输出电灯L1Q0.1L2Q0.2L3Q0.3I/O分配表接口电路图梯形图指令表LDI0.0

OQ0.1

ANI0.1

ANI1.2

=Q0.1

LDI0.1

OI1.0

OQ0.2

ANI1.2

=Q0.2

LDI1.1

OQ0.3

AQ0.1

ANI1.2

=Q0.3控制要求:1)5个按钮控制3个灯的开、关。(按钮是自复位的)

2)I0.0控制L1灯开,I0.1控制L1灯关。

3)I0.1和I1.0都可以控制L2灯开。

4)当L1灯亮后,按下I1.1,L3灯亮。5)I1.2关掉所有灯。若I0.0=1,I0.1=0,Q0.0=1;I0.0=0,I0.1=1,Q0.0=0;

I0.0=1,I0.1=1,Q0.0=1六、置位优先(SR)、复位优先(RS)指令

---RS触发器I0.0I0.1S1OUTSRRI0.0I0.1SOUTRSR1Q0.0Q0.0若I0.0=1,I0.1=0,Q0.0=1;I0.0=0,I0.1=1,Q0.0=0;I0.0=1,I0.1=1,Q0.0=0七、立即I/O指令—立即输入

(针对输入触点I)直接读取物理输入点(外设)的值到程序,不经过输入映象区,输入映象区的内容不更新,不依赖扫描周期,触点会随外设立即更新。指令助记符:LDI,AI,OI等立即I/O指令—立即输出

(针对输出线圈Q)执行立即输出指令时,则将结果同时立即复制到物理输出点和相应的输出映象寄存器,物理输出的状态不依赖扫描周期。指令助记符:=I,SI,RI等立即I/O指令—立即置位和复位指令须指出:立即I/O指令是直接访问物理输入输出点的,比一般指令访问输入输出映象寄存器占用CPU时间要长,因而不能盲目地使用立即指令,否则,会加长扫描周期时间,反而对系统造成不利影响。在普通指令与指令之间加入空操作(NOP)指令,不影响程序运行,只是增加扫描时间。在将程序全部清除时,全部指令成为空操作。为修改或追加程序时,减少步序号的变化,可使用NOP。很少应用。八、空操作指令—NOP

空操作正跳变负跳变能流到达取非触点时,能流就停止;能流未到达取非触点时,能流就通过。检测到每一次正跳变(信号后,让能流通过一个扫描周期的时间

检测到每一次负跳变信号后,让能流通过一个扫描周期的时间

取非输入映象寄存器I0.0输出映象寄存器Q0.0输出映象寄存器Q0.1输出映象寄存器Q0.2一个周期一个周期空操作指令(NOPN)不影响程序的执行。操作数N是常数0~255输出指令总结=输出=I立即输出S,N置位SI,N立即置位R,N复位RI,N立即复位注意:仅适用于输出线圈Q。水平不垂直---触点不能出现在垂直梯形图线上,如果有,应重新安排。线圈右边无触点左大右小,上大下小双线圈输出不可用----同一程序中同一元件线圈出现两次或多次,叫做双线圈输出,这时前面的输出无效,只有最后一次才有效。梯形图编程注意事项(a)不正确;(b)正确Q1354321245(b)Q1(a)2453水平不垂直线圈右边无接点(a)不正确;(b)正确OUTLDANDOR(a)OUTLDANDLDOLD串联多的电路尽量放上部OUTLDANDOR(b)并联多的电路尽量靠近母线OUTLDORLDALD上大下小,左大右小简化程序(减少指令的条数,缩短扫描时间)I0.1Q0.3输入处理I0.1=ON,I0.2=OFF第一次第二次输出处理Q0.3=OFF,Q0.4=ONQ0.4I0.3I0.2Q0.3双线圈输出不可用双线圈输出不可用案例3:电动机正反转设计电动机正反转分为:手动正反转、位置控制自动正反转、时间控制自动正反转等。

工程案例一:子项目3应用:运料车两地(三地)往返运料机床加工车刀自动往返搅拌器正反向搅拌电动机的正反转控制FUKM1QS正转接触器反转接触器L1L2L3主电路KM2FRM3~注意调相相序与调相I/O接线图(手动正反转)正转启动SB2-X0反转启动SB3-X1停止SB1-X2KM2SB2KM1SB3SB1KM2KM1电源FR正转接触器KM1-YI反转接触器KM2-Y2正转互锁反转互锁Q0.1COMI0.0I0.1I0.2Q0.2COM1电动机的正反转控制手动正反转的梯形图指令表

0LDI0.11OQ0.12ANI0.23

ANI0.14AN

Q0.25=Q0.16LDI0.17OQ0.28ANI0.29ANI0.010AN

Q0.111=Q0.2Q0.1正转反转I0.0Q0.1I0.2Q0.2I0.1I0.1Q0.2Q0.2I0.2Q0.1I0.0电动机的正反转控制电动机手动正反转的PLC控制系统电动机的正反转控制电动机的正反转控制作业:思考1:如何实现位置控制自动正反转??思考2:如何实现时间控制自动正反转??九.定时器及定时器指令定时器分辨率(时基)有三种:1ms、10ms、100ms。定时器的分辨率由定时器号决定S7-200提供了3种定时器,共256个(T0-T255):1.接通延时(TON):用于单一间隔的定时;2.有记忆的接通延时(TONR):用于累计时间间隔;3.断开延时(TOF):用于关断后延时。最大定时值0.546min5.46min54.6min0.546min5.46min54.6min输入接点设定值:1~32767定时器号码(0~255)INPTT37TON定时器的实际设定时间T=设定值PT×分辨率TON:接通延时定时器

TOF:断开延时定时器

TONR:有记忆接通延时定时器类型TS=1200*0.1=120S接通延时定时器TON当使能端(IN)接通时,开始计时,计时当前值=设定值(PT)时,定时器位为ON。使能输入断开时,当前值清0,触点复位。其工作波形图如下:I0.1Q0.1计时值设定值TS设定值使能输入TONPTINT38T38TONPTINI0.11200()T38Q0.1断开延时定时器TOF当IN=1时,定时器位立即为ON,当前值为0;当IN由1变0时,定时器开始计时,直到设定值;当计时当前值=PT时,定时器位变为OFF,当前值停止计时。其工作波形图如下:I0.1Q0.1计时值设定值TS设定值使能输入TOFPTINT38TOFPTINI0.11200T38()T38Q0.1TS=1200*0.1=120S保持型接通定时器TONR当IN=1时,开始计时;当当前值=PT时,定时器位接通ON;当IN由1变0时,定时器的位为OFF,但当前值保留,当IN再次为ON时,接着计时;若要使当前值清零,必须用复位指令。其工作波形图如下:输入端Q0.1当前值设定值TSTS=120*10msM0.1T4输入端设定值TONRPTINTONRPTINI0.1120T4()T4Q0.1()T4R1M0.1最大值32767120例题:仿真演示各定时器的功能。LDI0.0TONT50,300LDT50=Q0.0LDNI0.1TOFT51,200LDT51=Q0.1LDI0.3TONRT5,500LDT5=Q0.2时间间隔定时器指令BITIM与CITIM配合使用,用于计算两个任务执行的时间间隔。例题:统计I0.0导通的时间。LDI0.0EUBITIMVD0LDI0.0CITIMVD0,VD4在I0.0的上升沿,BITIM捕捉这一时间,并存入VD0,同时,CITIM累计I0.0为1的时间,并与IN的VD0数据相减,减的结果存入VD4.定时器使用注意事项:定时器最长定时54.6min,若长时间定时,可以用定时器与计数器配合使用;同一个程序中,定时器号不要重复;定时时间不能输入负值;时间较短的定时任务建议使用定时中断更可靠;定时器号与定时器类型相匹配;BITIM与CITIM指令可以测量两个任务时间间隔,也可间接实现定时功能,比TON,TOF,TONR定时要准。案例练习:时间控制电机自动正反转十.计数器指令定时器是对

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论