《[互联网]第7章-功能指令应用课件.ppt》由会员分享,可在线阅读,更多相关《[互联网]第7章-功能指令应用课件.ppt(60页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第七章S7-200PLC功能指令及应用本章内容 1 传送、移位和填充指令2 运算和数学指令3 表功能指令4 转换指令5 字符串指令6 子程序7 时钟指令8 中断9 高速计数器指令10 高速脉冲输出指令11 PID 回路指令 功能指令作用1 复杂程序设计2 特殊工业控制环节编程3 优化程序一些说明:EN 和ENO:使能输入端和使能输出端 使能信号EN一 传送、移位和填充指令 传送(move)指令 作用:存储单元间的数据传送 四条指令:单一传送字节立即读块传送字节立即写单一传送作用:EN有效时,把单个数据从IN传送到OUTMOVB VB100,VB200块传送作用:EN有效时,把N个数据从IN传送
2、到OUTN最大值为255BMB VB130,VB230,4VB130VB133VB230VB233字节立即读 字节立即写与立即位指令相同BIR IB1,VB270 BIW VB280,QB0立即指令 循环(rotate)与移位(shift)指令 作用 指令一 传送、移位和填充指令 右移左移 循环右移循环左移寄存器移位右移 左移说明:1数据长度B,W,DW;2移位时,移出位进SM1.1,另一端补零;3 N为移位次数,超过数据长度无效。例如:SLB VB0,2移位前 移位后00110101 0000 110101004 移位后数据变零,SM1.0置位循环右移 循环左移说明:1数据长度B,W,DW;
3、2 若N大于数据长度,则例如:RRB VB0,11移位前 移位后0011011011000110寄存器移位指令功能描述:1DATA 数据输入端,布尔型2 S_BIT 寄存器最低位端,布尔型3 N 指定移位寄存器的长度注意 本课程实验中多次用到本指令。EN端须用边沿脉冲指令使能!字节交换及填充指令 作用 指令一 传送、移位和填充指令 IN为字数据 IN为字数据二 运算和数学指令 运算指令 作用 数据运算 指令 使用注意事项 LAD 和STL 中的不同,最好使用LAD 编程 尽量使用不同的存储单元来存放不同的数据说明:1对有符号数进行操作2 整数,双整数,实数加法 减法一般乘法 完全整数乘法说明:
4、完全整数乘法对两个单字符号整数相乘,结果32位整数。一般乘法包括整数,双整数和实数乘法。一般除法 完全整数除法说明:完全整数除法对两个单字符号整数相除,结果32位,低16位为商,高16位为余数。一般除法包括整数,双整数和实数除法,不保留余数。数学函数指令 自习 作用 指令 平方根 自然对数 指数 正弦 余弦 正切说明:IN和OUT均为双字实数 增减指令说明:IN和OUT可为字节(无符号),字,双字可用于长定时编程 逻辑运算指令 作用 指令 逻辑与,逻辑或,逻辑异或,取反说明:IN1,IN2和OUT均为无符号数,可为字节,字,双字三 表功能指令 数据表格式 表功能指令作用 数据有序存取和查找,较
5、少使用 数据表格式 指令(略)四 转换指令 数据类型转换指令 作用 为什么使用数据类型转换指令?指令 字节与整数,整数与双整数,双整数与实数 数据类型转换指令 指令(2):BCD码转换指令 BCD码在PLC中的应用 现在的情况 编码、译码、段码指令 作用 指令 ASCII转换指令 指令 字符串转换指令 作用 指令六 子程序 子程序作用:优化程序结构子程序操作:建立 调用 返回建立子程序 编程软件插入的方式建立子程序的调用子程序调用指令(CALL)在使能输入有效时,主程序把程序控制权交给子程序。子程序的调用可以带参数,可以不带参数。子程序条件返回指令(CRET)在使能输入有效时,结束子程序的执行
6、,返回主程序中(此子程序调用的下一条指令)。梯形图中以线圈的形式编程,指令不带参数。使用说明 CRET多用于子程序的内部,由判断条件决定是否结束子程序调用,RET用于子程序的结束。软件自动处理RET指令。子程序的嵌套深度最多为8级。当一个子程序被调用时,系统自动保存当前的堆栈数据,并把栈顶置1,堆栈中的其他值为0,子程序占有控制权。子程序执行结束,通过返回指令自动恢复原来的逻辑堆栈值,调用程序又重新取得控制权。举例 带参数的子程序的调用 用途 局部变量表的使用 举例7.6 7.6 时钟指令时钟指令 作用 指令 使用举例 S7-200 系列PLC的功能指令 7.7 7.7 中断中断 什么叫中断?
7、它的作用是什么?几个基本概念 中断源(max=34)中断事件号 中断类型 通信中断 输入、输出中断 时基中断:定时中断、定时器中断 SMB34,SMB35 T32、T96 中断优先级 P239 表7-12 中断指令中断事件号中断程序名 举例:数据采集,周期200毫秒。7.7 7.7 中断中断 中断程序 怎样建立一个中断程序 编写中断程序的要求 S7-200 系列PLC的功能指令 7.8 7.8 高速计数器指令高速计数器指令 作用 与编码器配合使用,用于精确定位和测量长度。累计比PLC扫描频率快得多的脉冲输入个数。S7-200 系列PLC的功能指令 数量和编号:HC0-HC5 中断事件类型:3类
8、 当前值等于预设值 输入方向改变 外部复位 工作模式和输入点 见表7-15高数计数器的使用方法(步骤)使用高速计数器的编程步骤 选择高速计数器 设置控制字节 执行HDEF指令 设置初始值和预设值 设置中断事件并全局开中断 执行HSC指令 使用高速计数器的几个关键点计数器类型的选择输入点的确定状态字节和控制字节的使用相关中断的触发条件和中断程序的设计7.8 7.8 高速计数器指令高速计数器指令 举例 高速计数器应用实例。采用测频的方法测量电机的转速。用测频法测量电机的转速是指在单位时间内采集编码器脉冲的个数,因此可以选用高速计数器对转速脉冲信号进行计数,同时用时基来完成定时。知道了单位时间内的脉
9、冲个数,再经过一系列的计算就可以得知电机的转速。S7-200 系列PLC的功能指令 7.8 高速计数器指令 7.9 7.9 高速脉冲输出指令高速脉冲输出指令 作用 高速脉冲的输出方式 PTO(Pulse Train Output)PWM(Pulse Width Modulation)指令 S7-200 系列PLC的功能指令 7.10 PID7.10 PID回路指令回路指令 问题讨论 什么是PID?什么场合需要用PID?PID 指令的实质是什么?如何选择PID 的功能?如何在计算机控制系统中使用PID?在PLC 控制系统中如何使用PID?过去的情况 现在的情况 信号在PLC 端子上的表现形式 S
10、7-200 系列PLC的功能指令 PROPORTIONAL INTEGRAL DIFFERENTIAL7.10 PID7.10 PID回路指令回路指令 PID 回路表 S7-200 系列PLC的功能指令 7.10 PID7.10 PID回路指令回路指令 PID 指令及使用方法 指令 确定PID 回路号 S7-200 系列PLC的功能指令 7.10 PID7.10 PID回路指令回路指令 PID 指令及使用方法 PID 指令的使用 回路输入量的转换及归一化 为什么要进行归一化处理?第一步,将工程实际值由16位整数转化为实数,程序如下:XORD AC0,AC0/清累加器AC0ITD AIW0,AC
11、0/把整数转化为双整数(设采集数据通道地址为AIW0)DTR AC0,AC0/把双整数转化为实数 第二步,将实数格式的工程实际值转化为0.0,1.0 之间的无量纲相对值,用下式来完成这一过程:RNorm=(RRawSpan)+Offset式中:RNorm 为工程实际值的归一化值;RRaw 为工程实际值的实数形式值,未归一化处理。标准化实数又分为双极性(围绕0.5上下变化)和单极性(以0.0为起点在0.0和1.0之间的范围内变化)两种。对于双极性,Offset 为0.5;对于单极性,Offset 为0,Span表示值域的大小,通常单极性时取32 000,双极性时取64 000。以下程序段用于将A
12、C0 中的双极性模拟量进行归一化处理(可紧接上面的程序):/R 64000.0,AC0/将AC0 中的双极性模拟量值进行归一化+R 0.5,AC0/Offset 处理MOVR AC0,VD200/将归一化结果存入TABLE 中(设TABLE 表地址为VD200)S7-200 系列PLC的功能指令 7.10 PID7.10 PID回路指令回路指令 PID 指令及使用方法 PID 指令的使用 回路控制输出转换为按工程量标定的整数值 为什么要进行工程量标定转换?第一步,用下式将回路输出转换为按工程量标定的实数格式:Rscal=(Mn Offset)Span式中:Rscal 为已按工程量标定的实数格式
13、的回路输出;Mn 为归一化实数格式的回路输出。程序如下:MOVR VD208,AC0/将回路输出结果(设TABLE 表首地址为VB200)放入AC0-R 0.5,AC0/对双极性场合减去0.5*R 64 000,AC0/将AC0 中的值按工程量标定 第二步,将已标定的实数格式的回路输出转化为16位的整数格式,并输出。TRUNC AC0,AC0/取整数DTI AC0,AC0/双整数转换为整数MOVW AC0,AQW0/把整数值送到到模拟量输出通道(设为AQW0)选择PID 回路类型 关闭积分回路 关闭微分回路 关闭比例回路 S7-200 系列PLC的功能指令 7.10 PID7.10 PID回路
14、指令回路指令 PID 使用举例 题目 某一水箱有一条进水管和一条出水管,进水管的水流量随时间不断变化,要求控制出水管阀门的开度,使水箱内的液位始终保持在水满时液位的一半。系统使用比例积分及微分控制,假设采用下列控制参数值:Kc 为0.4,Ts 为0.2s,Ti 为30 min,Td 为15 min。题目分析 本系统标准化时可采用单极性方案,系统的输入来自液位计的液位测量采样;设定值是液位的50%,输出是单极性模拟量,用以控制阀门的开度,可以在0%100%之间变化。程序设计 本程序只是模拟量控制系统的PID 程序主干,对于现场实际问题,还要考虑诸多方面的影响因素。本程序的主程序、回路表初始化子程
15、序SBR0、初始化子程序SBR1 和中断程序INT0 模拟量输入通道为AIW2,模拟量输出通道为AQW0。I0.4 为手动/自动转换开关,I0.4 为1时,系统进入自动运行状态。S7-200 系列PLC的功能指令 7.10 PID7.10 PID回路指令回路指令 S7-200 系列PLC的功能指令 7.10 PID7.10 PID回路指令回路指令 S7-200 系列PLC的功能指令 本章小结本章小结 主要内容 要求 S7-200 系列PLC的功能指令 本章小结本章小结 实验 P202 页第5题 使用“加1指令”完成长延时功能 实现一位BCD 循环显示的实验 高速计数器实验 S7-200 系列PLC的功能指令