针对S7-300/400 PLC的开关量控制,需要重点掌握STEP7的位逻辑指令。STEP 7位逻辑指令可以分为位逻辑运算指令、定时器指令、计数器指令、位测试指令。其余置位和复位指令、上升沿与下降沿、取反等与S7-200等小型PLC相同,不再一一列出。STEP 7定时器可分为5种,见表3-1。......
2023-06-18
对于复杂的开关量控制,尤其是点数多、过程复杂的项目来说,还必须了解STEP 7数据指令。如图3-5所示的万能转换开关,其位置多达12挡,如果纯粹用位来表示就会非常复杂,而采用数据变量就很简单,如MW=0~11就可以表示各挡位置。
STEP 7位数据指令可以分为装载与传送指令、比较指令、算术运算指令、数据逻辑运算指令、移位和循环指令、数据块指令。
1.数据格式
常见的数据包括:
(1)BCD码
单个的十进制数需要用4位二进制数进行编码。之所以需要4位二进制数表示是因为十进制的最大数9需要至少4位二进制数表示(1001)。为了用BCD码表示十进制数的0~9,使用与二进制数的相同表示方法。4位二进制数共有16可能组合,其中6种没有使用。这些组合称作伪4位二进制编码。
(2)整数
数据类型INT是整数(16位)。符号位(第15位)表示所处理的是正数还是负数(“0”=正数,“1”=负数)。整数的表示范围是-32768~+32767。整数占用存储器的一个字。用二进制表示,一个整数的负数用其正数的补码表示。所有的位取反加“1”可以得到正数的补码。
图3-5 万能转换开关
(3)实数
实数(也称浮点数)是用十进制数(例如0.339或-11.32)表示的正数或负数。为了表示10的乘方次数,可以用幂的形式表示实数。例如:1024可以表示为1.024E3。实数占用存储器的两个字,最高位是符号位。其余的位代表指数和尾数。实数的表示范围是:-3.402823×1038~3.402823×1038。
图3-6所示为整数205和实数125.5的数据保存格式。
图3-6 整数与实数的数据保存格式
以16位为例,图3-7所示为PG编程器内的数据下载到PLC内的实际存储情况。
图3-7 PG编程器内的数据下载到PLC后的数据变化
2.数据装载与传送指令
图3-8所示为数据装载与传送指令的三种方式,需要注意的是在字或双字指令中,高位赋值给低字节,而低位赋值给高字节。
图3-8 数据装载与传送指令
3.数据比较指令
图3-9所示为比较指令,用于比较累加器2与累加器1中的数据大小,比较时应确保两个数的类型相同。数据类型可以是整数、实数和长整数等。
4.算术运算指令
图3-10所示为基本数学运算指令,除此之外还可以有高级数学运算指令,如浮点数运算和三角函数计算等。
图3-9 数据比较指令
图3-10 基本数学运算指令
5.数据类型转换指令
由于PLC运算中存在不同的数据类型,现在需要将它们进行类型转换(如图3-11所示)。对于该数据转换任务,可以采取图3-12所示的数据转换,即先将MW12中的整数转换为MD14的双整数(指令为I_DI),然后将MD14转换为实数(指令为DI_R)。
6.数据逻辑运算指令
S7除了位逻辑运算之外,还可以大量地进行字或双字的数据逻辑运算,图3-13所示为典型的字逻辑运算异或WXOR_W、或WOR_W、与WAND_W指令。
数据逻辑运算遵循每一位的位逻辑原理,具体演算过程如图3-14所示。
图3-11 数据转换任务
图3-12 数据转换LAD
图3-13 字逻辑运算LAD指令
图3-14 字逻辑运算演算过程
7.移位和循环移位指令
移位指令将累加器1低字中或这个累加器1中的内容左移或右移,移动的次数在累加器2中或直接在指令中以常数给出。如图3-15所示是将MW4进行左移2位,其演算过程如图3-16所示。
图3-15 左移
图3-16 演算过程
针对S7-300/400 PLC的开关量控制,需要重点掌握STEP7的位逻辑指令。STEP 7位逻辑指令可以分为位逻辑运算指令、定时器指令、计数器指令、位测试指令。其余置位和复位指令、上升沿与下降沿、取反等与S7-200等小型PLC相同,不再一一列出。STEP 7定时器可分为5种,见表3-1。......
2023-06-18
Timing菜单内是与时序相关的选项。其中Floorplan View主要应用于Floorplan规划,Omoeba View主要是为了观察设计层次以及模块位置,Physical View为了观察芯片最终状态与布线信息。基本工具栏的第二行是对于版图的操作工具栏。图8.7 EDI工具栏下面讲述使用EDI进行设计的读入的方法。图8.9 设计读入后显示界面设计的读入与存储分别可以通过File→Restore Design与File→Save Design来加以实现。......
2023-06-26
表3-5所示为数据转换指令,其中3位BCD码和7位BCD码的格式如图3-18所示。A I0.2 //如果I0.2为1L MD10 //将MD10中的双整数装入累加器1DTB //将累加器1中的数据转换为BCD码,结果仍在累加器1中图3-18 BCD码格式a)3位BCD码的格式 b)7位BCD码的格式JO OVER //运算结果超出允许范围则跳转到标号OVER处T MD20 //将转换结果传送到MD20A M4.0R M4.0 //复位溢出标志JU NEXT //无条件跳转到标号NEXT处OVER:AN M4.0S M4.0 //置位溢出标志NEXT:……......
2023-06-18
表5-27 数据传送指令注:EDMOV指令仅适合QnU系列PLC。下面以16位数据传送指令MOV为例展开说明。图5-4 K155存储在数据寄存器D8中2)浮点数据传送EMOV指令是将源操作数中存储的浮点型实数数据传送至目标软元件中去。EMOV指令是单精度浮点数据,占32位,双精度指令占64位。4)相同16位数据批量传送指令FMOV的主要功能是将数据同时传送到指定软元件开始的n点位置。......
2023-06-16
表5-29 数据转换指令1)BCD指令将S指定的软元件中的BIN数据转换成BCD数据,并将它存储在D指定的软元件中。其指令格式为’功能如图5-23所示。图5-2316 位BIN数据转换成32位浮点型实数功能图5-24 浮点型实数转换程序举例3)BIN16位数据的二进制补码。图5-25 BIN 16位数据到浮点型数 据的转换指令动作示意图图5-26 16位数据的符号取反指令示意图程序举例:当X0A为ON时,计算D10与D20中数据的差值,如果结果为负数,那么求它的绝对值,如图5-27所示。......
2023-06-16
数据块的数目和最大块长度依赖于CPU的型号。可以看出,数据块就像一个大柜子,每个字节类似于一个抽屉,存放8个位的数据。这样,对数据块的直接地址寻址和前面介绍的存储区寻址是类似的。在用户程序中使用绝对地址寻址时,一定要结合指令和数据块的符号列表仔细核对绝对地址和数据类型。......
2023-06-15
数据处理指令的使用原则:●所有操作数都是32位,可以是寄存器或立即数。后缀S表示指令的操作是否影响标志位。例如:3.ADD指令ADD{cond}{S}
2023-11-19
2)数据传送指令,加1、减1指令,逻辑运算指令不影响CY、OV和AC位。标志位的状态是控制转移类指令的判断条件。数据传送类指令是使用最频繁的指令,主要用于数据的复制、保存及交换。数据传送类指令的助记符有MOV、MOVX、MOVC、XCH、XCHD、SWAP、PUSH、POP。其通用数据传送类指令格式为MOV 目的操作数,源操作数表3-2数据传送类指令注:√表示该指令影响某一标志位。外部RAM或I/O口之间的数据传送指令共有4条。......
2023-11-17
相关推荐