版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第6章S7-1200PLC的编程指令6.1位逻辑指令6.2定时器与计数器指令6.3比较指令6.4程序控制指令6.5数据处理指令6.6算术运算指令与逻辑运算指令6.7移位和循环移位指令6.1
位逻辑指令6.1.1触点和线圈等基本指令7常开触点的激活取决于相关操作数的信号状态。当操作数的信号状态为“1”时,常开触点将关闭,同时输出的信号状态置位为输入的信号状态。当操作数的信号状态为“0”时,不会激活常开触点,同时该指令输出的信号状态复位为“0”。两个或多个常开触点串联时,将逐位进行“与”运算。串联时,所有触点都闭合后才产生信号流。常开触点并联时,将逐位进行“或”运算。并联时,有一个触点闭合就会产生信号流。--||--:常开触点常闭触点的激活取决于相关操作数的信号状态。当操作数的信号状态为“1”时,常闭触点将打开,同时该指令输出的信号状态复位为“0”。当操作数的信号状态为“0”时,不会启用常闭触点,同时将该输入的信号状态传输到输出。两个或多个常闭触点串联时,将逐位进行“与”运算。串联时,所有触点都闭合后才产生信号流。常闭触点并联时,将进行“或”运算。并联时,有一个触点闭合就会产生信号流。--|/|--:常闭触点使用“取反RLO”指令,可对逻辑运算结果(RLO)的信号状态进行取反。如果该指令输入的信号状态为“1”,则指令输出的信号状态为“0”。如果该指令输入的信号状态为“0”,则输出的信号状态为“1”。可以使用“赋值”指令来置位指定操作数的位。如果线圈输入的逻辑运算结果(RLO)的信号状态为“1”,则将指定操作数的信号状态置位为“1”。如果线圈输入的信号状态为“0”,则指定操作数的位将复位为“0”。该指令不会影响RLO。线圈输入的RLO将直接发送到输出。--|NOT|--:取反RLO--()--:线圈启保停控制程序使用“置位输出”指令,可将指定操作数的信号状态置位为“1”。仅当线圈输入的逻辑运算结果(RLO)为“1”时,才执行该指令。如果信号流通过线圈(RLO=“1”),则指定的操作数置位为“1”。如果线圈输入的RLO为“0”(没有信号流过线圈),则指定操作数的信号状态将保持不变。6.1.2置位和复位指令---(S)--:置位输出--(R)--:复位输出定义可以使用“复位输出”指令将指定操作数的信号状态复位为“0”。仅当线圈输入的逻辑运算结果(RLO)为“1”时,才执行该指令。如果信号流通过线圈(RLO=“1”),则指定的操作数复位为“0”。如果线圈输入的RLO为“0”(没有信号流过线圈),则指定操作数的信号状态将保持不变。
2.置位/复位位域指令SET_BF/RESET_BF置位位域指令用于对某个特定地址开始的多个连续位进行置位;复位位域指令用于对某个特定地址开始的多个连续位进行复位。置位/复位位域指令有两个操作数,指令上方的操作数用于指定待置位/复位位域的首地址,指令下方的操作数用于指定待置位/复位的位数。3.RS/SR触发器
SR指令RS指令SR1QS1RQ00保持前一状态00保持前一状态010010101101110111RS/SR触发器指令逻辑状态表6.1.3上升沿和下降沿指令--|P|--:扫描操作数的信号上升沿使用“扫描操作数的信号上升沿”指令,可以确定所指定操作数(<操作数1>)的信号状态是否从“0”变为“1”。该指令将比较<操作数1>的当前信号状态与上一次扫描的信号状态,上一次扫描的信号状态保存在边沿存储位(<操作数2>)中。如果该指令检测到逻辑运算结果(RLO)从“0”变为“1”,则说明出现了一个上升沿。使用“扫描操作数的信号下降沿”指令,可以确定所指定操作数(<操作数1>)的信号状态是否从“1”变为“0”。该指令将比较<操作数1>的当前信号状态与上一次扫描的信号状态,上一次扫描的信号状态保存在边沿存储器位<操作数2>中。如果该指令检测到逻辑运算结果(RLO)从“1”变为“0”,则说明出现了一个下降沿。--|N|--:扫描操作数的信号下降沿定时器符号定时器名称定时器功能TP脉冲定时器生成具有预定宽度时间的脉冲TON接通延时定时器使输出Q在预设的延时过后设置为ONTOF关断延时定时器使输出Q在预设的延时过后置为OFFTONR保持型接通延时定时器使输出Q在累计时间达到预设的时间后设置为ON,使用R复位S7-1200定时器符号、名称及功能6.2
定时器与计数器指令6.2.1定时器指令
S7-1200PLC常用指令使用参数数据类型说明INBool启用定时器输入RBool将TONR复位QBool定时器输出PTTime定时器预设时间ETTime已计时的时间(当前值)定时器数据块DB指定要使用的定时器
S7-1200定时器指令参数说明PT和ET的值以表示毫秒时间的有符号双精度整数形式存储在存储器中。Time数据使用T#标志符,数据长度为32位,可以采用简单时间单元(如T#10s)或复合时间单元(如T#2h_2s_50m)的形式输入。1.脉冲定时器(TP)TP指令可用于生成具有预定宽度时间的脉冲。2.接通延时定时器(TON)接通延时定时器的功能是使输出Q在预设的延时过后设置为ON。示例1:设计一电动机自动停机控制程序。按下启动按钮SB1(I0.0),电动机M(Q0.0)立即启动并连续运转,经过10分钟后电动机自动停止;运行过程中,任意时刻按下停止按钮SB2(I0.1),电动机M立即停止。使用脉冲定时器TP指令编制的控制程序示例如图。示例2:设计一个周期为3s,脉冲宽度为2s的方波发生器。使用接通延时定时器TON指令编写的方波发生示例程序如图。6.2.2
计数器指令计数器指令类型计数器指令主要用于对内部程序事件和外部过程事件进行计数。S7-1200PLC计数器指令有三种类型,分别是加计数器(CTU)、减计数器(CTD)、加/减计数器(CTUD)。根据所选择的计数器指令的数据类型不同,计数器指令分别占用3个字节(SInt、USInt)、6个字节(Int、UInt)或12字节(DInt、UDInt)的存储器空间。计数值的计数范围取决于所选的数据类型,如果计数值是无符号整型数,则可以减计数到零或加计数到范围限值。如果计数值是有符号整数,则可以减计数到负整数限值或加计数到正整数限值。参数数据类型说明CU、CDBool加、减计数输入端R(CTU、CTUD)Bool计数器复位输入端LOAD(CTD、CTUD)Bool预置值装载输入端Q、QUBoolCV≧PV时为ONQDBoolCV≦0时为ONPVSInt、USInt、Int、UInt、DInt、UDInt预设计数值CVSInt、USInt、Int、UInt、DInt、UDInt当前计数值计数器指令参数说明2.加计数器(CTU)3.减计数器(CTD)6.3
比较指令6.3.1比较运算指令比较运算指令CMP用于比较两个相同的数据类型的数据大小。如果比较结果为“真”,则指令的RLO为“1”,否则为“0”。1.比较运算符对于数值比较,运算符有:等于(==)、大于(>)、小于(<)、不等于(<>)、大于等于(>=)、小于等于(<=)共六种;而字符串的比较指令只有等于(==)和不等于(<>)两种。2.比较数据类型可参与比较的数据有12种类型:Int、DInt、Real、USInt、UInt、UDInt、SInt、String、Char、Time、DTL、LReal。可以使用“等于”指令判断第一个比较值(<操作数1>)是否等于第二个比较值(<操作数2>)。如果满足比较条件,则指令返回逻辑运算结果(RLO)“1”。如果不满足比较条件,则指令返回RLO“0”。该指令的RLO通过以下方式与整个程序段中的RLO进行逻辑运算:串联比较指令时,将执行“与”运算。并联比较指令时,将进行“或”运算。在指令上方的操作数占位符中指定第一个比较值(<操作数1>)。在指令下方的操作数占位符中指定第二个比较值(<操作数2>)。CMP==:等于
定义
可以使用“大于”指令确定第一个比较值(<操作数1>)是否大于第二个比较值(<操作数2>)。要比较的两个值必须为相同的数据类型。如果满足比较条件,则指令返回逻辑运算结果(RLO)“1”。如果不满足比较条件,则指令返回RLO“0”。CMP>:大于指令名称功能JMP若RLO=1则跳转JMPN若RLO=0则跳转LABEL跳转标签JMP_LIST定义跳转列表SWITCH跳转分配器RET返回6.4
程序控制指令程序控制指令用于编写结构化程序、优化控制程序结构,以便减少程序执行时间,主要包含用于改变程序执行顺序的跳转指令和在程序运行过程中用于控制的指令。跳转与标签指令使用跳转指令可以改变程序的执行顺序。当未执行跳转指令时,各个程序段按从上往下的顺序先后执行;当跳转条件满足时,执行跳转指令,中止程序的顺序执行,跳转到标签指令处程序开始执行,跳转时跳转指令与标签指令之间的程序CPU不再扫描执行。6.5数据处理指令6.5.1移动指令
1.移动值指令MOVE移动值指令MOVE是将IN输入操作数的源数据传送给OUT1输出的目的地址中;初始状态中,指令框中只包含一个输出OUT1,如果要传送给多个输出,可单击指令框中的插入输出符号扩展输出数量。可以使用“移动值”指令将IN输入操作数中的内容传送给OUT1输出的操作数中。始终沿地址升序方向进行传送。如果满足下列条件之一,使能输出ENO将返回信号状态“0”:使能输入EN的信号状态为“0”。IN参数的数据类型与OUT1参数的指定数据类型不对应。MOVE:移动值2.块移动指令MOVE_BLK块移动指令又称为存储区移动指令,用于将源存储区的数据移动到目标存储区,IN和OUT是待复制的源区域和目标区域的起始地址,COUNT指定需要复制的元素个数,仅当源区和目标区域的数据类型相同时,才能执行该指令。3.块填充指令FILL_BLK使用块填充指令FILL_BLK可以使用指定数据元素的副本填充数组中连续的元素。指令操作数IN表示需要填入的数据,可以为常数;COUNT表示需要填入的数组元素的个数;OUT指定需要填入的第一个元素地址。。6.5.2
转换指令1.转换指令CONVERT转换指令CONVERT用于将数据元素从一种数据类型转换为另一种数据类型。转换指令支持的数据类型包括:SInt,Int,DInt,USInt,UInt,UDInt,Byte,Word,DWord,Real,LReal,BCD16,BCD32。6.6数学运算指令与逻辑运算指令6.6.1
数学运算指令数学运算指令主要用于实现数据的运算功能,可完成整数、长整数及实数的加、减、乘、除、求余、求绝对值等基本运算,以及浮点数的平方、平方根、自然对数、基于e的指数运算及三角函数等扩展运算。指令功能ADD加法运算指令:IN1+IN2=
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 教育培训劳动合同样本2篇
- 旅游区租赁管理合同3篇
- 挡土墙施工合同范本3篇
- 新版住宿酒店合同3篇
- 改正错误承诺书3篇
- 搅拌机购买协议3篇
- 方式预售合同补充协议3篇
- 新项目建议立项3篇
- 政府采购保密协议3篇
- 居民意见小区改进措施3篇
- 支气管动脉造影护理
- 校园春季安全
- 2024-2025学年六上科学期末综合检测卷(含答案)
- 【MOOC】工程力学-浙江大学 中国大学慕课MOOC答案
- 2024年湖南省公务员考试《行测》真题及答案解析
- 产房年终总结及明年计划
- 北京交通大学《数据结构与算法》2021-2022学年期末试卷
- 足球体育说课
- 【粤教】八上地理知识点总结
- (完整版)八年级下册所有古诗及文言文(人教版)
- 铝合金搅拌摩擦焊的工艺研究
评论
0/150
提交评论