西门子S7-200 PLC的指令系统及指令应用.pdf
苏州天天自动化 PLC 培训中心地址:苏州吴中宝丰路 1 号咨询:400-8169-114西门子西门子西门子西门子 S7-200S7-200S7-200S7-200 PLCPLCPLCPLC 的指令系统及指令应用的指令系统及指令应用的指令系统及指令应用的指令系统及指令应用学习内容:学习内容:学习内容:学习内容:基本指令应用基本指令应用基本指令应用基本指令应用 应用指令的应用应用指令的应用应用指令的应用应用指令的应用教学要求:教学要求:教学要求:教学要求:熟悉常用指令的用法熟悉常用指令的用法熟悉常用指令的用法熟悉常用指令的用法 能用指令进行简单的编程能用指令进行简单的编程能用指令进行简单的编程能用指令进行简单的编程 掌握掌握掌握掌握 STEPSTEPSTEPSTEP 7 7 7 7 MicroWINMicroWINMicroWINMicroWIN v4.0v4.0v4.0v4.0 编程软件的编程方法编程软件的编程方法编程软件的编程方法编程软件的编程方法一基本顺控指令一基本顺控指令一基本顺控指令一基本顺控指令1.11.11.11.1 触点、线圈指令及双线圈触点、线圈指令及双线圈触点、线圈指令及双线圈触点、线圈指令及双线圈1.21.21.21.2 置位及复位指令置位及复位指令置位及复位指令置位及复位指令1.31.31.31.3 触点上升沿、下降沿指令触点上升沿、下降沿指令触点上升沿、下降沿指令触点上升沿、下降沿指令1.41.41.41.4 脉冲上升沿及下降沿指令脉冲上升沿及下降沿指令脉冲上升沿及下降沿指令脉冲上升沿及下降沿指令苏州天天自动化 PLC 培训中心地址:苏州吴中宝丰路 1 号咨询:400-8169-114第一节第一节第一节第一节 基本顺控指令基本顺控指令基本顺控指令基本顺控指令1 1 触点及线圈指令触点及线圈指令1 输入信号的程序举例:说明:如上图所示,同一个输入点(上图为 I0.1)的常开、常闭点可以在程序里重复循环使用,只要在内存容量内,可以重复使用。没有使用数量的限制。但是使用常开点还是常闭点,应根据外部接线及控制要求来定。常开、常闭触点用法:当外部开关信号接通时,程序中的常开点接通,常闭点断开当外部开关信号断开时,程序中的常开点断开,常闭点接通2输出信号的程序举例:说明:如上图所示,同一个输出点的线圈在程序里一般只能使用一次。但是线圈的常开点及常闭点可以在程序里重复多次使用,没有数量限制。输出点线圈及触点一般用法:当输出点线圈接通时,它的常开触点接通,常闭触点断开当输出点线圈断开时,它的常开触点断开,常闭触点接通苏州天天自动化 PLC 培训中心地址:苏州吴中宝丰路 1 号咨询:400-8169-1142 2 双线圈输出及处理方法双线圈输出及处理方法1什么是双线圈输出?在用户程序中,同一编程元件的线圈使用了两次或多次,称为双线圈输出。程序举例:如上程序,Q0.1 这个输出线圈在程序中用了两次。在梯形图程序中,一般情况下是不允许同一个线圈在一个程序中使用多次的。为了满足控制要求,可能在不同的条件下,需要多次对同一个线圈输出,若在编写程序时,也是按照要求输出几个相同的线圈的话,多个线圈在梯形图中使用时,程序可能达不到预期的控制要求.如上面的程序,I0.1 及 I0.2 都接通,则 Q0.1 线圈接通。I0.1、I0.3 及 I0.4 都接通,则 Q0.1 线圈也接通。根据 PLC 的工作原理及扫描原理,在程序执行完后,才对输出的 ON/OFF 状态送到外部信号端子。此例中对于 Q0.1 控制的外部负载来说,真正起作用的是最后一个 Q0.1 的线圈的状态。而前面的 Q0.1 的线圈只在程序执行过程中,有 ON/OFF的信号。我们可以通过一些对策来避免双线圈的错误。下面举例介绍一般上线圈输出的对策举例:控制要求如下:同时按下按钮 I0.1 及 I0.2,指示灯 Q0.1 要亮。按下按钮 I0.4,则 5 秒后 Q0.1 也要亮错误的程序:苏州天天自动化 PLC 培训中心地址:苏州吴中宝丰路 1 号咨询:400-8169-114如上程序对初学者来讲,好像一点问题都没有,能满足控制要求。但实际上,此程序是不能满足上面给出的控制要求的,因为程序中两次使用了同一个线圈 Q0.1,根据前面的讲述,程序对 Q0.1 起作用的只有下面的线圈。因此,上面的程序是不能用来满足控制要求的。以下是正确的满足控制要求的程序:说明:根据控制要求,程序在 M0.1 处应该输出 Q0.1,在 M0.2 处也应该输出 Q0.1如果在 M0.1 及 M0.2 处直接输出 Q0.1,则就范了上面程序双线圈错误,因此在需要输出 Q0.1 的地方,输出不同的中间继电器,然后把中间继电器的常开点并联起来,再集中输出一个 Q0.1 的线圈,这样就能避免双线圈的问题。或者下面的程序也能正确的满足控制要求:苏州天天自动化 PLC 培训中心地址:苏州吴中宝丰路 1 号咨询:400-8169-114说明:把满足 Q0.1 输出的条件并联起来,再集中输出一个 Q0.1 的线圈,也能避免双线圈的问题,满足控制要求。触点指令应用案例 1:基本起保停控制按下正转按钮 I0.0,马达正转 Q0.0按下反转按钮 Q0.1,马达反转 Q0.1根据要求编程的下列程序:程序简单分析:按下按钮 I0.0 后,I0.0 的常开点接通,常闭点断开常开点使 Q0.0 的线圈接通,并通过 Q0.0 的常开点自锁保持常闭点使 Q0.1 的线圈断开。同样的道理按下按钮 I0.1 后,I0.1 的常开点接通,常闭点断开常开点使 Q0.1 的线圈接通,并通过 Q0.1 的常开点自锁保持常闭点使 Q0.0 的线圈断开。苏州天天自动化 PLC 培训中心地址:苏州吴中宝丰路 1 号咨询:400-8169-114触点指令应用案例 2:设计一个可用于四支比赛队伍的抢答器。系统至少需要 4 个抢答按钮、1 个复位按钮和 4 个指示灯。如下图所示:具体要求如下:主持人宣布答题后,4 组人 A,B,C,D 开始抢答,谁最先按下按钮,主持人面前对应的灯就会亮,其他队伍再按,主持人面前的灯也不会亮(即主持人面前的等每次答题只会只亮一个),答题完毕后,主持人按下复位按钮 I0.0,灯灭掉。开始下一轮的抢答。分析:若 A 先按下按钮,则 Q0.1 灯要亮,并且一直亮,直到主持人按下复位按钮 I0.0,灯才会灭。其他人按下按钮,对应的灯也不会亮。若 B 先按下按钮,则 Q0.2 灯要亮,并且一直亮,直到主持人按下复位按钮 I0.0,灯才会灭。其他人按下按钮,对应的灯也不会亮。同理,C、D 一样以下程序是分析后得出的:苏州天天自动化 PLC 培训中心地址:苏州吴中宝丰路 1 号咨询:400-8169-114触点指令应用案例 3:用一个按钮(I0.1)来控制三个输出(Q0.1、Q0.2、Q0.3)。当 Q0.1、Q0.2、Q0.3 都为 OFF 时,按第一下 I0.1,则 Q0.1 变为 ON,按第二下 I0.1,则 Q0.1、Q0.2 变为 ON,按第三下 I0.1,则 Q0.1、Q0.2、Q0.3 都变 ON按第四下 I0.1,则 Q0.1、Q0.2、Q0.3 都变为 OFF 状态。按第五下 I0.1,重复执行如上动作。试用两种不同的程序设计方法设计其梯形图程序。以下是分析后得出的程序:苏州天天自动化 PLC 培训中心地址:苏州吴中宝丰路 1 号咨询:400-8169-114此程序正式运行时可能会出现一些问题,但是程序的分析过程就应该如上面所述。触点指令应用案例 4 正反转的正反转的正反转的正反转的 PLCPLCPLCPLC 控制控制控制控制以下为继电器控制电机正反转的控制电路当按下 SBf 按钮,继电器 KMf 线圈得电,其常开触点吸合,电机正转。当按下 SBr 按钮,继电器 KMr 线圈得电,其常开触点吸合,电机反转梯形图,其中 I0.1 是 SBf 按钮,I0.2 是 SBR 按钮,I0.3 是 SB1 按钮苏州天天自动化 PLC 培训中心地址:苏州吴中宝丰路 1 号咨询:400-8169-114从以上继电器图与 PLC 梯形图可以看出,他们两者非常类似,除了触点、线圈符号不同,其他都很相似。值得提出的是继电器接线与 PLC 接线的方法不同,PLC 梯形图内的常开、常闭触点用法也不同。2 2 置位,复位置位,复位S,RS,R设置(S)和复原(R)指令设置(打开)或复原指定的点数(N)从指定的地址(位)开始。您可以设置和复原 1 至 255 个点。如果复位指令指定一个定时器位(T)或计数器位(C),指令复原定时器或计数器位,并清除定时器或计数器的当前值。指令用法举例:如上程序,当条件 I0.1 接通,则从 Q0.0 开始的 3 个线圈(Q0.1、Q0.2、Q0.3)被置位接通。即使 I0.0 断开,3 个线圈还是保持输出,(S)指令相当于自锁功能。一旦 I0.2 接通,Q0.1 开始的 2 个线圈(Q0.1、Q0.2)被复位而断开。苏州天天自动化 PLC 培训中心地址:苏州吴中宝丰路 1 号咨询:400-8169-114对于同一软元件(S),(R)可以多次使用,顺序也可以随意,但最后执行者有效。置位复位指令应用案例 1:延时启动,延时断开基本程序实验目的:熟练掌握置位,复位指令的应用实验内容如下:1按下启动按钮 I0.0,则 5 秒后指示灯 Q0.0 才亮,2按下停止按钮 I0.1,则 3 秒后指示灯灯灭。程序分析:此案例为标准的延时启动,延时断开程序。这里通过置位及复位指令来完成此程序的编程程序如下:苏州天天自动化 PLC 培训中心地址:苏州吴中宝丰路 1 号咨询:400-8169-114置位复位指令应用案例 2:单按钮控制程序试验目的:掌握置位复位指令的应用及程序的先后循序。要求:当第一次按下 I0.0 后,指示灯 Q0.0 亮,并保持亮,当第二次按下 I0.0后,Q0.0 灭,第三次按下后,Q0.0 又亮,第四次又灭。如此循环动作程序如下:程序分析:当 Q0.0 断开时,按下 I0.0,第一个扫描周期内“条件 1”接通,把 M0.1 置位接通。此时“条件 2”因 Q0.0 还没接通,所以不满足,不会把 M0.1 复位。所以最后 M0.1 驱动 Q0.0 接通,以后的周期内因有一个上升沿 P 不会接通,所以 M1 不会有变化,一直保持原来接通的状态。当 Q0.0 接通后,再按下 I0.0,第一个扫描周期内,“条件 1”断开,“条件 2”满足,把 M0.1 复位断开,最后 M0.1 断开,则 Q0.0 也断开,以后的周期内因上升沿不会接通,所以 M0.1 不会有变化,一直保持原来断开的状态。注:注:S S 及及 R R 指令在程序中经常使用,是一个常用的,好用的指令。指令在程序中经常使用,是一个常用的,好用的指令。使用了使用了 S S 指令后,要注意在适当的条件下把对应的元件指令后,要注意在适当的条件下把对应的元件 R R3 3 上升沿上升沿 P P,下降沿,下降沿 N N苏州天天自动化 PLC 培训中心地址:苏州吴中宝丰路 1 号咨询:400-8169-114上升沿指令是进行上升沿检出的触点指令,仅在执行条件上升沿时(offon 变化时)接通一个扫描周期。触点下降沿指令是进行下降沿检出的触点指令,仅在执行条件下降沿时(onoff变化时)接通一个扫描周期。如上图所示,I0.0 的信号波形图,一个周期由 4 个过程组合,过程 1,2,3,4。过程 1 为断开状态过程 2 为接通的瞬间状态-即由断开到接通的瞬间过程 3 为接通状态过程 4 为断开的瞬间状态-即由接通到断开的瞬间其中过程其中过程 2 2 2 2,由断开到接通的瞬间,则为脉冲上升沿,由断开到接通的瞬间,则为脉冲上升沿上图梯形图中,“P”此条件只有当 I0.0 由断开接通的瞬间(也就是上面波形图中的过程 2 这个状态时)才会接通,其他时刻都不会接通。其中过程其中过程 4 4 4 4,由接通到断开的瞬间,则为脉冲下降沿,由接通到断开的瞬间,则为脉冲下降沿上图梯形图中,”N”此条件只有当 I0.0 由接通断开的瞬间(也就是上面波形图中的过程 4 这个状态时)才会接通,其他时刻都不会接通。应用案例 1:每按一下 I0.1 按钮,变量存储器的数值加 1上图程序中,INC_B 指令是“加 1”指令,当指令前面条件接通时,VB1 内的数据就加 1,并且只要条件接通,PLC 每扫描一次,VB1 内的数据都加 1。上图中“P”是一个上升沿指令,当 I0.0 由断开到接通时,”P”只接通一个扫描周期,所以 VB1 内的数据只加 1若上图程序中不加“P”上升沿脉冲指令,则 I0.0 由断开到接通时,VB1 的数据随着 PLC 的扫描过程而递增,即 PLC 每扫描一次,VB1 内的数据就加 1。注:INC 指令在后面的章节中有具体描述。应用案例 2:简单流水线应用苏州天天自动化 PLC 培训中心地址:苏州吴中宝丰路 1 号咨询:400-8169-114如下图所示:下车进车库,当小车在车库门前有个感应器 I0.1,在车库门后也有一个感应器I0.0小车进库前,感应器感应到,则门自动上升,上限位开关为 I0.2,当小车脱离了门后的感应器后,门自动下降,下限位开关为 I0.3程序如下:案例 3:如下图所示,物体原始位置在 A 点,按下启动按钮 I0.0,物体由 A 处运动到 B 处,当物体到达 B 点后,指示灯 Q0.0 亮 5 秒后停止,当指示灯灭后,按苏州天天自动化 PLC 培训中心地址:苏州吴中宝丰路 1 号咨询:400-8169-114下启动按钮,物体由 B 点运动到 C 点。程序第二节第二节第二节第二节 传送、比较及转换指令传送、比较及转换指令传送、比较及转换指令传送、比较及转换指令苏州天天自动化 PLC 培训中心地址:苏州吴中宝丰路 1 号咨询:400-8169-114传送与比较指令传送与比较指令传送与比较指令传送与比较指令2.12.12.12.1 传送指令传送指令传送指令传送指令2.22.22.22.2 批量传送指令批量传送指令批量传送指令批量传送指令2.32.32.32.3 字节交换字节交换字节交换字节交换2.42.42.42.4 直接比较指令直接比较指令直接比较指令直接比较指令2.52.52.52.5 转换指令转换指令转换指令转换指令2.1.传送指令 MOV_B、MOV_W、MOV_DW苏州天天自动化 PLC 培训中心地址:苏州吴中宝丰路 1 号咨询:400-8169-114MOV 指令是把一个数据存入到另一个数据里面。MOV_B 是字节传送:传送的数据类型是字节型MOV_W 是字传送:传送的数据类型是字型MOV_DW 是双字传送:传送的数据类型是双字型指令用法举例 1:当 I0.1 接通,则 MOV_B 指令将数据 255 传送到 VB1 里面,传送后,VB1=88,此后,即使 I0.1 断开,VB1 里的数据保持 255 不变。指令用法举例 2:定时器及计数器当前值的读取注:因定时器及计数器的数据类型都为整数型,因此使用传送指令时一定要用 MOV_W指令用法 3:定时器、计数器设定值的间接指定示例:苏州天天自动化 PLC 培训中心地址:苏州吴中宝丰路 1 号咨询:400-8169-114指令用法举例 4:位软元件的传送:要求按下按钮 I0.1,要使 Q0.0 至 Q0.7 全部接通写法 1:写法 2:2.2.块传送 BLKMOV_B、BLKMOV_W、BLKMOV_DW苏州天天自动化 PLC 培训中心地址:苏州吴中宝丰路 1 号咨询:400-8169-114BLKMOV:将指定的软元件为开头的 N 点数据向以目标指定的软元件为开头的 N 点软元件成批传送。字节块传送指令用法举例:将 VB1 开始的 3 个字节的数据写入 VB11 开始的 3 个字节内即:即:字块传送指令用法举例:程序将 VW0 开始的 3 个字传送至 VW10 开始的 3 个字内即:即:3.字节交换指令 SWAP字节交换指令用于将一个字内的高字节与低字节交换位置苏州天天自动化 PLC 培训中心地址:苏州吴中宝丰路 1 号咨询:400-8169-114指令用法举例:指令将 VB1 及 VB2 位置交换下面举 CPU224 为例,将 Q0.0 到 Q1.1 依次点亮,一周完成后再从 Q0.0 到 Q1.1依次点亮。请看下面程序段苏州天天自动化 PLC 培训中心地址:苏州吴中宝丰路 1 号咨询:400-8169-1142.4.比较指令:1.字节比较指令2.整数比较指令=II=III3.双整数比较指令=DD=DDD比较指令即当比较的两个数满足比较的条件,则此比较指令接通,其原理与触点类似。这种比较指令比较直观,使用时也较为方便。程序举例:苏州天天自动化 PLC 培训中心地址:苏州吴中宝丰路 1 号咨询:400-8169-114如上程序中,当 VB1 的值等于 5 时,就可以输出 Q0.1当 VB1 的值不等于 5 时,就可以输出 Q0.2用法举例:起保停程序按下启动按钮 I0.1,马达 Q0.1 启动并保持,按下停止按钮 I0.2,马达立刻停止转换指令:苏州天天自动化 PLC 培训中心地址:苏州吴中宝丰路 1 号咨询:400-8169-114B_I字节转换为整数把 VB1 字节的数据转成整数,送入 VW20 内B_I整数转换为字节把 VW0 整数的数据转成字节,送入 VB30 内注:注:VB30VB30 是字节型数据,能存放的数据最大为是字节型数据,能存放的数据最大为 255255,因此当,因此当 VW0VW0 内的数据超内的数据超出出255255 时,指令会出错时,指令会出错I_DI整数转换为双整数把 VW0 整数的数据转成双整数,送入 VD20 内DI_I双整数转换为整数把 VD0 双整数的数据转换成整数,送入 VW20 内DI_R双整数转换为实数把 VD0 双整数的数据转换成实数,送入 VW30 内注:实数为注:实数为 3232 位的数据,因此也是用位的数据,因此也是用 VDVD 表示表示BCD_IBCD 码转成整数苏州天天自动化 PLC 培训中心地址:苏州吴中宝丰路 1 号咨询:400-8169-114把 VW0 的 BCD 数据转换成整数,送入 VW20 内常用于拨码开关常用于拨码开关I_BCD整数转成 BCD 码把 VW2 的整数数据转换成 BCD 格式数据,送入 VW30 内常用于七段译码显示器常用于七段译码显示器ROUND取整(小数转成整数)-四舍五入取整TRUNC取整(小数转成整数)-舍去小数取整第三节第三节第三节第三节 算术运算指令算术运算指令算术运算指令算术运算指令苏州天天自动化 PLC 培训中心地址:苏州吴中宝丰路 1 号咨询:400-8169-1143.13.13.13.1 加法指令加法指令3.23.23.23.2 减法指令减法指令3.33.33.33.3 乘法指令乘法指令3.43.43.43.4 除法指令除法指令3.53.53.53.5 递增指令(加一指令)递增指令(加一指令)3.63.63.63.6 递减指令(减一指令)递减指令(减一指令)ADD_IADD_I整数相加整数相加苏州天天自动化 PLC 培训中心地址:苏州吴中宝丰路 1 号咨询:400-8169-114整数加法指令即两个整数类型的数据进行相加,结果传到目标处(目标也为整数)。例 1:当条件 I0.1 接通时,执行整数加法指令,执行时,VW0 的数据+VW2 的数据,其运算结果存到 VW4 里面。注:目标地址与两个加数都不同时,程序执行循环扫面后,其结果 VW4 的数据始终相同。如下程序,其目标数据与其中的一个加数相同。例 2:当条件 I0.1 接通,执行整数加法指令,2+VW0,结果存于 VW0 内当程序执行第一次扫描后,VW0=2当程序执行第二次扫描后,加法指令为 2+VW0=2+2,结果存于 VW0 内因此,当程序执行第二次扫描后,VW0=4同理,当程序执行第三次扫描后,VW0=6。说明:当源数据与目标数据指定同一个地址时,如例 2 所示,则在每个扫描最后,运算结果都会有变化。例 2 程序,程序没执行之前 VW0=0,当执行完一次扫描后,VW0=2,执行第二次后,VW0=4,以后一直会以 6,8,10变化。ADD_DIADD_DI双整数相加双整数相加苏州天天自动化 PLC 培训中心地址:苏州吴中宝丰路 1 号咨询:400-8169-114双整数加法指令即两个双整数(32 位)类型的数据进行相加,结果传到目标处(目标也为双整数)。例 1:当条件 I0.1 接通时,执行双整数加法指令,执行时,VD0 的数据+VD4 的数据,其运算结果存到 VD8 里面。同整数加法指令类似,当运算结果与某个加数是同一个地址时,程序运行后,在每个扫描周期,运算结果都将变化。S7-200S7-200 系列系列 PLCPLC 推出如此两个加法指令,目的在于说明不同类型的数据不能进推出如此两个加法指令,目的在于说明不同类型的数据不能进行运算。行运算。因此在执行数据运算前,需将数据转化为同一类型的数据,然后再进行运算数据转换指令在前面的指令中有详细介绍SUB_ISUB_I整数相减整数相减整数减法指令即两个整数类型的数据进行减法运算,结果传到目标处(目标也为整数)。例 1:当条件 I0.1 接通时,执行整数减法指令,执行时,VW0 的数据-VW2 的数据,其运算结果存到 VW4 里面。整数减法指令注意点:1、进行整数减法运算的三个数据都是整数2、当目标结果与减数或被减数一样时,结果也会一直变化3、指令是 IN1(VW0)IN2(VW2),顺序不能搞反SUB_DISUB_DI双整数减法双整数减法双整数减法指令即两个双整数(32 位)类型的数据进行减法运算,结果传到目标处苏州天天自动化 PLC 培训中心地址:苏州吴中宝丰路 1 号咨询:400-8169-114(目标也为双整数)。例 1:当条件 I0.1 接通时,执行双整数减法加法指令,执行时,VD0 的数据-VD4 的数据,其运算结果存到 VD8 里面。其注意点与上面指令类似,这里不再重述MULMUL整数相乘整数相乘 结果为双整数结果为双整数MUL 指令即两个整数类型的数据进行乘法运算,结果传到目标处(目标为双整数)。例 1:当条件 I0.1 接通时,执行 MUL 指令,执行时,VW0 的数据*VW2 的数据,其运算结果存到 VD4 里面。MUL 指令特别注意,是 整数*整数=双整数当相乘的两个数较大时,用此指令比较合适当相乘的两个数较大时,用此指令比较合适如如:VW0VW0=600600VW2VW2=500500,则这两个数据都在整数范围内,则这两个数据都在整数范围内,但是两数相乘的结果为但是两数相乘的结果为 300000300000,远远超出了一个整数的范围,因此当运算结果,远远超出了一个整数的范围,因此当运算结果存于一个存于一个 3232 位的双整数时,完全可以满足数据的大小位的双整数时,完全可以满足数据的大小MUL_IMUL_I整数相乘整数相乘 结果也为整数结果也为整数MUL_I 指令即两个整数类型的数据进行乘法运算,结果传到目标处(目标也为整苏州天天自动化 PLC 培训中心地址:苏州吴中宝丰路 1 号咨询:400-8169-114数)。例 1:当条件 I0.1 接通时,执行 MUL_I 指令,执行时,VW0 的数据*VW2 的数据,其运算结果存到 VW4 里面。MUL 指令注意:整数*整数=整数使用此指令时注意,当相乘的两个数据较大时,会运算结果会超出数据范围,使用此指令时注意,当相乘的两个数据较大时,会运算结果会超出数据范围,会产生数据的溢出错误。会产生数据的溢出错误。DIVDIV整数相除整数相除 结果为双整数,并有余数结果为双整数,并有余数DIV 指令即两个整数类型的数据进行除法除法运算,结果传到目标处(目标为双整数,其中高 16 位字存余数、低 16 位字存商)。例例 1 1:当条件 I0.1 接通时,执行指令,执行时,VW0 的数据/VW2 的数据,其运算结果存到 VD6 里面。其中 VW6 存放余数,VW8 存放商程序中,若把 VW0 设为 7,把 VW2 设为 2,则 VW6=1(余数),VW8=3(商),DIV_IDIV_I整数相除整数相除 结果为整数结果为整数(舍去余数舍去余数)DIV_I 指令即两个整数类型的数据进行除法除法运算,结果传到目标处(目标为整数,没有余数)。例例 1 1:当条件 I0.1 接通时,执行指令,执行时,VW10 的数据/VW12 的数据,其运算整数结果存到 VW20 里面。余数部分舍去。程序中,若把 VW10 设为 13,把 VW12 设为 3,则 VW20=4(商)。余数没有DIV_DIDIV_DI双整数相除双整数相除 结果为双整数结果为双整数(舍去余数舍去余数)苏州天天自动化 PLC 培训中心地址:苏州吴中宝丰路 1 号咨询:400-8169-114DIV_DI 指令即两个双整数类型的数据进行除法除法运算,结果传到目标处(目标为双整数,舍去余数)。例例 1 1:当条件 I0.1 接通时,执行指令,执行时,VD30 的数据/VD40 的数据,其运算整数结果存到 VD50 里面。余数部分舍去。程序中,若把 VW30 设为 7,把 VW40 设为 2,则 VD50=1(商)。余数没有INC_B-INC_B-字节递增(即加字节递增(即加 1 1)说明:INC_B 指令使被执行对象(字节类型)进行加一运算程序 1:I0.1 接通,程序扫描一次,则 VB1 内的值就加 1,因此上述程序中只要 I0.1 接通过,则 VB1 内的值会随着扫描周期一直累加,当累加到 255 时,下一次就会溢出,变为 0,然后重新由 0 累加若想让 I0.1 接通时,VB1 内的值只加 1,那么可以加一个上升沿脉冲来解决:INC_W-INC_W-字递增(即加字递增(即加 1 1)说明:INC_W 指令使被执行对象(字类型)进行加一运算程序 1:I0.1 接通,程序扫描一次,则 VW1 内的值就加 1,与 INC_B 指令一样,只不过指苏州天天自动化 PLC 培训中心地址:苏州吴中宝丰路 1 号咨询:400-8169-114令中的数据类型为字INC_D-INC_D-双字递增(即加双字递增(即加 1 1)说明:INC_D 指令使被执行对象(双字类型)进行加一运算程序 1:I0.1 接通,程序扫描一次,则 VD1 内的值就加 1,与 INC_B 指令一样,只不过指令中的数据类型为双字DEC_B-DEC_B-字节递减(即减字节递减(即减 1 1)说明:DEC_B 指令使被执行对象(字节类型)进行减加一运算程序 1:I0.1 接通,程序扫描一次,则 VB1 内的值就减 1,因此上述程序中只要 I0.1 接通过,则 VB1 内的值会随着扫描周期一直减 1,当减到 0 时,下一次就会溢出,变为 255,然后一直减 1。若想让 I0.1 接通时,VB1 内的值只减 1,那么可以加一个上升沿脉冲来解决:DEC_W-DEC_W-字递减(即减字递减(即减 1 1)说明:DEC_W 指令使被执行对象(字类型)进行减加一运算程序 1:I0.1 接通,程序扫描一次,则 VW1 内的值就减 1,与 DEC_B 指令一样,只不过指苏州天天自动化 PLC 培训中心地址:苏州吴中宝丰路 1 号咨询:400-8169-114令中的数据类型为字INC_D-INC_D-双字递减(即减双字递减(即减 1 1)说明:INC_D 指令使被执行对象(双字类型)进行减一运算程序 1:I0.1 接通,程序扫描一次,则 VD1 内的值就减 1,与 DEC_B 指令一样,只不过指令中的数据类型为双字案例练习:要求:按下按钮 I0.0,机械手根据按钮动作次数做单步动作案例分析 1:如下图所示的自动售货机示意图,其工作要求如下:1.此售货机可投入 1 元、3 元或 5 元硬币。2.当投入的硬币总值超过 12 元时,汽水指示灯亮;当投入的硬币总值超过 15 元时,汽水及咖啡按钮指示灯都亮。3.当汽水灯亮时,按汽水按钮,则汽水排出 7s 后自动停止,这段时间内,汽水指示灯闪动。4.当咖啡灯亮时,按咖啡按钮,则咖啡排出 7s 后自动停止,这段时间内,咖啡指示灯闪动。5.若汽水或咖啡按出后,还有一部分余额,则找钱指示灯亮,按下找钱按钮,自动退出多余的钱给另一个数据寄存器 VW2,,找钱指示灯灭掉,并将找钱的余额清掉.苏州天天自动化 PLC 培训中心地址:苏州吴中宝丰路 1 号咨询:400-8169-1141.I/O 地址分配如下:1 元币感应器-I0.0汽水指示灯-Q0.03 元币感应器-I0.1咖啡指示灯-Q0.15 元币感应器-I0.2找钱指示灯-Q0.2汽水按钮 1-I0.3汽水阀门-Q0.3咖啡按钮 1-I0.4咖啡阀门-Q0.43.梯形图程序计算投入的钱的总额:指示灯的控制阀门的开启苏州天天自动化 PLC 培训中心地址:苏州吴中宝丰路 1 号咨询:400-8169-114余额的计算找钱,这里将钱总余额 VW0 里面的数据赋给退钱寄存器 VW2,并将余额清零,至于怎么退钱这里不再展开综合案例综合案例 2 2 2 2:交通灯控制:交通灯控制苏州天天自动化 PLC 培训中心地址:苏州吴中宝丰路 1 号咨询:400-8169-114要求:交通显示器由三种颜色,通过红、绿、黄三个灯来显示不同的颜色。按下启动按钮,系统开始工作,工作顺序及要求如下:首先,红灯亮,显示器由 30S 开始倒计时,1 秒钟减一次,直到为 0,红灯灭然后黄灯亮,显示器由 4 开始倒计时,1 秒钟减一次,直到为 0,黄灯灭然后绿灯亮,显示器由 30 开始倒计时,1 秒钟减一次,当减到 8 时,绿灯闪烁(频率 1 秒或 0.5 秒),减为 0 时,绿灯灭,开始下一轮的循环过程中,只要按下停止按钮,系统停止,指示灯灭掉,显示器不显示。首先我们把输入新出信号分配好(此案例的 I/O 信号比较简单)1 1 输入点:输入点:2 2 输出点:输出点:启动按钮:I0.0红灯信号:Q0.0停止按钮:I0.1黄灯信号:Q0.1绿灯信号:Q0.2显示器信号 Q1.0Q1.7本系统主要分为 4 大块,动作流程如下图所示:按照动作流程,编写的程序如下苏州天天自动化 PLC 培训中心地址:苏州吴中宝丰路 1 号咨询:400-8169-114苏州天天自动化 PLC 培训中心地址:苏州吴中宝丰路 1 号咨询:400-8169-114