plc新教学6章节

上传人:E**** 文档编号:91252609 上传时间:2019-06-26 格式:PPT 页数:47 大小:9.58MB
返回 下载 相关 举报
plc新教学6章节_第1页
第1页 / 共47页
plc新教学6章节_第2页
第2页 / 共47页
plc新教学6章节_第3页
第3页 / 共47页
plc新教学6章节_第4页
第4页 / 共47页
plc新教学6章节_第5页
第5页 / 共47页
点击查看更多>>
资源描述

《plc新教学6章节》由会员分享,可在线阅读,更多相关《plc新教学6章节(47页珍藏版)》请在金锄头文库上搜索。

1、第6章 可编程序控制器的功能指令,概述 为了满足工业控制的需要,PLC生产厂家为PLC 增添了过程控制,数据处理和特殊功能指令,这些指令我们称为功能指令。 类型:传送、移位及填充指令;算术运算及逻辑运算指令;数据转换指令;高速处理指令;通信指令;PID指令。,6.程序控制指令,6.1.1 循环指令 FOR指令表示循环的开始,NEXT指令表示循环的结束, 注意事项: (1)如果启动了FORNEXT循环,除非在循环内部修改了结束值,否则循环就一直进行,直到循环结束。 (2)再次启动循环时,它将初始值INIT传送到指针INDX中。 FOR指令必须与NEXT指令配套使用。允许循环嵌套,最多可嵌套8层。

2、(图6-3),例:程序循环,【例6-1】在I0.5的上升沿,求VB10VB29中20个字节的异或值。,网络1 LD I0.5 EU /在I0.5的上升沿 MOVB 0,AC0 /清累加器0 MOVD &VB10,AC1 /累加器1(存储区指针)指向VB10 FOR VW0,1,20 /循环开始 网络2 LD SM0.0 XORB *AC1,AC0 /字节异或 INCB AC1 /指针AC1的值加1,指向下一个变量存储器字节 网络3 NEXT /循环结束 网络4 LD I0.5 EU MOVB AC0,VB40 /保存异或结果,6.1.2跳转与标号指令 跳转指令JMP(Jump),标号LBL(L

3、abel),标号指令用来指示跳转指令的目的位置。JMP与LBL指令中的操作数n为常数0255。,局部变量表与子程序,局部变量与全局变量 局部变量类型(TEMP,IN,OUT,IN OUT。) 局部变量的地址分配 在局部变量表中增加新的变量 局部变量数据类型检查,子程序的编写与调用,子程序的作用 子程序的创建 子程序的调用,【例6-2】设计求V存储区连续的若干个子的累加和的子程序,在OB1中调用它,在I0.1的上升沿,求VW100开始的10个数据字的和,并将运算结果存放在VD0中。,网络1 LD SM0.0 MOVD 0,#RESULT /清结果单元 FOR #COUNT,1,#NUMB /循环

4、开始 网络2 LD SM0.0 ITD *#POINT,#TEMP1 /将待累加的整数转换为双整数 +D #TEMP1,#RESULT /双整数累加 +D 2,#POINT /指针值加2,指向下一个字 网络3 NEXT /循环结束,6.数据处理指令,6.3.2 SIMATIC数据传送指令 1字节、字、双字和实数的传送 将输人的数据(IN)传送到输出(OUT),传送过程中不改变数的大小。 2字节、字、双字的块传送指令 将从输入地址(JN)开始的N个数据传送到输出地址(OUT)开始的N个单元,N=l 255,N为字节变量,3字节交换指令 字节交换SWAP(swap Bytes)指令交换输人字(IN

5、)的高字节与低字节。 4宇节立即读写指令 字节立即读MOVBIR(Move Byte Immediate Read)指令读取IN输入端给出的1个字节的物理输入点(IB),并将结果写入OUT。 字节立即写MOV BIW(Move Byte Immediate Write)指令将输入(IN)给出的1字节数值写入OUT端给出的物理输出点(0B)。两条指令的IN和OUT都是字节变量。,6.3.3 移位与循环移位指令,1.字节、字、双字右移位和左移位指令 2.字节、字、双宇循环右移位和循环左移位指令 3.移位寄存器指令。,6.数学运算指令,6.5.1 SIMATIC整数数学运算指令 1整数与双整数加减法

6、指令 2整数乘除法指令 3加1与减1指令,6.4.3 SIMATIC逻辑运算指令 1.取反指令 2.字节逻辑运算指令 3.字逻辑运算指令,六、运算指令: 1、加法指令,2、减法指令 3、乘法指令,4、除法指令 5、增1/减1指令,例:食品加工厂对生产线上的盒装饮料进行计 数,每 24 盒为一箱,要求能记录生产的箱数。,七、逻辑运算:,6.6中断程序与中断指令,中断源:,a) 通信中断 b)输入/输出中断(外部输入中断、高速计数器中断和脉冲输出中断) c)时基中断(定时中断和定时器中断),2、中断优先级,3、中断指令,4、中断连接指令,5、中断分离指令,6、开/关中断指令: ENI和DISI 7

7、、中断示例: 例1,例2:,例3 在I0.0的上升沿通过中断使Q0.0立即置位。在I0.1的下降沿通过中断使Q0.0立即复位。,/主程序 OB1 LD SM0.1 /第一次扫描时 ATCH INT_0,0 /在I0.0的上升沿执行0号中断程序 ATCH INT_1,3 /在I0.1的下升沿执行1号中断程序 ENI /允许全局中断 /中断程序0 (INT_0) LD SM0.0 /该位总是位ON SI Q0.0,1 /使Q0.0立即置位 /中断程序0 (INT_1) LD SM0.0 /该位总是为ON RI Q0.0,1 /使Q0.0立即复位,例4 定时中断的定时时间最长为255mm,用定时中断

8、1实现周期为2s的高精度定时。,/主程序 OB1 LD SM0.1 /第一次扫描时 MOVB 0,VB10 /将中断次数计数器清零 MOVB 250,SMB34 /设定时中断0的中断时间间隔为250ms ATCH INT_0,10 /指定产生定时中断0时执行0号中断程序 ENI /允许全局中断 /中断程序INT_0,每隔250ms中断一次 LD SM0.0 /该位总是位ON INCB VB10 /中断次数计数器加1 LDB = 8,VB10 /如果中断了8次(2s) MOVB 0,VB10 /将中断次数计数器清零 INCB QB0 /美2s将QB0加1,高速计数器及其指令,高速计数器的工作模式

9、 1.无方向单相加减模式 2.有方向单相加减模式 3.双相加减计数 4.双相正交计数,高速计数器(续),高速计数器的外部信号 高速计数器指令 1.高速计数器定义指令(HDEF) 2.高速计数器指令(HSC) 高速计数器的控制字节及数据地址,与高速计数器有关的特殊存储器,1.高速计数器的状态字,1.高速计数器的控制字节,3.预置值和当前值的设定,举例:用指令向导生成高速计数器HSC0的初始化程序和中断程序,HSC0为无外部方向输入信号的单相加/减计数器(模式0),计数值为1000020000时Q4.0输出为1。,(1)主程序 LD SM0.1 /首次扫描时 CALL HSC_INIT /调用HS

10、C0初始化子程序 (2)初始化子程序HSC_INIT LD SM0.0 /SM0.0总是为ON MOVB 16#F8,SMB37 /设置控制字节,加记数、允许记数 MOVD +0,SMD38 /装载当前值CV MOVD +10000,SMD42 /装载预置值PV HDEF 0,0 /设置HSC0为模式0 ATCH COUNT_EQ,12 /当前值等于预置值时执行中断程序COUNT_EQ ENI /允许全局中断 HSC 0 /启动HSC0,(3)中断程序COUNT_EQ LD SM0.0 MOVB 16#A0,SMB37 /设置控制字节,允许计数,写入 /新的预置值,不改变记数方向 MOVD +20000,SMD42 /装载预置值PV ATCH HSC0_STEP1,12 /当前值等于预置值时执行中断程 /序HSC0_STEP1 HSC 0 /启动HSC0 SI Q4.0,1 /用户添加的立即置位指令 (4)中断程序HSC0_STEP1 LD SM0.0 MOVB 16#80,SMB37 /设置控制字节,允许计数,不写 /入新的预置值,不改变计数方向 DTCH 12 /断开中断连接 HSC 0 /启动HSC0 RI Q4.0,1 /用户添加的立即复位指令,高速脉冲输出,脉冲输出指令(PLS) PWM操作 PTO操作 编程举例,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号