PLC编程基础

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

PLC编程基础机电工区---胡小龙3.1PLC的基本结构(P43)从结构形式上PLC可分为整体式和模块式两大类。CPU输入接口输出接口存储器电源外围接口编程设备不论哪种类型的PLC,其基本结构都是相同的。(P43)1.CPU2.存储器3.输入输出电路4.编程装置5.电源6.外围接口CPU是整个系统的核心部件,主要由运算器、控制器、寄存器及实现它们之间联系的地址总线、数据总线和控制总线构成。此外,还有外围芯片、总线接口及有关电路。1.CPU(P43)CPU中的控制器控制PLC工作,由它读取指令,解释并执行命令。工作的时序(节奏)则由振荡信号控制。CPU中的运算器用于完成算术或逻辑运算,在控制器的指挥下工作。CPU中的寄存器参与运算,并存储运算的中间结果。它也是在控制器的指挥下工作。作为PLC的核心,CPU的功能主要包括以下几个方面:(1)CPU接收从编程器或计算机输入的程序和数据,并送入用户程序存储器中存储。(2)监视电源、PLC内部各个单元电路的工作状态。(3)诊断编程过程中的语法错误,对用户程序进行编译。(4)在PLC进入运行状态后,从用户程序存储器中逐条读取指令,并分析、执行该指令。(P43)(5)采集由现场输入装置送来的数据,并存入指定的寄存器中。(6)按程序进行处理,根据运算结果,更新有关标志位的状态和输出状态或数据寄存器的内容。(7)根据输出状态或数据寄存器的有关内容,将结果送到输出接口。(8)响应中断和各种外围设备(如编程器、打印机等)的任务处理请求。(P43)PLC的内部存储器分为系统程序存储器和用户程序及数据存储器。2.存储器(P43)系统程序存储器用于存放系统工作程序(或监控程序)、调用管理程序以及各种系统参数等。系统程序相当于个人计算机的操作系统,能够完成PLC设计者规定的各种工作。系统程序由可编程序控制器生产厂家设计并固化在ROM(只读存储器)中,用户不能读取。用户程序及数据存储器主要存放用户编制的应用程序及各种暂存数据和中间结果,使PLC完成用户要求的特定功能。PLC使用以下几种物理存储器:(1)随机存取存储器(RAM)用户可以用可编程序装置读出RAM中的内容,也可以将用户程序写入RAM,因此RAM又叫读/写存储器。它是易失性的存储器,电源中断后,储存的信息将会丢失。RAM的工作速度高,价格便宜,改写方便。在关断PLC的外部电源后,可用锂电池保存RAM中的用户程序和某些数据。锂电池可用2~5年,需要更换锂电池时,由可编程序控制器发出信号,通知用户。现在部分可编程序控制器仍用RAM来储存用户程序。(2)只读存储器(ROM)ROM的内容只能读出,不能写入。它是非易失的,它的电源消失后,仍能保存储存的内容。ROM一般用来存放可编程序控制器的系统程序。(3)可电擦除可编程序的只读存储器(EEPROM或E2PROM)它是非易失性的,但是可以用编程装置对它编程,兼有ROM的非易失性和RAM的随机存取等优点,但是将信息写入它所需的时间比RAM长得多。EEPROM用来存放用户程序以及需要长期保存的重要数据。3.输入输出电路(P43)输入模块和输出模块简称为I/O模块,是联系外部设备与CPU的桥梁。输入输出模块除了传递信号外,还具有电平转换与隔离的作用。此外,输入输出点的通断状态由发光二极管显示,外部接线一般接在模块面板的接线端子上,或使用可拆卸的插座型端子板,不需断开端子板上的外部连线,就可以迅速地更换模块。编程装置是用来对PLC进行编程和设置各种参数的。4.编程装置可编程序控制器使用220V交流电源或24V直流电源。内部的开关电源为各模块提供5V、±12V、24V等直流电源。小型PLC一般都可以为输入电路和外部的电子传感器(如接近开关等)提供24V直流电源,驱动PLC负载的直流电源一般由用户提供。5.电源(P45)通过各种外围接口,PLC可以与编程器、计算机、PLC、变频器、EEPROM写入器和打印机等连接,总线扩展接口用来扩展I/O模块和智能模块等。6.外围接口(P45)3.2PLC工作原理(P45)PLC采用循环执行用户程序的方式,称为循环扫描工作方式。一个循环扫描过程周期可分为输入采样、程序执行、输出刷新三个阶段。启动组织块上电后执行一次循环监视时间开始读取输入信号状态,并存储在输入映像区执行OB1程序包括中断程序将输出映像区状态写到实际输出设备一个扫描周期(P46)执行OB1中的程序(循环执行)事件(日期时间中断、硬件中断等)调用其他OB,FB,FC输出模块AI0.1AI0.2=Q8.0块OB1循环监视时间的开始启动块(OB100)上电后执行一次从模块读信号状态,并保存到过程映象区(PII)把过程映象输出表(PIQ)写到输出模块CPU循环输入模块循环程序执行(P46)一个扫描周期中与用户有关的三阶段输入采样阶段依次地读入所有输入状态和数据,并将它们存入I/O映象区中的相应单元内。输入采样结束后,转入用户程序执行和输出刷新阶段。在这两个阶段中,即使输入状态和数据发生变化,I/O映象区中的相应单元的状态和数据也不会改变。因此,如果输入是脉冲信号,则该脉冲信号的宽度必须大于一个扫描周期,才能保证在任何情况下,该输入均能被读入。(P46)用户程序执行阶段PLC总是按由上而下的顺序依次地扫描用户程序。在扫描每一条梯形图时,并按先左后右、先上后下的顺序进行逻辑运算,逻辑运算的结果存于映象区。上面的逻辑运算其运算结果会对下面的逻辑运算起作用;相反,下面的逻辑运算其运算结果只能到下一个扫描周期才能对上面的逻辑运算起作用。(P46)输出刷新阶段当扫描用户程序结束后,PLC就进入输出刷新阶段。在此期间,CPU按照存在I/O映象区的运算结果,刷新所有对应的输出锁存电路,再经输出电路驱动相应的外设。这时,才是PLC的真正输出。(P46)所有输入信号在程序处理前统一读入,并在程序处理过程中不再变化。而程序处理的结果也是在扫描周期的最后时段统一输出。其工作特点是将一个连续的过程分解成若干静止的状态。PLC仅在扫描周期的起始时段读取外部输入状态,该时段相对较短,抗输入信号串入的干扰极为有利。这种方式对于高速变化的过程可能漏掉变化的信号,也会带来系统响应的滞后。为克服上述问题,可利用立即输入输出、脉冲捕获、高速计数器或中断技术。PLC的工作特点(P46)扫描工作方式对程序执行的影响I0.1代表外部的按纽,当按纽动作后,左面的程序只需要一个扫描周期就可完成对M0.4的刷新,而右面的程序要经过四个扫描周期才能完成对M0.4的刷新。在扫描周期极为短的情况下(100ms),无时序配合要求,感觉不到这两段程序执行的的差异。在有时序配合的情况下,这种差异要引起注意。(P46)思考3.3存储器及其寻址(P47)S7CPU的存储区包括三个基本区域,即装载存储器,工作存储器RAM和系统存储器RAM。装载存储器动态装载存储器RAM可保持装载存储器EEPROM工作存储器RAM用户程序,如逻辑块、数据块系统存储器RAM过程映像I/O表位存储器、定时器、计数器局域数据堆栈、块堆栈中断堆栈、中断缓冲区3.3.1CPU的存储区装载存储器可以是RAM或FLASHEPROM,用于存储用户程序和系统数据(组态、连接和模块参数等),但不包括符号地址赋值和注释。部分CPU有集成的装载存储器,有的需要用微存储器卡(MMC)来扩展,CPU31xC的用户程序只能装入插入式的MMC中。断电时数据保存在MMC存储器中,因此数据块的内容基本上被永久保留。新型免维护S7-300PLC是唯一的装载存储器。下载程序时,用户程序(逻辑块和数据块)被下载到CPU的装载存储器,CPU把可执行部分复制到工作存储器,符号表和注释保存在编程设备中。(1)装载存储器(P47)工作存储器是集成的高速存取的RAM存储器,用于存储CPU运行时的用户程序和数据,例如组织块、功能块、功能和数据块。为了保证程序执行的快速性和不过多地占用工作存储器,只有与程序执行有关的块被装入工作存储器。STL程序中的数据块可以被标识为“UNLINKED”(与执行无关),它们只是存储在装载存储器中。可以用系统功能SFC20“BLKMOV”将它们复制到工作存储器。复位CPU的存储器时,RAM中的程序被清除,FLASHEPROM中的程序不会被清除。(2)工作存储器(P47)系统存储器是CPU为用户程序提供的存储器组件,被划分为若干个地址区域。使用指令可以在相应的地址区内对数据直接进行寻址。系统存储器为不能扩展的RAM,用于存放用户程序的操作数据,例如过程映像输入、过程映像输出、位存储器、定时器和计数器、块堆栈(B堆栈)、中断堆栈(I堆栈)和诊断缓冲区等。系统存储器还提供临时存储器(局域数据堆栈,即L堆栈),用来存储程序块被调用时的临时数据。访问局域数据比访问数据块中的数据更快。用户生成块时,可以声明临时变量(TEMP),它们只在执行该块时有效,执行完后就被覆盖了。(3)系统存储器(P48)系统存储区的地址区(P48)地址区说明输入过程映像I输入映像区每一位对应一个数字量输入点,在每个扫描周期的开始,CPU对输入点进行采样,并将采样值存于输入映像寄存器中。CPU在接下来的本周期各阶段不再改变输入过程映像寄存器中的值,直到下一个扫描周期的输入处理阶段进行更新输出过程映像Q输出映像区的每一位对应一个数字量输出点,在扫描周期的末尾,CPU将输出映像寄存器的数据传送给输出模块,再由后者驱动外部负载位存储区M用来保存控制继电器的中间操作状态或其他控制信息定时器T定时器相当于继电器系统中的时间继电器,用定时器地址(T和定时器号,如T5)来存取当前值和定时器状态位,带位操作数的指令存取定时器状态位,带字操作的指令存取当前值计数器C用计数器地址(C和计数器号,如C20)来存取当前值和计数器状态位,带位操作数的指令存取计数器状态位,带字操作的指令存取当前值局部数据L可以作为暂时存储器或给子程序传递参数,局部变量只在本单元有效数据块DB在程序执行的过程中存放中间结果,或用来保存与工序或任务有关的其它数据(1)累加器(ACCUx):32位累加器是用于处理字节、字或双字的寄存器。S7-300有两个累加器ACCU1和ACCU2,S7-400有4个累加器ACCU1~ACCU4。(2)地址寄存器:2个地址寄存器作为指针用于寄存器间接寻址。(3)数据块寄存器:DB和DI寄存器分别用来保存打开的共享数据块和背景数据块的编号。(4)诊断缓冲区(故障诊断)(5)状态字寄存器:状态字是一个16位的寄存器,用于存储CPU执行指令的状态。3.3.2CPU中的寄存器(P48)3.3.3寻址(P50-51)二进制数的1位(bit)只有0和1两种不同的取值,可用来表示开关量(或称数字量)的两种不同的状态,如触点的断开和接通,线圈的通电和断电等。如果该位为1,则表示梯形图中对应的编程元件的线圈“通电”,其常开触点接通,常闭触点断开,反之相反。位数据的数据类型为BOOL(布尔)型。两个字节组成1个字(Word),两个字组成1个双字(DoubleWord)。8位二进制数组成1个字节(Byte),其中的第0位为最低位(LSB)、第7位为最高位(MSB)。MB200LSB0MSB7MB200LSB低有效字节0MSB15高有效字节MB201MB200LSB最低有效字节0MSB31最高有效字节MB201MB202MB203MW200MD200MW200MW202078位数据字节0MB0数据字节1MW0数据字节***数据字节2MD0数据字节3M4.1SIMATICS7CPU中可以按照位、字节、字和双字对存储单元进行寻址。Byte5…Byte0Byte1Byte2Byte3Byte476543210MSBLSBI区位存储单元的地址由字节地址和位地址组成,如I3.2,其中的区域标识符“I”表示输入(Input),字节地址为3,位地址为2,这种存取方式称为“字节.位”寻址方式。I字节的位或位号8位中的第5位(0~7)字节地址与位号之间的分隔符字节地址,字节3存储器标志符.23

1 / 62
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功