S7-200 PLC基础教程第2版电子教案_第1页
S7-200 PLC基础教程第2版电子教案_第2页
S7-200 PLC基础教程第2版电子教案_第3页
S7-200 PLC基础教程第2版电子教案_第4页
S7-200 PLC基础教程第2版电子教案_第5页
已阅读5页,还剩108页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

S7-200PLC基础教程第2版第1章概述1.1PLC的基本概念与基本结构1.1.1

PLC的基本概念

可编程序控制器是一种数字运算操作的电子系统,专为在工业环境下应用而设计。它采用可编程序的存储器,用来在其内部存储执行逻辑运算、顺序控制、定时、计数和算术运算等操作的指令,并通过数字式、模拟式的输入和输出,控制各种类型的机械或生产过程。可编程序控制器及其有关设备,都应按易于使工业控制系统形成一个整体,易于扩充其功能的原则设计。图1-1PLC控制系统示意图

1.1.2

PLC的基本结构1.2

PLC的特点与应用领域1.2.1

PLC的特点1.编程方法简单易学2.功能强,性能价格比高3.硬件配套齐全,用户使用方便,适应性强4.可靠性高,抗干扰能力强5.系统的设计、安装、调试工作量少6.维修工作量小,维修方便7.体积小,能耗低1.2.2

PLC的应用领域1.开关量逻辑控制2.运动控制3.闭环过程控制4.数据处理5.通信联网PLC的物理结构:整体式、模块式

第2章

PLC的硬件与工作原理

2.1

PLC的硬件2.1.1PLC的物理结构

图2-1S7-200CPU模块的外形图

2.1.2CPU模块中的存储器

存储器分类与特点:RAM、ROM、EPROM、EEPROM2.1.3I/O模块图2-3输入电路

图2-4继电器输出电路

图2-5场效应管输出电路

2.2PLC的工作原理2.2.1用触点和线圈实现逻辑运算

图2-6基本逻辑电路

图2-7电机控制电路

2.2.2PLC的操作模式

RUN模式执行用户程序,“RUN”LED亮。

STOP模式不执行用户程序,可将用户程序和硬件设置信息下载到PLC。TERM(终端)模式与通信有关。

CPU模块上的模式开关在RUN位置时,上电自动进入RUN模式。

PC-PLC之间建立起通信连接后,若模式开关在RUN或TERM位置,可用编程软件中的命令改变CPU的工作模式。

2.2.3PLC的工作原理中断程序的处理与立即I/O指令可提高响应速度。

图2-9PLC外部接线图与梯形图

LD I0.1O Q0.0AN I0.2= Q0.0

外部输入电路接通时,对应的输入映像寄存器为ON(1状态),梯形图中对应的常开触点闭合,常闭触点断开。梯形图中Q0.0的线圈“通电”,对应的硬件继电器的常开触点闭合,接在标号为0.0的端子的外部负载工作。2.3S7-200系列PLC

西门子PLC的分类:S7、M7、C7、WinAC。2.3.1

CPU模块CPU221/222/224/226集成I/O点:10/14/24/40点;程序空间4096~24576B。最大DI/DO256/256点;最大AI/AO35/32点;最多7个扩展模块。定时器/计数器256/256点;高速计数器4/6点30kHz,2点20kHz高速输出;模拟电位器1/2个,实时钟,1/2个RS-485接口;4点输入中断,2个定时中断(1~255ms)。CPU224XP:2AI、1AO,2通信口,高速输入200kHz、高速输出100kHz。PPI、MPI、自由通信口协议和PROFIBUS点对点协议;使用STEP7-Micro/WIN编程软件。2.3.2数字量扩展模块数字量I/O:8DI、16DI、4DO、8DO、4/4、8/8、16/16、32/32DI/DO。输入有24VDC和230VAC两种,输出有24VDC和继电器型。2.3.3

模拟量扩展模块与热电偶热电阻扩展模块模拟量模块的作用:A/D转换与D/A转换。模拟量I/O:12位4AI、2AO、4AI/1AO;15位4路热电偶、2路热电阻模块。模拟量输入模块有多种量程(与模块型号有关),用模块上的DIP开关设置量程。

【例2-1】某发电机的电压互感器的电压比为10kV/100V(线电压),电流互感器的电流比为1000A/5A,功率变送器的额定输入电压和额定输入电流分别为AC100V和5A,额定输出电压为

DC10V,模拟量输入模块将DC10V输入信号转换为数字−32000~+32000。设转换后得到的数字为N,求以kW为单位的有功功率值。

解:根据互感器额定值计算的原边有功功率额定值为

图2-10模拟量输入数据字的格式

互感器原边的有功功率与转换后的数字之间的关系为17321kW/32000。使用定点数运算时的计算公式为P=N

17321/32000

(kW)【例2-3】某压力变送器将−600Pa~600Pa的压力信号转换为DC4~20mA的输出信号,模拟量输入模块将0~20mA转换为数字0~32000,设转换后得到的数字为N,试求以0.1Pa为单位的压力值。

图2-12模拟量输出数据字的格式

模拟量输出模块的量程有10V和0~20mA两种:

2.4

I/O地址分配与外部接线2.4.1本机I/O与扩展I/O的地址分配图2-13CPU224XP的本地和I/O地址分配举例

图2-14交流电源系统的外部接线

图2-15直流电源系统的外部接线

图2-16感性输出电路的处理

2.1填空(1)PLC主要由

组成。(2)继电器的线圈“断电”时,其常开触点

,常闭触点

。(3)外部输入电路接通时,对应的输入过程映像寄存器I为

状态,梯形图中对应的常开触点

,常闭触点____。(4)若梯形图中输出Q的线圈“断电”,对应的输出过程映像寄存器为

状态,在修改输出阶段后,继电器型输出模块中对应的硬件继电器的线圈

,其常开触点

,外部负载

2.5编程软件概述2.5.1软件安装与项目的组成1.软件的安装2.项目的组成(1)程序块:主程序(OB1)、可选的子程序和中断程序。程序结束时不需要加入无条件结束或返回指令。(2)数据块:用于对V存储器赋初值,由数据和注释组成。(3)系统块:用来设置系统的参数,一般可采用默认的参数值。(4)符号表:用符号来代替存储器的地址,使程序更容易理解。(5)状态表:用来监视、修改和强制程序执行时指定的变量的状态。(6)交叉引用表:列举出各操作数出现的位置和指令的助记符。

(7)项目中各部分的参数设置

2.5.2通信参数的设置与在线连接的建立

1.PC/PPI电缆的安装与设置

2.计算机与PLC在线连接的建立

3.PLC中信息的读取

4.CPU事件的历史记录2.5.3帮助功能的使用与S7-200的出错处理

1.使用在线帮助

2.从菜单获得帮助

3.出错处理2.6程序的编写与传送2.6.1编程的准备工作

1.创建项目或打开一个已有的项目

2.设置或读取PLC的型号

3.选择默认的编程语言和指令助记符集

4.设置程序编辑器的参数如果没有特殊的要求,可以全部采用系统块的默认值。图2-23电阻降压启动控制的PLC外部接线图与梯形图2.6.2程序的编写与传送举例

1.确定程序结构

2.定义符号地址

3.编写用户程序

4.对网络的操作

5.符号的显示

6.注释与符号信息表

7.编译程序

8.下载程序

9.上载程序

10.运行与调试程序2.6.3数据块的使用VB2 25,134 //从VB2开始的两个字节数值VD4 100.5 //地址为VD4的双字实数数值VW10 -1357,418,562 //从VW10开始的3个字数值

2567,5328//数据值的地址为VW16和VW182.7用编程软件监控与调试程序

2.7.1基于程序编辑器的程序状态监控

1.梯形图程序的程序状态监控

2.语句表程序的程序状态监控2.7.2用状态表监控与调试程序

1.创建新的状态表

2.打开和编辑状态表

3.起动和关闭状态表的监控功能图2-26调试程序用的工具条

4.单次读取状态信息

5.趋势图2.7.3用状态表强制改变数值

1.强制的基本概念显式、隐式和部分隐式强制

2.强制的操作方法全部写入,强制对单个操作数取消强制全部取消强制,读取全部强制

3.在STOP模式下写入和强制输出2.7.4调试用户程序的其他方法

1.在RUN模式下程序编辑。

2.使用书签

3.单次扫描

4.多次扫描1.S7-200保存程序和数据的方法

RAM和EEPROM的特点1)用CPU中的超级电容器保存RAM中的V、M、T、C存储区数据(50h或100h)。2)用可选的电池卡延长RAM保持信息的时间。3)在CPU模块掉电时,设置为断电保持的MB0~MB13自动地被保存在EEPROM中。4)数据块指定的V存储区的值下载后保存在EEPRM中。5)使用EEPROM存储卡。2.用系统块设置PLC断电后的数据保存方式3.开机后数据的恢复4.用程序将V存储器的数据复制到EEPROM2.8使用系统块设置PLC的参数2.8.1S7-200保存程序和数据的方法与有关的设置

2.8.2创建CPU密码

1.密码的作用默认的是1级(无密码)。2级禁止写,3级禁止读写,4级有密码也不能上载程序。

2.密码的设置

3.忘记密码的处理执行菜单命令“PLC”→“清除”,在对话框中输入“CLEARPLC”(不区分大小写),清除密码和程序。

4.POU和项目文件的加密2.8.3输出表与输入滤波器的设置

1.输出表的设置

2.数字量输入滤波器的设置

3.模拟量输入滤波器的设置2.8.4其他参数的设置

1.脉冲捕捉功能

2.后台通信时间1.仿真软件不需要安装,不能模拟S7-200的全部指令和全部功能。2.硬件设置执行菜单命令“配置”→“CPU型号”,选择CPU的型号。双击紧靠已配置的模块右侧的方框,可添加I/O扩展模块。3.生成ASCII文本文件在编程软件中打开编译成功的OB1,执行菜单命令“文件”→“导出”。4.下载程序5.模拟调试程序如果用户程序中有仿真软件不支持的指令或功能,点击【运行】按钮后,“RUN”LED的状态不变。用鼠标点击模块下面的小开关产生输入信号。6.监视变量执行菜单命令“查看”→“内存监视”,在出现的对话框中,可以监视V、M、T、C等内部变量的值。用二进制格式监视字节、字和双字,可以在一行中同时监视多个位变量。2.9S7-200仿真软件的使用图2-38仿真软件画面

第3章PLC程序设计基础

3.1PLC的编程语言与程序结构3.1.1PLC编程语言的国际标准IEC61131-3标准的5种编程语言:1)顺序功能图(SequentialFunctionChart);2)梯形图(LadderDiagram);3)功能块图(FunctionBlockDiagram);4)指令表(InstructionList);5)结构文本(StructuredText)。

图3-1PLC的编程语言

图3-2梯形图与语句表 图3-3功能块图“能流”(PowerFlow)只能从左向右流动。1个网络(Network)中只能放1块独立电路。功能块图(FBD)类似于数字逻辑门电路,“LOGO!”使用FBD。STEP7-Micro/WIN的IEC61131-3指令集只提供梯形图、功能块图。3.1.2S7-200的程序结构S7-200的程序由主程序、子程序和中断程序组成。1.主程序:每次扫描都要执行主程序。每个项目都必须且只能有一个主程序(OB1)。2.子程序:可以多次调用,简化程序代码、减少扫描时间、容易移植到别的项目。3.中断程序:在中断事件发生时由PLC的操作系统调用。

3.2存储器的数据类型与寻址方式3.2.1数据在存储器中存取的方式

1.用1位二进制数表示开关量。

I3.2:“字节.位”寻址方式。

2.多位二进制数:2#1010=123+022+121+020=10。

3.十六进制数:用于简化二进制数的表示方法,“逢16进1”,用0~9和A~F来表示16个数,16#2F对应的十进制数为2161+15160=47。

4.字节、字与双字

图3-5字节、字与双字以起始字节的地址作为字和双字的地址。起始字节为最高位的字节。I、Q、V、M、S、SM、L均可按位、字节、字和双字来存取。5.负数的表示方法用二进制补码表示有符号数,最高位为符号位,最大的16位正数为16#7FFF(32767)。6.BCD码BCD码用4位二进制数来表示1位十进制数。十进制数23对应的BCD码为16#23。BCD码用于输入输出设备。3.2.2CPU的存储区1.输入过程映像寄存器(I)2.输出过程映像寄存器(Q)3.变量存储区V是全局存储器,可以被所有的POU存取。4.位存储区(M)5.定时器存储区(T)6.计数器存储区(C)7.高速计数器(HC)8.32位累加器(AC0~AC3)可以按字节、字和双字来存取。按字节、字只能存取累加器的低8位或低16位。9.特殊存储器(SM)特殊存储器(SM)标志位:SM0.0一直为1状态;SM0.1仅在执行用户程序的第一个扫描周期为1状态。SM0.4和SM0.5分别提供周期为1分钟和1秒的时钟脉冲。SM1.0、SM1.1和SM1.2分别为零标志、溢出标志和负数标志。10.局部存储器L作为暂时存储器,或给子程序传递参数。11.模拟量输入字(AI)从偶数字节地址开始(例如AIW2),为只读数据。12.模拟量输出字(AQ)从偶数字节地址开始(例如AQW2),用户不能读取。13.顺序控制继电器(S):顺序控制编程用。14.常数的表示方法与范围15.实数(浮点数):在编程软件中,用小数表示浮点数。16.字符串的格式

I0.0为绝对地址,%I0.0是IEC编辑器中的地址。

#INPUT1:局部变量符号地址;“INPUT1”:全局符号地址。“#”号和双引号是编程软件自动添加的。3.2.3直接寻址与间接寻址直接寻址指定了存储器的区域、长度和位置,例如VB200。图3-8使用指针的间接寻址

【例3-1】某发电机在计划发电时每个小时有一个有功功率给定值,从0时开始,这些给定值依次存放在VW100~VW146中,共24个字。从实时时钟读取的小时值保存在VD20中,用间接寻址取出当时的功率给定值。

LD SM0.0MOVD &VB100,VD10 //表的起始地址送VD10+D VD20,VD10+D VD20,VD10 //起始地址加偏移量MOVW *VD10,VW30 //读取表中的数据,

//*VD10为当前的有功功率给定值

3.3位逻辑指令3.3.1触点指令与赋值指令并联触点总是并在它前面已经连好的电路的两端。

图3-9触点与输出指令

图3-10上升沿检测

图3-11ALD与OLD指令的堆栈操作

图3-12ALD与OLD指令

图3-13语句表与梯形图

【例3-3】

已知图3-13中的语句表程序,画出对应的梯形图。

图3-14堆栈指令

图3-15堆栈指令的应用

图3-16堆栈在双重分支电路中的应用

图3-17立即触点与立即输出指令

图3-18置位指令与复位指令

图3-20取反与跳变指令

3.3.2输出类指令与其他指令

图3-19置位优先与复位优先触发器

3.4定时器与计数器指令3.4.1定时器指令

图3-21接通延时定时器

图3-22上升沿触发单稳态电路图3-23保持型接通延时定时器

图3-22断开延时定时器

图3-25加计数器

图3-26减计数器

图3-27加减计数器

装载输入(LD)为ON时,计数器位被复位,并把设定值装入当前值。减至0时,停止计数,计数器位被置1。

3.4.2计数器指令

习题1.填空(1)接通延时定时器(TON)的输入(IN)电路

时开始定时,当前值大于等于设定值时其定时器位变为

,其常开触点

,常闭触点

,(2)接通延时定时器(TON)的输入(IN)电路

时被复位,复位后其常开触点

,常闭触点

,当前值等于

。(3)接在断开延时定时器IN输入端的输入电路接通时,定时器位变为

,当前值被

。输入电路断开后,开始

。当前值等于设定值时,输出位变为

,当前值

。(4)保持型接通延时定时器的输入电路断开时,当前值

。(5)若加计数器的计数输入电路(CU)

、复位输入电路(R)

,计数器的当前值加1。当前值大于等于设定值(PV)时,其常开触点

,常闭触点

。复位输入电路

时,计数器被复位,复位后其常开触点

,常闭触点

,当前值为

。(6)赋值指令(=)不能用于

过程映像寄存器。(7)SM

在首次扫描时为ON,SM0.0一直为

。图3-34梯形图改错

第4章

数字量控制系统梯形图程序设计方法

4.1梯形图的经验设计法与继电器电路转换法4.1.1梯形图中的基本电路

图4-1 起保停电路与置位复位电路

图4-2 定时范围的扩展

图4-3闪烁电路

4.1.2经验设计法图4-4异步电动机主电路图4-5PLC外部接线图

4.1.3

根据继电器电路图设计梯形图的方法图4-6自耦减压启动电路

图4-8梯形图4.1.4设计中应注意的问题

1.设计PLC外部接线图应注意的问题

(1)正确确定PLC的输入信号和输出负载(2)输入触点类型的选择(3)硬件互锁电路(4)外部负载的额定电压

2.梯形图结构的选择

3.应考虑PLC的工作特点

4.时间继电器瞬动触点的处理

5.尽量减少PLC的输入信号和输出信号

6.梯形图的优化设计4.2顺序控制设计法与顺序功能图4.2.1顺序控制设计法4.2.2步与动作

1.步的基本概念

2.初始步

3.活动步

4.与步对应的动作或命令图4-9波形图 图4-10顺序功能图图4-11动作

4.2.3有向连线与转换条件

图4-12转换条件图4-13单序列、选择序列与并行序列

4.2.4顺序功能图的基本结构

图4-14顺序功能图

4.2.5顺序功能图中转换实现的基本规则

1.转换实现的条件

1)该转换所有的前级步都是活动步。

2)相应的转换条件得到满足。

2.转换实现应完成的操作

1)使所有的后续步变为活动步。

2)使所有的前级步变为不活动步。

图4-15转换的同步实现

图4-16信号关系图

3.绘制顺序功能图时的注意事项

(1)两个步绝对不能直接相连,必须用一个转换将它们分隔开。(2)两个转换也不能直接相连,必须用一个步将它们分隔开。(3)不要漏掉初始步。(4)在顺序功能图中一般应有由步和有向连线组成的闭环。4.顺序控制设计法的本质图4-33改错

第5章顺序控制梯形图的设计方法5.1使用起保停电路的顺序控制梯形图设计方法

图5-2顺序功能图和梯形图图5-3选择序列与并行序列

图5-4人行横道交通灯波形图与顺序功能图

图5-6仅有两步的闭环的处理

5.2以转换为中心的顺序控制梯形图设计方法

图5-7运输带控制系统顺序功能图与梯形图

图5-8选择序列与并行序列

图5-9转换的同步实现

图5-10顺序功能图5.3使用SCR指令的顺序控制梯形图设计方法

图5-12顺序功能图与梯形图

图5-13顺序功能图与梯形图

图5-15剪板机控制的顺序功能图

图5-15剪板机控制的梯形图

5.4具有多种工作方式的系统的顺序控制梯形图设计方法5.4.1系统的硬件结构与工作方式

图5-16机械手示意图

图5-17操作面板

图5-18外部接线图

5.4.2使用起保停电路的编程方法

图5-19OB1程序结构

图5-20公用程序

图5-21手动程序

图5-25自动返回原点的顺序功能图与梯形图

第6章

PLC的功能指令

6.1功能指令概述6.1.1功能指令的学习方法6.1.2

使能输入与使能输出图6-1EN与ENO

LDI2.4SQRTVD0,VD4AENOMOVBVB8,QB2VD0为负数时无能流流出。删除AENO后两个方框变为并联。

6.1.3梯形图中的网络与指令一个网络中只能有一块独立电路。输入语句表指令时必须使用英文的标点符号。

6.2程序控制指令

1.条件结束指令与停止指令

2.监控定时器复位指令

3.循环指令【例6-1】在I0.0=1的上升沿,求VW100~VW108中5个字的累加和。

网络1LD I0.0EUMOVB 0,AC0 //清累加器0MOVD &VB100,AC1 //累加器1(存储区指针)指向VB100FOR VW0,1,5 //循环开始网络2LD SM0.0+I *AC1,AC0 //字累加+D 2,AC1 //指针AC1的值加2,指向下一个变量存储器字网络3NEXT //循环结束网络4LD I0.0 EUMOVD AC0,VD10 //保存运算结果

6.3局部变量表与子程序6.3.1局部变量表

1.局部变量与全局变量程序中的每个程序组织单元POU(ProgramOrganizationalUnit)均有由64字节L存储器组成的局部变量表。局部变量只在它被创建的POU中有效,全局符号在各POU中均有效。局部变量有以下优点:

1)尽量使用局部变量的子程序易于移植到别的项目。

2)如果使用临时变量(TEMP),同一片物理存储器可以在不同的程序中重复使用。

2.局部变量的类型

TEMP(临时变量):暂时保存在局部数据区中的变量。主程序或中断程序的局部变量表只有TEMP变量。

IN(输入变量):由调用它的POU提供的传入子程序的输入参数。

OUT(输出变量):子程序返回给调用它的POU的输出参数。

IN_OUT(输入_输出变量):其初始值由调用它的POU提供,并用同一变量将子程序的执行结果返回给调用它的POU。

3.局部变量的地址分配

4.在局部变量表中增加新的变量

6.3.2子程序的编写与调用

1.子程序的作用子程序将程序分成容易管理的小块,使程序结构简单清晰,易于查错和维护。子程序调用是有条件的,可以多次调用,使用子程序可以减少扫描时间。

2.子程序的创建

3.子程序的调用举例图6-4局部变量表与模拟量计算子程序

图6-5在主程序中调用子程序

LDI0.4CALL模拟量计算,AIW2,VW20,+2356,VD40

【例6-2】

设计求V存储区连续的若干个字的累加和的子程序。下面是名为“求和”的子程序的局部变量表和STL程序代码。子程序中的*#POINT是地址指针POINT指定的地址中字变量的值。

网络1LD SM0.0MOVD 0,#RESULT //清结果单元FOR #COUNT,1,#NUMB //循环开始网络2LD SM0.0ITD *#POINT,#TMP1 //将待累加的整数转换为双整数+D #TMP1,#RESULT //双整数累加+D 2,#POINT //指针值加2,指向下一个字网络3NEXT

//循环结束图6-7在OB1中调用子程序

6.4数据处理指令6.4.1比较指令

图6-8比较触点指令图6-9自复位接通延时定时器

6.4.2数据传送指令

1.字节、字、双字和实数的传送

2.字节立即读指令MOV_BIR读取1个字节的物理输入,字节立即写指令MOV_BIW写1个字节的物理输出。

3.字节、字、双字的块传送指令“BMBVB20,VB100,4”指令将VB20~VB23中的数据被传送到VB100~VB103。

4.字节交换指令6.4.3移位与循环指令

1.右移位和左移位指令

2.循环右移位和循环左移位指令

图7-12移位与循环移位指令

6.4.4数据转换指令

1.段译码指令,2.数字转换指令

3.实数转换为双整数的指令:ROUND将实数四舍五入后转换为双字整数,TRUNC是截位取整指令。

4.译码指令 5.编码指令6.4.5表功能指令

1.填表指令图6-14填表指令举例

图6-15查表指令举例命令参数CMD=1~4,分别代表“=”、“<>”(不等于)、“<”和“>”。

图6-16先入先出指令举例

图6-17存储器填充指令

6.4.6读写实时时钟指令读实时时钟指令TODR从实时钟读取当前时间和日期,并把它们装入以T为起始地址的8字节缓冲区,依次存放年、月、日、时、分、秒、0和星期,1为星期日,2~7为星期1~6。写实时时钟指令TODW将起始地址为T的8字节缓冲区中的时间和日期写入实时钟。图6-18时钟指令

【例6-5】出现事故时,I0.0的上升沿产生中断,使输出Q1.0立即置位,同时将事故发生的日期和时间保存在VB10~VB17中。//主程序OB1LD SM0.1 //第一次扫描时ATCH 0,0 //指定在I0.0的上升沿执行0号中断程序ENI //允许全局中断//中断程序0(INT_0)LD SM0.0 //该位总是为ONSI Q1.0,1 //使Q1.0立即置位TODR VB10 //读实时时钟【例6-6】用实时时钟指令控制路灯的定时接通和断开,20:00开灯,06:00关灯,下面是语句表程序。LD SM0.0TODR VB0 //读实时时钟,小时值在VB3LDB>= VB3,16#20 //如果在

20点~0点(日期、时间值用BCD码表示)OB< VB3,16#06 //或0点~6点= Q0.0 //点亮路灯6.5数学运算指令与逻辑运算指令6.5.1数学运算指令梯形图:IN1+IN2=OUT,IN1-IN2=OUTIN1*IN2=OUT,IN1/IN2=OUT

语句表:IN1+OUT=OUT,OUT-IN1=OUTIN1*OUT=OUT,OUT/IN1=OUT16位整数运算、32位双整数运算、实数运算和加1、减1指令。整数乘、除法的操作数为两个16位整数,乘积或商均为16位,不保留余数。双整数乘、除法的操作数和运算结果均为32位。此外还有

MUL:整数乘法产生双整数指令。

DIV:整数除法产生双整数指令。两个16位整数相除,结果的高16位为余数,低16位为商。

【例6-7】在输入信号I0.4的上升沿,用模拟电位器0来设置定时器T37的设定值(5~20s),即从SMB28读出的数字0~255对应于5~20s。设读出的数字为N,100ms定时器的设定值为(200–50)×N/255+50=150×N/255+50(0.1s)网络1LD I0.4EU //在I0.4的上升沿MOVB SMB28,AC0MUL +150,AC0 //150乘以模拟电位器的转换值/D +255,AC0 //除以255,双整数除法+I +50,AC0 //加偏移量50(5s)MOVWAC0,VW10网络2LD I0.5TONT37,VW10 //T37以VW10中的数值为设定值

6.5.2浮点数函数运算指令包括正弦指令SIN、余弦指令COS和正切指令TAN,自然对数指令LN和自然指数指令EXP。角度的单位为弧度。6.5.3逻辑运算指令

【例6-8】在I4.0的上升沿执行下面程序中的逻辑运算。LD I4.0EUINVB VB0 //字节取反指令ANDB VB1,VB2 //字节与指令

ORB VB3,VB4 //字节或指令XORB VB5,VB6 //字节异或指令6.6中断程序与中断指令6.6.1中断程序中断允许指令ENI允许处理所有被连接的中断事件。禁止中断指令DISI禁止处理所有中断事件。进入RUN模式时自动禁止中断,中断程序越短越好。6.6.2中断事件与中断指令中断连接指令ATCH建立中断事件(EVNT)与对应的中断程序(INT)的联系。中断事件由中断事件号指定(见表7-12),中断程序由中断程序号指定。中断分离指令DTCH断开中断事件与中断程序之间的联系。中断优先级(见表7-12)分组:通信(最高优先级)、I/O中断和定时中断。

I/O中断:I0.0~I0.3上升沿、下降沿中断;HSC当前值等于设定值、计数方向改变和计数器外部复位中断;输出完指定的脉冲数时产生的中断。图6-22中断指令

定时中断0/1的周期为1~255ms

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论