1 / 46

第 4 章 S7-200 系列 PLC 功能指令

第 4 章 S7-200 系列 PLC 功能指令. 4.1 数据处理指令 4.2 算术和逻辑运算指令 4.3 表功能指令 4.4 转换指令 4.5 中断指令 4.6 高速处理指令. 4.1 数据处理指令 此类指令主要涉及对数据的非数值运算操作,主要包括数据传送、移位、交换、循环填充指令。 4.1.1 数据传送指令 数据传送指令用于各个编程元件之间进行数据传送。根据每次传送数据的数量多少可分为:单个传送和块传送指令。 1. 单个数据传送指令

palmer
Download Presentation

第 4 章 S7-200 系列 PLC 功能指令

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

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

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

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

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

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

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

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

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

  10. 在移位时,存放被移位数据的编程元件的移出端与另一端相连,又与特殊继电SM1.1相连,移出位在被移到另一端的同时,也进入SM1.1;另一端自动补0;在移位时,存放被移位数据的编程元件的移出端与另一端相连,又与特殊继电SM1.1相连,移出位在被移到另一端的同时,也进入SM1.1;另一端自动补0; • 移位次数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. 4.1.3 字节交换与填充指令 • 1. 字节交换指令SWAP • 本指令专用于对1个字长的字型数据进行处理。 • 指令格式如下: • 2. 填充指令FILL • 填充指令FILL用于处理字型数据,将字型输入数据IN填充到从OUT开始的N个字存储单元,N为字节型数据。 • 指令格式如下:

  15. 4.2 算术和逻辑运算指令 • 算术运算指令包括加法、减法、乘法、除法及一些常用的数学函数。逻辑运算包括与、或、非、异或以及数据比较等指令。 • 4.2.1 算术运算指令 • 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. 4. 除法指令 • 除法指令是对两个有符号数进行除法操作,除法指令也可分为:整数除法指令(/I)、完全整数除法指令(DIV)、双整数除法指令(/D)和实数除法指令(/R)。 • 4.2.2 数学函数指令 • S7-200系列PLC中的数学函数指令包括指数运算、对数运算、求三角函数的正弦、余弦及正切值。这些指令都是双字长的实数运算。

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

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

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

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

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

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

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

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

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

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

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

  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. 4.4.2 编码和译码指令 • 1. 编码指令ENCO • 指令格式如下: • 2. 译码指令DECO • 指令格式如下:

  38. 4.4.3 七段显示码指令SEG • 本指令用于PLC输出端外接数码管的情况,指令格式如下: • 4.4.4 字符串转换指令 • 本类指令是将由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 中断指令 • 所谓中断,是当控制系统执行正常程序时,系统中出现了某些急需处理的异常情况或特殊请求,这时系统暂时中断现行程序,转去对随机发生的更紧迫事件进行处理(执行中断服务程序),当该事件处理完毕后,系统自动回到原来被中断的程序继续执行。 • 4.5.1 中断源 • 1. 中断源 • 中断源是中断事件向PLC发出中断请求的来源。 • S7-200 CPU最多可以有34个中断源,每个中断源都分配一个编号用于识别,称为中断事件号。这些中断源大致分为三大类:通信中断、输入、输出中断和时基中断。

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

  43. 4.6 高速处理指令 • 高速处理指令有高速计数指令和高速脉冲输出指令两类。 • 4.6.1 高速计数指令 • 高速计数器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。 • 4.6.2 高速脉冲输出 • 高速脉冲输出功能是在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来激活。

More Related