PLC程序设计基础课件

上传人:我*** 文档编号:145248583 上传时间:2020-09-18 格式:PPT 页数:72 大小:1.80MB
返回 下载 相关 举报
PLC程序设计基础课件_第1页
第1页 / 共72页
PLC程序设计基础课件_第2页
第2页 / 共72页
PLC程序设计基础课件_第3页
第3页 / 共72页
PLC程序设计基础课件_第4页
第4页 / 共72页
PLC程序设计基础课件_第5页
第5页 / 共72页
点击查看更多>>
资源描述

《PLC程序设计基础课件》由会员分享,可在线阅读,更多相关《PLC程序设计基础课件(72页珍藏版)》请在金锄头文库上搜索。

1、第四讲 PLC程序设计基础,3.1 可编程序控制器的编程语言和程序结构 3.2 存储器的数据类型与寻址方式,3.1 可编程序控制器的编程语言和程序结构,3.1.1 可编程序控制器的编程语言 PLC为用户提供了完整的编程语言,以适应编制用户程序的需要。PLC提供的编程语言通常有以下几种:梯形图、指令表、顺序功能流程图和功能块图。下面以S7-200系列PLC为例加以说明。,PLC编程语言的国际标准 IEC 61131-3标准的5种编程语言: (1) 顺序功能图(Sequential Function Chart);(SFC) (2) 梯形图(Ladder Diagram);(LAD) (3) 功能

2、块图(Function Block Diagram);(FBD) (4) 指令表(Instruction List);(IL) (5) 结构文本(Structured Text)。(ST),1. 梯形图(LAD) 梯形图(LAD)编程语言是从继电器控制系统原理图的基础上演变而来的。PLC的梯形图与继电器控制系统的梯形图的基本思想是一致的,只是在使用符号和表达方式上有一定区别。 图3.1是一个典型的梯形图。左右两条垂直的线称作母线。母线之间是触点的逻辑连接和线圈的输出。,图3.1 典型的梯形图,梯形图的一个关键概念是“能流”(Power Flow),这仅是概念上的“能流”。图2.1中,把左边的母

3、线假想为电源“火线”,而把右边的母线(虚线所示)假想为电源“零线”。如果有“能流”从左至右流向线圈,则线圈被激励;如果没有“能流”,则线圈未被激励。,在梯形图中,触点代表逻辑“输入”条件,如开关、按钮、内部条件等; 线圈通常代表逻辑“输出”结果,如灯、电机接触器、中间继电器等。 对S7-200系列PLC来说,还有一种输出“盒”(方块图),它代表附加的指令,如定时器、计数器和功能指令等。,2. 指令表(STL) 指令表(STL)编程语言类似于计算机中的助记符语言,它是可编程序控制器最基础的编程语言。所谓指令表编程,是用一个或几个容易记忆的字符来代表可编程序控制器的某种操作功能。 一般来说,指令表

4、编程适合于熟悉PLC和有经验的程序员使用。,图2.2 基本指令应用举例 (a) 梯形图; (b) 指令表,3. 顺序功能流程图(SFC) 顺序功能流程图(SFC)编程是一种图形化的编程方法,亦称功能图。使用它可以对具有并行、选择等复杂结构的系统进行编程,许多PLC都提供了用于SFC编程的指令。,4. 功能块图(FBD) S7-200系列PLC专门提供了FBD编程语言,利用FBD可以查看到像普通逻辑门图形的逻辑盒指令。它没有梯形图编程器中的触点和线圈,但有与之等价的指令,这些指令是作为盒指令出现的。FBD编程语言有利于程序流的跟踪,但在目前使用较少。,图2.3 FBD简单实例,3.1.2 可编程

5、序控制器的程序结构 控制一个任务或过程,是通过在RUN方式下,使主机循环扫描并连续执行用户程序来实现的,用户程序决定了一个控制系统的功能。 广义上的PLC程序由三部分构成:主程序、子程序、中断程序。,图2.4 程序结构,用编程软件在计算机上编程时,利用编程软件的程序结构窗口双击主程序、子程序和中断程序的图标,即可进入各程序块的编程窗口。 编译时编程软件自动对各程序段进行连接。 对S7-200系列PLC的主程序、子程序和中断程序来说,它们的结束指令编程软件会在程序编译时自动加入相应的结束指令。,1主程序:每次扫描都要执行主程序。每个项目都必须且只能有一个主程序(OB1)。 2子程序:可以多次调用

6、,简化程序代码、减少扫描时间、容易移植到别的项目(SBRN)。 3中断程序:在中断事件发生时由PLC的操作系统调用(INTN)。,3.2 存储器的数据类型与寻址方式,3.2.1 数据在存储器中存取的方式 1用1位二进制数表示开关量。 I3.2:“字节. 位”寻址方式。 2多位二进制数表示数字:2#101010。 3十六进制数表示多位二进制数:用于简化二进制数的表示方法,“逢16进1”,用09和AF来表示16个数,16#2F对应的十进制数为21611516047。,存储器地址的表示方法,4字节、字与双字 以起始字节的地址作为字和双字的地址。注意:起始字节为最高位的字节。 例如:VW100,VB1

7、01为低位字节地址。 I、Q、V、M、S、SM、L均可按位、字节、字和双字来存取。,5负数的表示方法 用二进制补码表示有符号数,最高位为符号位,最大的16位正数为16#7FFF(32767) 6BCD码 BCD码用4位二进制数来表示1位十进制数。十进制数23对应的BCD码为16#23。BCD码用于输入输出设备。,3.2.2 CPU的存储区,1输入过程映像寄存器(I) a) 是PLC接收外部输入的数字量信号的窗口。 b) 外部输入电路接通时对应的映像寄存器为ON(1状态),反之为OFF(0状态) c) 输入端可以是外部常开触点或常闭触点,也可以是多个触点的串、并联电路。 d) 在梯形图中,可以多

8、次使用输入位的常开触点和常闭触点。,2输出过程映像寄存器(Q),a) 在输出刷新阶段,CPU将输出过程映像寄存器的数据传送给输出模块,驱动外部负载。 b) 如果Q0.0的线圈“通电”,继电器输出模块中对应的硬件继电器的常开触点逼和,是接在标号为0.0的端子的外部负载通电。 c) 在梯形图中,可以多次使用输出位的常开触点和常闭触点。,3变量存储区V是全局存储器,可以被所有的POU存取。 用来在程序执行过程中存放中间结果,或者用来保存与工序或任务有关的其他数据。 4位存储区(M) 类似于继电器控制系统中的中间继电器,用来存放中间操作状态或者其他控制信息。 只有32个字节。,5定时器存储区(T) 相

9、当于继电器控制系统中的时间继电器。 时间基准分为1ms,10ms,100ms。 包括定时器的位和定时器当前值寄存器,都用定时器的地址来寻址。 6计数器存储区(C) 分为加、减、加减计数器3种 用来累计其计数输入脉冲电平由低到高的次数。 7高速计数器(HC) 用来累计比CPU扫描速率更快的事件,计数过程与扫描周期无关。,832位累加器(AC0AC3)可以按字节、字和双字来存取。按字节、字只能存取累加器的低8位或低16位。 9特殊存储器(SM) 特殊存储器(SM)标志位: SM0.0一直为1状态; SM0.1仅在执行用户程序的第一个扫描周期为1状态。 SM0.4和SM0.5分别提供周期为1分钟和1

10、秒的时钟脉冲。 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

11、.3 直接寻址与间接寻址,直接寻址指定了存储器的区域、长度和位置,例如VB200。,按位寻址的格式为:Ax.y 存储区内另有一些元件是具有一定功能的硬件,由于元件数量很少,所以不用指出元件所在存储区域的字节,而是直接指出它的编号。其寻址格式为:Ay 数据寻址格式为:ATx,间接寻址方式,间接寻址方式是,数据存放在存储器或寄存器中,在指令中只出现所需数据所在单元的内存地址的地址。存储单元地址的地址又称为地址指针。这种间接寻址方式与计算机的间接寻址方式相同。间接寻址在处理内存连续地址中的数据时非常方便,而且可以缩短程序所生成的代码的长度,使编程更加灵活。 用间接寻址方式存取数据需要作的工作有3种:

12、建立指针、间接存取和修改指针。,(1)建立指针,建立指针必须用双字传送指令(MOVD),将存储器所要访问的单元的地址装入用来作为指针的存储器单元或寄存器,装入的是地址而不是数据本身,格式如下: 例:MOVD&VB200,VD302 MOVD&MB10,AC2 MOVD&C2,LD14 注意:建立指针用MOVD指令。,(2)间接存取,指令中在操作数的前面加“*”表示该操作数为一个指针。 下面两条指令是建立指针和间接存取的应用方法: MOVD&VB200,AC0 MOVW*AC0,AC1 若存储区的地址及单元中所存的数据如下所示 执行过程如下:,(3)修改指针,下面的两条指令可以修改指针的用法:

13、INCDAC0 INCDAC0 MOVW*AC0,AC1,返回本节,3.3 位逻辑指令,PLC梯形图语言的编程原则,1、梯形图由多个梯级组成,每个线圈可构成一个梯级, 每个梯级有多条支路,每个梯级代表一个逻辑方程; 2、梯形图中的继电器继电器、接点、线圈不是物理的, 是PLC存储器中的位(1=ON;0=OFF);编程时常开/ 常闭接点可无限次引用,线圈输出只能是一次; 3、梯形图中流过的不是物理电流而是“概念电流”,只 能从左向右流; 4、用户程序的运算是根据PLC的输入/输出映象寄存器中 的内容,逻辑运算结果可以立即被后面的程序使用; 5、PLC的内部继电器不能做控制用,只能存放逻辑控制 的

14、中间状态; 6、输出线圈不能直接驱动现场的执行元件,通过I/O模 块上的功率器件来驱动。,指令分类按形式分,2.功能块、指令盒,1.继电器,触点,线圈,( ),Enable,输入参数,IN1,IN2,N,输出参数,OUT,功能数据类型,地址,条件,长度,EN,一、基本逻辑指令,逻辑关系 梯形图 助记符,I0.0,I0.1,LDI0.0 AI0.1 =Q0.0,LDI0.0 OI0.1 =Q0.0,LDN I0.1 =Q0.0,AND,OR,NOT,当 I0.0与 I0.1 都 “ON” 时, 则输出 Q0.0 “ON”(1)。,当 I0.0 或 I0.0 “ON” 时,则输出 Y0 “ON”(

15、1),当 I0.1 “OFF” 时 则输出 Q0.0 “ON”(1),Q0.0,I0.0,I0.1,Q0.0,Q0.0,I0.1,I0.0,*,*,I0.1,Q0.0,注意:与、或、非运算均是对从该指令前面的ST 指令到该指令的前一个指令处的结果进行 运算。,X2是与图中A点处的结果(即X0与X1的结果)相或,而不是与X1相或。,Y0,逻辑关系 梯形图 助记符,LDX0 OX1 LDX2 OX3 ALD =Y0,LDX0 AX1 LDX2 AN X3 OLD =Y0,当 “X0 或 X1”与“X2 或X3” 都 “ON” 时, 则输出 Y0 “ON”。,ALD(And Stack),OLD(O

16、r Stack),当 “X0 与 X1”或“X2 与 X3非” “ON” 时,则输 出 Y0 “ON”。,Y0,X0,X2,X1,X3,Y0,已知下图中的语句表程序,画出对应的梯形图。,入栈、出栈、读栈指令,逻辑入栈(Logic Push,LPS):指令复制栈顶的值,并将其压入堆栈的下一层,栈中的数据依次向下一层推移,栈底值被推出丢失。 逻辑读栈(logic Read,LRD):指令将堆栈中第2层的数据复制到栈顶。第29层的数据不变。 逻辑出栈(Logic Pop,LPP):指令使栈中的数据向上移动一层。,例1:直接启动停车控制,继电器控制电路图,I/O分配: I0.0:停车I0.1:启动Q0.1:KM,梯形图:,语句表 LD I0.1 O Q0.0 A I0.0 = Q0.0,启动优先,停止优先,I/O分配决定PLC的端子接线图,PLC的端子接线方式又决定编程语言,I

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号