Presentation is loading. Please wait.

Presentation is loading. Please wait.

第4章 S7-200系列PLC功能指令 4.1 数据处理指令 4.2 算术和逻辑运算指令 4.3 表功能指令 4.4 转换指令

Similar presentations


Presentation on theme: "第4章 S7-200系列PLC功能指令 4.1 数据处理指令 4.2 算术和逻辑运算指令 4.3 表功能指令 4.4 转换指令"— Presentation transcript:

1 第4章 S7-200系列PLC功能指令 4.1 数据处理指令 4.2 算术和逻辑运算指令 4.3 表功能指令 4.4 转换指令
4.1 数据处理指令 4.2 算术和逻辑运算指令 4.3 表功能指令 4.4 转换指令 4.5 中断指令 4.6 高速处理指令

2 4.1 数据处理指令 此类指令主要涉及对数据的非数值运算操作,主要包括数据传送、移位、交换、循环填充指令。 数据传送指令 数据传送指令用于各个编程元件之间进行数据传送。根据每次传送数据的数量多少可分为:单个传送和块传送指令。 1. 单个数据传送指令 单个数据传送指令每次传送一个数据,传送数据的类型分为:字节传送、字传送、双字传送和实数传送。 (1) 字节传送指令 字节传送指令又分为:普通字节传送指令和立即字节传送指令。 MOVB:字节传送指令。指令格式如下:

3 BIR:立即读字节传送指令。指令格式如下:
BIW:立即写字节传送指令。指令格式如下:

4 (2) 字传送指令 MOVW:字传送指令。指令格式如下: (3) 双字传送指令 MOVD:双字传送指令。指令格式如下:

5 块传送指令可用来一次传送多个数据,最多可将255个数据组成一个数据块,数据块的类型可以是字节块、字块和双字块。
(4) 实数传送指令 MOVR:实数传送指令。指令格式如下: 2. 块传送指令 块传送指令可用来一次传送多个数据,最多可将255个数据组成一个数据块,数据块的类型可以是字节块、字块和双字块。 (1) 字节块传送指令 BMB:字节块传送指令。指令格式如下:

6 (2) 字块传送指令 BMW:字块传送指令。指令格式如下: (3) 双字块传送指令 BMD:双字块传送指令。指令格式如下:

7 移位指令 移位指令分为左、右移位和循环左、右移位以及移位寄存器指令三大类。 1. 左移和右移指令 左移和右移指令的功能是将输入数据IN左移或右移N位后,把结果送到OUT中。 (1) 字节移位指令 SLB:字节左移指令; SRB:字节右移指令。

8 指令格式如下: (2) 字移位指令 SLW:字左移指令; SRW:字右移指令。

9 (3) 双字移位指令 SLD:双字左移指令; SRD:双字右移指令。 指令格式如下: 2. 循环左移和循环右移指令 指令特点: 被移位的数据是无符号的;

10 在移位时,存放被移位数据的编程元件的移出端与另一端相连,又与特殊继电SM1. 1相连,移出位在被移到另一端的同时,也进入SM1
移位次数N与移位数据的长度有关,如N小于实际的数据长度,则执行N次移位;如N大于数据长度,则执行移位的次数为N除以实际数据长度的余数; 移位次数N为字节型数据。 (1) 字节循环移位指令 RLB:字节循环左移指令; RRB:字节循环右移指令。 指令格式如下:

11 (2) 字循环移位指令 RLW:字循环左移指令; RRW:字循环右移指令。 指令格式如下:

12 (3) 双字循环移位指令 RLD:双字循环左移指令; RRD:双字循环右移指令。 指令格式如下: 3. 移位寄存器指令 SHRB:移位寄存器指令。

13 移位寄存器的数据类型无字节型、字型、双字型之分
移位寄存器最低位的地址为S_BIT;最高位地址的计算方法为MSB=(∣N∣-1+(S_BIT的位号))/8;最高位的字节号为:MSB的商+S_BIT的字节号;最高位的位号为:MSB的余数。 移位寄存器的移出端与SM1.1连接。 移位寄存器指令影响的特殊继电器为:SM1.0(零),SM1.1(溢出);影响ENO正常工作的出错条件为:SM4.3(运行时间),0006(间接寻址),0091(操作数超界),0092(计数区错误)。

14 字节交换与填充指令 1. 字节交换指令SWAP 本指令专用于对1个字长的字型数据进行处理。 指令格式如下: 2. 填充指令FILL 填充指令FILL用于处理字型数据,将字型输入数据IN填充到从OUT开始的N个字存储单元,N为字节型数据。

15 4.2 算术和逻辑运算指令 算术运算指令包括加法、减法、乘法、除法及一些常用的数学函数。逻辑运算包括与、或、非、异或以及数据比较等指令。 算术运算指令 1. 加法指令 加法操作是对两个有符号数进行相加。

16 (1) 整数加法指令 +I:整数加法指令。 指令格式如下: (2) 双整数加法指令 +D:双整数加法指令。

17 (3) 实数加法指令 +R:实数加法指令。 指令格式如下: 2. 减法指令 减法指令是对两个有符号数进行减操作,与加法指令一样,也可分为:整数减法指令(-I)、双整数减法指令(-D)和实数减法指令(-R)。

18 指令格式如下: 3. 乘法指令 乘法指令是对两个有符号数进行乘法操作。 (1) 整数乘法指令 *I:整数乘法指令。

19 (2) 完全整数乘法指令 MUL:完全整数乘法指令。 指令格式如下:

20 (3) 双整数乘法指令 *D:双整数乘法指令。 指令格式如下: (4) 实数乘法指令 *R:实数乘法指令。

21 S7-200系列PLC中的数学函数指令包括指数运算、对数运算、求三角函数的正弦、余弦及正切值。这些指令都是双字长的实数运算。
4. 除法指令 除法指令是对两个有符号数进行除法操作,除法指令也可分为:整数除法指令(/I)、完全整数除法指令(DIV)、双整数除法指令(/D)和实数除法指令(/R)。 数学函数指令 S7-200系列PLC中的数学函数指令包括指数运算、对数运算、求三角函数的正弦、余弦及正切值。这些指令都是双字长的实数运算。

22 1. 平方根函数 SQRT:平方根函数运算指令。 指令格式如下: 2. 自然对数函数指令 LN:自然对数函数运算指令。

23 3. 指数函数指令 EXP:指数函数指令。 指令格式如下: 4. 正弦函数指令 SIN:正弦函数指令。

24 5. 余弦函数指令 COS:余弦函数指令。 指令格式如下: 6. 正切函数指令 TAN:正切函数指令。

25 增减指令 增减指令又称为自动加1和自动减1指令。 1. 字节增减指令 INCB:字节加1指令; DECB:字节减1指令。 指令格式如下:

26 2. 字增减指令 INCW:字加1指令; DECW:字减1指令。 指令格式如下: 3. 双字增减指令 INCD:双字加1指令; DECD:双字减1指令。

27 逻辑运算指令 逻辑运算指令是对无符号数进行处理操作的,主要包括与、或、非、异或等操作。 1. 字节逻辑指令 ANDB:字节逻辑与指令; ORB:字节逻辑或指令; XORB:字节逻辑异或指令; INVB:字节逻辑非指令。 指令格式如下:

28 2. 字逻辑指令 ANDW:字逻辑与指令; ORW:字逻辑或指令; XOTW:字逻辑异或指令; INVW:字逻辑非指令。 指令格式如下:

29 3. 双字逻辑指令 ANDD:双字逻辑与指令; ORD:双字逻辑或指令; XOTD:双字逻辑异或指令; INVD:双字逻辑非指令。 指令格式如下:

30 4.3 表功能指令 S7-200系列PLC的表功能指令包括:填表指令、表中取数指令、查表指令。 填表指令 ATT(Add To Table):填表指令。 指令格式如下: 查表指令 FND(Table Find):查表指令。

31 表中取数指令 在S7-200中,可以将表中的字型数据按照“先进先出”或“后进先出”的方式取出,送到指定的存储单元。每取一个数,EC自动减1。 1. 先进先出指令FIFO 指令格式如下:

32 2. 后进先出指令LIFO 指令格式如下: 4.4 转换指令 转换指令是对操作数的类型进行转换的指令。 数据类型转换指令 此类指令是将一个固定的数据,根据操作指令对数据类型的需要,进行相应类型的转换。

33 1. 字节与整数转换指令 BIT:字节到整数的转换指令; ITB:整数到字节的转换指令。 指令格式如下: 指令影响的特殊继电器为:SM1.1(溢出)。 影响ENO正常除数的出错条件为:SM1.1、SM4.3、0006。

34 2. 整数与双整数转换指令 ITD:整数到双整数的转换指令; DTI:双整数到整数的转换指令。 指令格式如下: 指令影响的特殊继电器为:SM1.1(溢出)。 影响ENO正常输出的出错条件为:SM1.1、SM4.3、0006。

35 3. 双整数与实数转换指令 ROUND:实数到双整数转换指令(小说部分四舍五入)。 指令格式如下: TRUNC:实数到双整数转换指令(小数部分舍去)。

36 DTR:双整数到实数转换指令。 指令格式如下: 4. 整数与BCD码转换指令 IBCD:整数到BCD码的转换指令; BCDI:BCD码到整数的转换指令。

37 编码和译码指令 1. 编码指令ENCO 指令格式如下: 2. 译码指令DECO

38 七段显示码指令SEG 本指令用于PLC输出端外接数码管的情况,指令格式如下: 字符串转换指令 本类指令是将由ASCII码表示的0~9,A~F的字符串,与十六进制值、整数、双整数及实数之间进行转换。 1. ASCII码到十六进制指令ATH 指令格式如下:

39 2. 十六进制数到ASCII码转换指令HTA 指令格式如下: 3. 整数到ASCII码转换指令ITA

40 4. 双整数到ASCII转换指令DTA 指令格式如下: 5. 实数到ASCII码转换指令RTA

41 4.5 中断指令 所谓中断,是当控制系统执行正常程序时,系统中出现了某些急需处理的异常情况或特殊请求,这时系统暂时中断现行程序,转去对随机发生的更紧迫事件进行处理(执行中断服务程序),当该事件处理完毕后,系统自动回到原来被中断的程序继续执行。 中断源 1. 中断源 中断源是中断事件向PLC发出中断请求的来源。 S7-200 CPU最多可以有34个中断源,每个中断源都分配一个编号用于识别,称为中断事件号。这些中断源大致分为三大类:通信中断、输入、输出中断和时基中断。

42 2. 中断优先级 在PLC应用系统中通常有多个中断源。当多个中断源同时向CPU申请中断时,要求CPU能将全部中断源按中断性质和处理的轻重缓急来进行排队,并给予优先权。给中断源指定处理的次序就是给中断源确定中断优先级。 中断控制 经过中断判优后,将优先级最高的中断请求送给CPU,CPU响应中断后自动保存逻辑堆栈、累加器和某些特殊标志寄存器位,即保护现场。中断处理完成后,又自动恢复这些单元保存起来的数据,即恢复现场。 中断程序 中断程序亦称中断服务程序,是用户为处理中断事件而事先编制的程序。

43 4.6 高速处理指令 高速处理指令有高速计数指令和高速脉冲输出指令两类。 高速计数指令 高速计数器HSC(High Speed Counter)在现代自动控制的精确定位控制领域有重要的应用价值。高速计数器用来累计比PLC扫描频率高得多的脉冲输入(30kHz),利用产生的中断事件完成预定的操作。 1. S7-200系列的高速计数器 S7-200系列中CPU221和CPU222有4个,它们是HC0、HC3、HC4和HC5;CPU224和CPU226有6个,它们是HC0~HC5。 2. 中断事件类型 高速计数器的中断事件大致可分为三种方式:即当前值等于预设值中断、输入方向改变中断和外部复位中断。

44 3. 工作模式和输入点的连接 (1) 工作模式 高速计数器最多有12种工作模式。不同的高速计数器有不同的模式。 高速计数器HSC0、HSC4有模式0、1、3、4、6、7、9、10; HSC1有模式0、1、2、3、4、5、6、7、8、9、10、11; HSC2有模式0、1、2、3、4、5、6、7、8、9、10、11; HSC3、HSC5只有模式0。 (2) 输入点的连接 在正确使用一个高速计数器时,除了要定义它的工作模式外,还必须注意它的输入端连接。

45 4. 高速计数指令 高速计数指令有两条:HDEF和HSC。 高速脉冲输出 高速脉冲输出功能是在PLC的某些输出端产生高速脉冲,用来驱动负载实现高速输出和精确控制。 1. 高速脉冲的输出方式和输出端子的连接 (1) 高速脉冲的输出方式 高速脉冲输出可分为:高速脉冲串输出PTO和宽度可调脉冲输出PWM两种方式。 (2) 输出端子的连接 每个CPU有两个PTO/PWM发生器产生高速脉冲串和脉冲宽度可调的波形,一个发生器分配在数字输出段Q0.0,另一个分配在Q0.1。

46 2. 相关的特殊功能寄存器 每个PTO/PWM发生器都有1个控制字节、16位无符号的周期时间值和脉宽值各1个、32位无符号的脉冲计数值1个。这些字都占有一个指定的特殊功能寄存器,一旦这些特殊功能寄存器的值被设成所需操作,可通过执行脉冲指令PLS来执行这些功能。 3. 脉冲输出指令 脉冲输出指令可以输出两种类型的方波信号,在精确位置控制中有很重要的应用。 说明: 高速脉冲串输出PTO和宽度可调脉冲输出都由PLC指令来激活输出; 操作数Q为字型常数0或1; 高速脉冲串输出PTO可采用中断方式进行控制,而宽度可调脉冲输出PWM只能由指令PLS来激活。


Download ppt "第4章 S7-200系列PLC功能指令 4.1 数据处理指令 4.2 算术和逻辑运算指令 4.3 表功能指令 4.4 转换指令"

Similar presentations


Ads by Google