1、项目项目2 2可编程序控制器可编程序控制器本章要点v可编程序控制器(简称PLC)是随着现代社会生产的发展和技术进步,现代工业生产自动化水平的日益提高及微电子技术的飞速发展,在继电器控制的基础上产生的一种新型的工业控制装置,在取代传统电气控制方面有着不可比拟的优点。可编程序控制器是将微电子技术、自动化技术、计算机技术及通信技术融为一体,应用到工业控制领域的一种高可靠性控制器,是当代工业生产自动化的重要支柱。v可编程序控制器采用可编程序的存储器,能够执行逻辑控制、顺序控制、定时、计数和算术运算等操作功能,并通过开关量、模拟量的输入和输出完成各种机械或生产过程的控制。它具有丰富的输入、输出接口,并且
2、具有较强的驱动能力,其硬件需根据实际需要选配,其软件则需根据控制要求进行设计。不同厂家生产的PLC所用的编程语言不同,而且互不兼容。一般梯形图和指令表是PLC最常用的编程语言。技能目标 l了解可编程序控制器的产生和发展;l了解可编程序控制器的性能、特点及分类;l了解可编程序控制器的内存结构及寻址方法;l掌握可编程序控制器的基本结构;l掌握可编程序控制器的工作原理;l掌握基本编程指令的使用方法;l掌握梯形图程序的编写规则。项目案例导入 电动机的正反转控制是常用的控制形式,如何编制PLC的梯形图程序来实现电动机的正反转控制呢?v2.1 可编程序控制器的产生和发展 v2.2 可编程序控制器的性能、特
3、点及分类v2.3 S7-200系列PLC的内存结构及寻址方法v2.4 可编程序控制器的结构和工作原理v2.5 S7-200PLC编程指令 v2.6 梯形图程序的编写规则v2.7 项目小结v2.8 实验训练 v2.9 思考与练习2.1 2.1 可编程序控制器的产可编程序控制器的产生和发展生和发展v2.1.1可编程序控制器的产生v2.1.2可编程序控制器的发展2.1.1可编程序控制器的产生 20世纪60年代,汽车生产流水线的自动控制系统基本上都是由继电器控制装置构成的。当时汽车的每一次改型都直接导致继电器控制装置的重新设计和安装,十分费时、费工、费料,甚至阻碍了更新周期的缩短。为了适应市场从少品种
4、大批量生产向多品种小批量生产的转变,为了尽可能减少转变过程中控制系统的设计制造时间,减少经济成本,美国通用汽车公司在1969年公开招标,要求用新的控制装置取代继电器控制装置,并提出了十项招标指标。1969年,美国数字设备公司(DEC)研制出第一台可编程序控制器,并在通用汽车公司的自动装配线上试用成功,从而开创了工业控制的新局面。这种新型的工业控制装置以其简单易懂、操作方便、可靠性高、通用灵活、体积小、使用寿命长等一系列优点,很快地在美国其他工业领域推广应用。到1971年,已经成功地应用于食品、饮料、冶金、造纸等工业。早期的可编程序控制器是为取代继电器控制线路、存储程序指令、完成顺序控制而设计的
5、。主要用于逻辑运算、计时、计数等顺序控制,均属开关量控制。所以,通常称为可编程序逻辑控制器(PLCProgrammable Logic Controller)。2.1.2可编程序控制器的发展v第一代PLC(1969-1972年):大多用一位机开发,用磁心存储器存储,只具有单一的逻辑控制功能,机种单一,没有形成系列化。v第二代PLC(1973-1975年):采用了8位微处理器及半导体存储器,增加了数字运算、传送、比较等功能,能实现模拟量的控制,开始具备自诊断功能,初步形成系列化。v第三代PLC(1976-1983年):随着高性能微处理器及位片式CPU在PLC中大量的使用,PLC的处理速度大大提高
6、,从而促使它向多功能及联网通信方向发展,增加了多种特殊功能,如浮点数的运算、三角函数、表处理、脉宽调制输出等,自诊断功能及容错技术发展迅速。v第四代PLC(1983年-现在):不仅全面使用16位和32位微处理器,而且在一台PLC中配置多个微处理器,进行多通道处理,同时生产了大量内含微处理器的智能模块,使得第四代PLC产品成为具有逻辑控制功能、过程控制功能、运动控制功能、数据处理功能、联网通信功能的真正多功能控制器,成为现代工业生产自动化的一大支柱。1.1.发展过程发展过程2.2.发展方向发展方向(1)向高速度、大容量方向发展 为了提高PLC的处理能力,要求PLC具有更好的响应速度和更大的存储容
7、量。目前,有的PLC的扫描速度可达0.1ms/k步左右。在存储容量方面,有的PLC最高可达几十兆字节。为了扩大存储容量,有的公司已使用了磁泡存储器或硬盘。(2)向超大型、超小型两个方向发展v当前中小型PLC比较多,为了适应市场的多种需要,今后PLC要向多品种方向发展,特别是向超大型和超小型两个方向发展。现已有I/O点数达14336点的超大型PLC,其使用32位微处理器,多CPU并行工作和大容量存储器,功能强。v 小型PLC由整体结构向小型模块化结构发展,使配置更加灵活,为了市场需要已开发了各种简易、经济的超小型微型PLC,最小配置的I/O点数为816点,以适应单机及小型自动控制的需要,如三菱公
8、司系列PLC。(3)PLC大力开发智能模块,加强联网通信能力v为满足各种自动化控制系统的要求,近年来不断开发出许多功能模块,如高速计数模块、温度控制模块、远程I/O模块、通信和人机接口模块等。这些带CPU和存储器的智能I/O模块,既扩展了PLC功能,又使用灵活方便,扩大了PLC的应用范围。v加强PLC联网通信的能力,是PLC技术进步的潮流。PLC的联网通信有两类:一类是PLC之间联网通信,各PLC生产厂家都有自己的专有联网手段;另一类是PLC与计算机之间的联网通信,一般PLC都有专用通信模块与计算机通信。为了加强联网通信能力,PLC生产厂家之间也在协商制订通用的通信标准,以构成更大的网络系统,
9、PLC已成为集散控制系统(DCS)不可缺少的重要组成部分。(4)增强外部故障的检测与处理能力v 根据统计资料表明:在PLC控制系统的故障中,CPU占5%,I/O接口占15%,输入设备占45%,输出设备占30%,线路占5%。前两项共20%故障属于PLC的内部故障,它可通过PLC本身的软、硬件实现检测、处理;而其余80%的故障属于PLC的外部故障。因此,PLC生产厂家都致力于研制、发展用于检测外部故障的专用智能模块,进一步提高系统的可靠性。(5)编程语言多样化v在PLC系统结构不断发展的同时,PLC的编程语言也越来越丰富,功能也不断提高。除了大多数PLC使用的梯形图语言外,为了适应各种控制要求,出
10、现了面向顺序控制的步进编程语言、面向过程控制的流程图语言、与计算机兼容的高级语言(BASIC、C语言等)等。多种编程语言的并存、互补与发展是PLC进步的一种趋势。2.2 2.2 可编程序控制器的性可编程序控制器的性能指标能指标v2.2.1可编程序控制器的性能指标v2.2.2可编程序控制器的特点v2.2.3可编程序控制器的分类2.2.1可编程序控制器的性能指标(1)存储容量 v存储容量是指用户程序存储器的容量。通常以字或千字为单位。约定16位二进制数为一个字,8位为一个字节,每1024个字为1千字。一般来说,中小型PLC的用户存储器容量在8千字以下,而大型机的用户存储器容量已达96千字以上。一般
11、的逻辑操作指令每条占1个字,定时器、计数器、移位操作等指令占2个字,而数据操作指令占2-4个字。(2)I/O点数v输入/输出(I/O)点数是PLC可以接受的输入信号和输出信号的总和,是衡量PLC性能的重要指标。PLC的输入输出有开关量和模拟量两种。其中开关量用最大I/O点数表示,模拟量用最大I/O通道数表示。(3)扫描速度 v扫描速度是指PLC执行用户程序的速度。以扫描1K字用户程序所需的时间来衡量扫描速度,通常以ms/K字为单位。一般为10ms左右,小型机可能大于40ms。(4)编程语言 v编程语言是PLC厂家为用户设计的用于实现各种控制功能的编程工具,常用的编程语言有梯形图、指令语句表、功
12、能图及某些高级语言等。不同的PLC可能采用不同的PLC编程语言。(5)内部寄存器的种类与数量 v在编制PLC程序时,需要用到大量的内部寄存器来存放变量、中间结果、保持数据、定时计数、模块设置和各种标志位等信息。这些寄存器的种类与数量越多,表示PLC的存储和处理各种信息的能力越强。(6)通信能力 v通信能力是指PLC与PLC、PLC与计算机之间的数据传送及交换能力,它是工厂自动化的必备基础。目前生产的PLC不论是小型机还是中大型机,都配有一至两个、甚至多个通信端口。(7)可扩展能力 vPLC的可扩展能力包括I/O点数的扩展、存储容量的扩展、联网功能的扩展、各种功能模块的扩展等。在选择PLC时,经
13、常需要考虑PLC的可扩展能力。2.2.2可编程序控制器的特点(1)可靠性高 v传统的继电器控制系统中使用了大量的中间继电器、时间继电器、计数器等器件,由于触点接触不良,容易出现故障。PLC用软件取代了上述器件,仅剩下与输入和输出有关的少量硬件,使控制柜的设计、安装、接线工作量大大减少,降低了故障率。v另外,PLC采取了一系列硬件和软件抗干扰措施,具有很强的抗干扰能力,故障率很低。PLC的用户程序可以在实验室模拟调试,输入信号用开关来模拟,通过PLC上的发光二极管可以观察输出信号的状态。在系统安装接线完毕后,调试过程中发现的问题一般通过修改程序就可以解决,系统的调试时间比继电器系统少得多。(2)
14、功能强 vPLC不但具有开关量控制、模拟量控制、算术运算、数据通信、中断控制等功能,还可以很方便地进行功能及容量的扩展,可根据工业控制的需要扩展输入输出点数及增加控制功能。适用于机械、冶金、化工、轻工、服务和汽车等行业的工程领域,通用性强。(3)编程简单 vPLC提供了多种面向用户的编程语言,常用的有梯形图、指令语句表、功能图等,其中梯形图语言与继电器控制系统的电气原理图类似,这种编程语言形象直观,不需要专门的计算机知识,只要懂得电气控制原理就能很容易地掌握。当控制流程需要改变时,可用手持式编程器或在个人计算机上修改程序,并可在现场进行调试和在线修改,运行过程可直接在计算机屏幕上进行监控。(4
15、)体积小,结构紧凑 v在结构上具有模块结构特点。其基本的控制输入、输出和特殊功能处理模块等均可按积木式组合,使其结构紧凑,体积小巧,很容易装在机械设备内部,因而成为机电一体化产品及工业自动控制的主要控制设备。2.2.3可编程序控制器的分类v(1)按结构形式分类 v(2)按功能分类 v(3)按I/O点数分类 v整体式PLC v模块式PLC v叠装式PLC v整体式PLC是将电源、CPU、I/O接口等部件都集中装在一个机箱内,具有结构紧凑、体积小、价格低的特点。小型PLC一般采用这种整体式结构。整体式PLC由不同I/O点数的基本单元(又称主机)和扩展单元组成。基本单元内有CPU、I/O接口、与I/
16、O扩展单元相连的扩展口,以及与编程器或EPROM写入器相连的接口等。扩展单元内只有I/O和电源等,没有CPU。基本单元和扩展单元之间一般用扁平电缆连接。整体式PLC一般还可配备特殊功能单元,如模拟量单元、位置控制单元等,使其功能得以扩展。v模块式PLC是将PLC各组成部分,分别作成若干个单独的模块,如CPU模块、I/O模块、电源模块(有的含在CPU模块中)以及各种功能模块。模块式PLC由框架或基板和各种模块组成。模块装在框架或基板的插座上。这种模块式PLC的特点是配置灵活,可根据需要选配不同规模的系统,而且装配方便,便于扩展和维修。大、中型PLC一般采用模块式结构。v还有一些PLC将整体式和模
17、块式的特点结合起来,构成所谓叠装式PLC。叠装式PLC其CPU、电源、I/O接口等也是各自独立的模块,但它们之间是靠电缆进行连接,并且各模块可以一层层地叠装。这样,不但系统可以灵活配置,还可做得体积小巧。v低档PLC v中档PLC v高档PLC v低档PLC。具有逻辑运算、定时、计数、移位以及自诊断、监控等基本功能,还可有少量模拟量输入输出、算术运算、数据传送和比较、通信等功能。主要用于逻辑控制、顺序控制或少量模拟量控制的单机控制系统。v中档PLC。除具有低档PLC的功能外,还具有较强的模拟量输入输出、算术运算、数据传送和比较、数制转换、远程I/O、子程序、通信联网等功能。有些还可增设中断控制
18、、PID控制等功能,适用于复杂控制系统。v高档PLC。除具有中档机的功能外,还增加了带符号算术运算、矩阵运算、位逻辑运算、平方根运算及其它特殊功能函数的运算、制表及表格传送功能等。高档PLC机具有更强的通信联网功能,可用于大规模过程控制或构成分布式网络控制系统,实现工厂自动化。v小型 PLC v中型 PLC v大型 PLC v小型 PLC。I/O 点数为 256 点以下,用户程序存储容量小于 8KB 的为小型 PLC。它可以连接开关量和模拟量 I/O 模块以及其他各种特殊功能模块,能执行包括逻辑运算、定时、计数、算术运算、数据处理和传送、通信联网等功能。如西门子公司的 S7-200PLC,三菱
19、公司的 F1、F2和 FX0 系列 PLC 都属于小型机。v中型 PLC。I/O 点数在 2562048 点之间的为中型 PLC。它除了具有小型机所能实现的功能外,还具有更强大的通信联网功能、更丰富的指令系统、更大的内存容量和更快的扫描速度。如西门子公司的 S7-300PLC、三菱公司的 A1S系列 PLC 都属于中型机。v大型 PLC。I/O 点数为 2048 点以上的为大型 PLC。它具有较强的数据处理、模拟调节、特殊功能函数运算、监视、记录、打印等功能,以及强大的通信联网、中断控制、智能控制和远程控制等功能。由于大型PLC具有比中小型PLC更强大的功能,因此一般用于大规模过程控制、分布式
20、控制系统和工厂自动化网络等场合。如西门子公司的 S7-400 系列 PLC、三菱公司的 A3M、A3N 系列 PLC 都属于大型机。2.3 2.3 S7-200S7-200系列系列PLCPLC的内存结的内存结构及寻址方法构及寻址方法v2.3.1内存结构内存结构 v2.3.2指令寻址方式指令寻址方式 2.3.1内存结构 (1)输入映像寄存器(输入继电器)v输入映像寄存器存放CPU在输入扫描阶段采样输入接线端子的结果。通常工程技术人员把输入映像寄存器I称为输入继电器,它由输入接线端子接入的控制信号驱动,当控制信号接通时,输入继电器得电,即对应的输入映像寄存器的位为“1”态;当控制信号断开时,输入继
21、电器失电,对应的输入映像寄存器的位为“0”态。输入接线端子可以接常开触点或常闭触点,也可以是多个触点的串并联。(2)输出映像寄存器(输出继电器)v输出映像寄存器存放CPU执行程序的结果,并在输出扫描阶段将其复制到输出接线端子上。工程实践中,常把输出映像寄存器Q称为输出继电器,它通过PLC的输出接线端子控制执行电器完成规定的控制任务。(3)变量V存储器v变量V存储器用于存放用户程序执行过程中控制逻辑操作的中间结果,也可以用来保存与工序或任务有关的其它数据。变量存储区的编号范围根据CPU的型号不同而不同,CPU221/222为V0V2047共2KB存储容量,CPU224/226为V0V5119共5
22、KB存储容量。(4)内部位存储器M(中间继电器)v内部位存储器M作为控制继电器用于存储中间操作状态或其它控制信息,其作用相当于继电接触器控制系统中的中间继电器。内部位存储器地址的编号范围为MB0MB31,共32个字节。(5)特殊存储器SMv特殊存储器SM用于CPU与用户之间交换信息,其特殊存储器位提供大量的状态和控制功能。CPU224的特殊存储器SM编址范围为SMB0SMB549共550个字节,其中SMB0SMB29的30个字节为只读型区域。其地址编号范围随CPU的不同而不同。v特殊存储器SM的全部功能可查阅相关手册。(6)局部变量存储器Lv局部变量存储器L用来存放局部变量,它和变量存储器V很
23、相似,主要区别在于全局变量是全局有效,即同一个变量可以被任何程序访问,而局部变量只在局部有效,即变量只和特定的程序相关联。个字节的局部变量存储器,其中60个字节可以作为暂时存储器,或给子程序传递参数,后4个字节作为系统的保留字节。(7)高速计数器HCv高速计数器用来累计比CPU的扫描速率更快的事件,计数过程与扫描时间无关。高速计数器的地址编号范围根据CPU的型号有所不同,CPU221/222各有4个高速计数器,CPU224/226各有6个高速计数器,编号为HC0HC5。(8)累加器ACv累加器是用来暂存数据的寄存器,它可以用来存放运算数据、中间数据和结果,S7-200提供了4个32位的累加器,
24、其地址编号为AC0AC3。(9)定时器Tv定时器T相当于继电接触控制系统中的时间继电器,用于延时控制。S7-200有3种定时器,它们的时基增量分别为1ms、10ms和100ms。v定时器的地址编号范围位T0T255,它们的分辨率和定时范围各不相同,用户应根据所用CPU型号及时基,正确选用定时器的编号。(10)计数器Cv计数器用来累计输入端接收到的脉冲个数,S7-200有3种计数器:加计数器、减计数器和加减计数器。v计数器的地址编号范围位C0C255。(11)模拟量输入寄存器AIv模拟量输入寄存器用于接收模拟量输入模块转换后的16位数字量。其地址编号以偶数表示,如AIW0、AIW2等。模拟量输入
25、寄存器AI为只读存储器。(12)模拟量输出寄存器AQv模拟量输出寄存器用于暂存模拟量输出模块的输入值,该值经过模拟量输出模块(D/A)转换为现场需要的标准电压或电流信号。其地址编号为AQW0、AQW2等。模拟量输出值是只写数据,用户不能读取模拟量输出值。(13)顺序控制状态寄存器Sv顺序控制状态寄存器S又称状态元件,与顺序控制继电器指令配合使用,用于组织设备的顺序操作,顺序控制状态寄存器的地址编号范围为S0.0S31.7。2.3.2指令寻址方式 2.4 2.4 可编程序控制器的结构和可编程序控制器的结构和工作原理工作原理v2.4.1可编程序控制器的基本结构可编程序控制器的基本结构 v2.4.2
26、可编程序控制器的工作原理可编程序控制器的工作原理 2.4.1可编程序控制器的基本结构 可编程序控制器其硬件系统由CPU、存储器、基本I/O接口、外设接口、电源等部分组成,PLC典型硬件系统如图2.1所示。图2.1 PLC典型硬件系统(1)中央处理器(CPU)vCPU是可编程序控制器的控制中枢,其主要功能是接受并存储从计算机或编程器输入的用户程序和数据、检测系统的工作状态、执行指令规定的任务。CPU通过扫描方式接收输入设备的的状态和数据,存入输入映象寄存器;诊断PLC内部电路工作状态和编程过程中的语法错误;完成用户程序规定的运算任务,并将运算结果分别送到中间数据寄存器或输出映象寄存器;更新有关标
27、志位的状态,从而实现输出控制或数据通信等功能。(2)存储器v可编程序控制器的存储器由只读存储器ROM和随机存储器RAM两大部分组成。只读存储器用于存放系统程序、键盘输入处理程序、翻译程序、信息传送程序、监控程序等系统软件,用户不能修改这部分内容。用户程序和中间运算数据存放在随机存储器中。为防止电源掉电时RAM中的信息丢失,常采用锂电池作后备保护。(3)基本I/O接口 v基本I/O接口是PLC与工业现场的输入输出设备之间的连接部分。包括数字I/O和模拟I/O两种。输入接口将输入端的各种状态如按钮、行程开关、传感器信号等转换成数字信号送入PLC。输入电路通常以光电隔离和阻容滤波的方式提高抗干扰能力
28、,输入响应时间一般在0.115ms之间。根据常用输入电路电压类型及电路形式的不同,输入接点分为干接点式、直流输入式和交流输入式三大类。输出接口将CPU运算结果转换成控制信号去驱动输出装置如电磁阀、指示灯、接触器线圈等。PLC输出电路结构形式分为继电器式、晶闸管式和晶体管输出型等三种。(4)外设接口vPLC的外设接口可分为I/O扩展接口和通信接口两大类。vI/O扩展接口用于连接I/O扩展单元,可以用来扩充开关量I/O点数和增加模拟量的I/O端子。通信接口用于连接手持编程器或其他图形编程器、文本显示器,并能组成PLC的控制网络,实现编程、监控、联网等功能。(5)电源vPLC的工作电源一般为单相交流
29、电源(AC100240V,50/60Hz),也有用直流24V供电的。使用交流电源的PLC往往还能同时提供24V直流电源,供直流输入使用。PLC对其外部工作电源的稳定度要求不高,一般可允许15%左右。对于小型PLC,电源与CPU合为一体,对于中大型PLC,往往用单独的电源模块供电。2.4.2可编程序控制器的工作原理 vPLC的工作过程一般可分为三个主要阶段:输入采样阶段、程序执行阶段和输出刷新阶段,如图2.2所示。图2.2 PLC扫描工作方式(1)输入采样阶段 vPLC以扫描工作方式,按顺序将所有输入端的输入状态读入到输入映象区中存储,这一过程称为采样。在整个工作周期内,这个采样结果的内容不会改
30、变,而且这个采样结果将在PLC执行程序时被使用。(2)程序执行阶段vPLC按顺序对程序进行扫描,即从上到下、从左到右地扫描每条指令,并分别从输入映象区和输出映象区中获得所需的数据进行运算、处理,再将程序执行的结果写入寄存执行结果的输出映象区中保存。这个结果在程序执行期间可能发生变化,但在整个程序未执行完毕之前不会送到输出端口。(3)输出刷新阶段 v在执行完用户所有程序后,PLC将输出映象区中的内容送到寄存输出状态的输出锁存器中,再去驱动外部设备。vPLC重复执行上述三个阶段,每重复一次的时间称为一个扫描周期。扫描周期的长短与CPU时钟频率、指令类型、程序长短有关,在一个工作周期中,输入采样和输
31、出刷新的时间一般为毫秒级,而程序执行时间取决于程序的长度。2.5 2.5 S7-200PLCS7-200PLC编程指令编程指令v2.5.1基本逻辑编程指令基本逻辑编程指令 v2.5.2项目案例电动机正反转项目案例电动机正反转PLC控制程序控制程序 v2.5.3定时器与计数器编程指令定时器与计数器编程指令v2.5.4数据传送指令数据传送指令 v2.5.5数据比较指令数据比较指令 v2.5.6数据移位指令数据移位指令 2.5.1基本逻辑编程指令 例1 启动保持停止电路 启动保持停止电路简称启保停电路,该电路在生产实践中应用非常广泛,电动机的单向连续运转控制电路就是一个典型的启保停电路。用PLC实现
32、电动机单向连续运转控制的接线图(不考虑有关保护)如图2.3(a)所示,其控制程序与电气控制电路相似,是一个具有启保停控制功能的程序,如图2.3(b)所示。图中Q0.0连接接触器KM1,用以驱动电动机的运行与停止;I0.0和I0.1分别连接启动按钮SB1和停止按钮SB2,它们持续接通的时间一般都很短。启保停电路最主要的特点就是具有“记忆”功能,按下启动按钮SB1,I0.0的常开触点接通,如果这时未按停止按钮,I0.1的常闭触点接通,Q0.0的线圈得电,它的常开触点同时接通。松开启动按钮,I0.0的常开触点断开,“能流”经Q0.0的常开触点和I0.1的常闭触点流过Q0.0的线圈,Q0.0仍得电,这
33、就是所谓的“自锁”或“自保持”功能。按下停止按钮,I0.1的常闭触点断开,使Q0.0的线圈断电,其常开触点断开,以后即使放开停止按钮,I0.1的常闭触点恢复接通状态,Q0.0的线圈仍然“断电”。启保停电路的时序分析如图2.4所示。在复杂的电路中,启动和停止信号可由多个触点组成的串、并联电路提供。(a)PLC控制接线图 (b)梯形图 图2.3启保停电路PLC控制接线图和梯形图 图2.4启保停电路工作时序图例2 采用一个按钮控制两台电动机的依次启动 v按下按钮,第一台电动机启动,松开按钮,第二台电动机启动。这样可以使两台电动机的启动时间分开,从而防止两台电动机同时启动造成对电网的不良影响。设I0.
34、0为启动按钮,I0.1为停止按钮,Q0.0、Q0.1分别驱动两个接触器,其梯形图和语句表如图2.5所示。图2.5一个按钮控制两台电动机依次启动的程序2.5.2项目案例电动机正反转PLC控制程序 1.控制要求v按下正转启动按钮SB2,KM1得电,按下反转启动按钮SB3,KM2得电,按下停止按钮SB1,KM1(KM2)失电,过载保护采用热继电器FR实现。为防止KM1、KM2同时得电,必须采取互锁措施。2.PLC输入输出端子分配及接线图PLC端子分配见表3-2 接线图见图2.6 图2.6 PLC外部接线图3.程序设计v三相异步电动机的正反转控制程序设计如图2.7所示。图中为防止正反转换接时的相间短路
35、,用I0.2和I0.3常闭触点实现按钮互锁;用Q0.0和Q0.1常闭触点实现线圈互锁。v 图2.7三相异步电动机的正反转控制4.强化训练 v例3 抢答器的PLC控制v有3组抢答器台和1个主持人,每个抢答台上各有1个抢答按钮和一盏抢答指示灯。参赛者在允许抢答时,第一个按下抢答按钮的抢答台上的指示灯会亮,且释放抢答按钮后,指示灯仍然亮;此后另外两个抢答台上即使再按各自的抢答按钮,其指示灯也不会亮。这样主持人就可以轻易的知道谁是第一个按下抢答器的。该题抢答结束后,主持人按下主持台上的复位按钮,则指示灯熄灭,又可以进行下一题的抢答比赛。v1)I/O分配及接线图v抢答器的PLC输入输出端子分配如表3-3
36、所示,接线图如图2.8所示。图2.8PLC外部接线图 v2)控制程序设计v抢答器的控制程序设计如图2.9所示。图2.9抢答器的控制程序 2.5.3定时器与计数器编程指令定时器与计数器编程指令 1)定时器指令的使用举例 vS7200PLC的定时器为增量型定时器,用于实现时间控制。v按照工作方式,定时器可分为通电延时型(TON)、有记忆的通电延时型又叫保持型(TONR)、断电延时(TOF)3种类型。v按照分辨率,定时器可分为1ms、10ms、100ms3种类型,不同的分辨率,定时精度、定时范围和定时器的刷新方式不同。分辨率取决于定时器号。v定时器的定时时间T等于分辨率乘预置值,分辨率越大,定时时间
37、越长,但精度越差。使用定时器时应按照分辨率和工作方式合理选择定时器编号,如表3-4所示。v1ms定时器每隔1ms定时器刷新一次,定时器刷新与扫描周期和程序处理无关。扫描周期较长时,定时器一个周期内可能多次被刷新。v10ms定时器在每个扫描周期开始时刷新。每个扫描周期之内,当前值不变。如果定时器的输出与复位操作时间间隔很短,可以调节定时器指令盒与输出触点在网络段中的位置。v100ms定时器是定时器指令执行时被刷新,下一条执行的指令即可使用刷新后的结果,使用方便可靠。(1)通电延时型(TON)v使能端(IN)输入有效时,定时器开始计时。当前值从0开始递增,大于或等于预置值(PT)时,定时器输出状态
38、位置1。到达设定值后,当前值仍继续计数,直到最大值32767。使能端无效时,定时器复位。(2)有记忆通电延时型(TONR)v使能端(IN)输入有效时,定时器开始计时,当前值递增,大于或等于预置值(PT)时,定时器输出状态位置1。使能端输入无效时,当前值保持,使能端再次接通有效时,在原记忆值的基础上递增计时。有记忆通电延时型定时器采用线圈复位指令(R)进行复位操作,当复位线圈有效时,定时器当前值清零,输出状态位置0。(3)断电延时型(TOF)v使能端(IN)输入有效时,定时器输出状态位立即置1,当前值复位。使能端断开时,开始计时,当前值从0开始递增,当前值达到预置值(PT)时,定时器状态位复位置
39、0,并停止计时,当前值保持。例4 闪烁电路v设计一个灭2秒,亮3秒的闪烁电路。用I0.0启动该电路,I0.1停止该电路,输出用Q0.0表示。其梯形图和语句表如图2.10所示。图2.10闪烁电路程序设计例5 定时器扩展 vS7-200系列PLC定时器最大定时范围为3276.7秒。如果需要的设定值超过机器范围,我们可以通过几个定时器的串联组合来扩充设定值的范围。如设定一个定时1小时的控制程序如图2.11所示。图2.11定时1小时控制程序2)计数器指令的使用举例 vS7-200系列PLC有减计数(CTD)、增计数(CTU)、增/减计数(CTUD)等3类计数指令。v梯形图指令符号中CU为增1计数脉冲输
40、入端;CD为减1计数脉冲输入端;R为复位脉冲输入端;LD为减计数器的复位脉冲输入端。编程范围C0C255;PV预置值最大范围32767;PV数据类型:INT。(1)减计数指令(CTD)v复位输入有效时,计数器把预置值装入当前值存储器,计数器状态位复位。CD端每一个输入脉冲上升沿,减计数器的当前值从预置值开始递减计数,当前值等于0时,计数器状态位置1,停止计数。解释:减计数器在复位脉冲I0.1的上升沿,计数器状态位置0,当前值等于预置值3。在计数脉冲I0.0的上升沿减一计数,当前值从预置值开始减至0时,定时器输出状态位置1,同时Q0.0接通。(2)增/减计数指令(CTUD)v增/减计数器有两个脉
41、冲输入端,执行增/减计数指令时,CU/CD端的计数脉冲上升沿增1/减1计数。当前值大于或等于计数器预置值时,计数器状态位复位。复位输入有效时,计数器状态位复位,当前值清零。达到计数器最大值32767后,下一个CU输入上升沿使计数值变为最小值(-32768)。同样,达到最小值(-32768)后,下一个CD输入上升沿将使计数值变为最大值(32767)。v解释:复位脉冲I0.2的上升沿,计数器状态位置0,当前值等于预置值4。在加计数脉冲I0.0的上升沿加一计数,在减计数脉冲I0.1的上升沿减一计数。当前值大于或等于预置值4时,定时器输出状态位置1,同时Q0.0接通。(3)增计数指令(CTU)v增计数
42、指令在CU端输入脉冲上升沿,计数器的当前值增1计数。当前值大于或等于预置值时,计数器状态位置1。复位输入有效时,计数器状态位复位,当前计数值清零。例6 计数器扩展 vS7-200系列PLC计数器最大计数范围为32767。若需要更大的计数范围,则必须进行扩展。图2.12所示为计数器的扩展电路。图中是两个计数器的组合电路,C1形成了一个设定值为100次自复位计数器。计数器C1对I0.1的接通次数进行计数,I0.1的触点每闭合100次C1自复位重新开始计数。同时,C1的常开触点闭合,使C2计数一次,当C2计数到2000次时,I0.1共接通1002000=200000次,C2的常开触点闭合,线圈Q0.
43、0通电。图2.12计数器扩展程序设计 例7 定时器和计数器扩展应用 v图2.11中的定时1小时程序可由定时器和计数器指令编写,其对应的梯形图及指令语句表如图2.13所示。图2.13定时器和计数器扩展应用2.5.4数据传送指令数据传送指令 例8 vI0.0闭合,将VB2中的数据传送到VB10中,则对应的梯形图程序及语句表如图2.14所示。图2.14数据传送指令应用 例9 初始化程序的设计v存储器初始化程序是用于开机运行时对某些存储器清0或置数的一种操作。通常采用传送指令来编程。若开机运行时将VB20清0,将VW100置数1800,则对应的梯形图程序及语句表如图2.15所示。图2.15初始化程序的
44、设计例10 多台电动机的同时启停控制 v设3台电动机分别由Q0.0、Q0.1和Q0.2驱动,I0.0为启动控制信号,I0.1为停止信号。则3台电动机同时启动同时停止程序如图2.16所示。图2.16多台电动机的同时启停控制 2.5.5数据比较指令数据比较指令 例11 v若MW8中的数小于IW4中的数,则使M0.0复位;若MW8中的数大于等于IW4中的数,则使M0.0置位。对应的梯形图程序及语句表如图2.17所示。图2.17数据比较指令应用例12 多台电动机分时启动控制v启动按钮按下后,3台电动机每隔3s分别依次启动,按下停止按钮,3台电动机同时停止。设PLC的输入端子I0.0为启动按钮输入端,I
45、0.1为停止按钮输入端,Q0.0、Q0.1、Q0.2分别为驱动3台电动机的电源接触器输出端子。对应的梯形图程序及语句表如图2.18所示。图2.18多台电动机分时启动控制2.5.6数据移位指令数据移位指令 vS7-200中移位指令分为左、右移位和循环左、右移位及寄存器移位指令三大类。前两类移位指令按移位数据的长度又分为字节型、字型、双字型3种。v左、右移位数据存储单元与SM1.1(溢出)端相连,移出位被放到特殊标志存储器SM1.1位。移位数据存储单元的另一端补0。1)左移位指令(SHL)v使能输入有效时,将输入的字节、字或双字IN左移N位后(右端补0),将结果输出到OUT所指定的存储单元中,最后
46、一次移出位保存在SM1.1。2)右移位指令(SHR)v使能输入有效时,将输入的字节、字或双字IN右移N位后,将结果输出到OUT所指定的存储单元中,最后一次移出位保存在SM1.1。3)循环左、右移位v循环移位将移位数据存储单元的首尾相连,同时又与溢出标志SM1.1连接,SM1.1用来存放被移出的位。(1)循环左移位指令(ROL)v使能输入有效时,字节、字或双字IN数据循环左移N位后,将结果输出到OUT所指定的存储单元中,并将最后一次移出位送SM1.1。(2)循环右移位指令(ROR)v使能输入有效时,字节、字或双字IN数据循环右移N位后,将结果输出到OUT所指定的存储单元中,并将最后一次移出位送S
47、M1.1。例13 数据乘除2n运算梯形图 v假定VW0中存有数据160,现将其除以8,结果保存在VW2中;将其乘以4,结果保存到VW4中。利用移位指令编程实现其运算结果的梯形图程序如图2.19所示。图2.19数据乘除2n运算梯形图程序例14 彩灯依次向左循环点亮控制 v按下启动按钮,8只彩灯自Q0.0开始每隔1秒依次向左循环点亮,直到发出停止信号后熄灭。设I0.0为启动按钮,I0.1为停止按钮,Q0.0Q0.7驱动8只彩灯循环点亮。其梯形图程序如图2.20所示。图2.20彩灯依次向左循环点亮控制程序3)寄存器移位指令v寄存器移位指令是一个移位长度可指定的移位指令。v梯形图中DATA为数值输入,
48、指令执行时将该位的值移入移位寄存器。S-BIT为寄存器的最低位。N为移位寄存器的长度(164),N为正值时左移位,DATA值从S-BIT位移入,移出位进入SM1.1。N为负值时右移位,S-BIT移出到SM1.1,另一端补充DATA移入位的值。v每次使能有效时,整个移位寄存器移动一位。2.6 2.6 梯形图程序的编写规则梯形图程序的编写规则编写梯形图程序时应遵循下列规则:v1)“输入继电器”的状态由外部输入设备的开关信号驱动,程序不能随意改变它。v2)梯形图中同一编号的“继电器线圈”只能出现一次,通常不能重复使用,但是它的触点可以无限次地重复使用。v 同一编号的“继电器线圈”出现两次或两次以上的
49、现象即所谓的双线圈输出。通常,在一个程序中是不允许出现双线圈输出的。但在下列情况下允许出现双线圈输出:v(1)置位和复位指令中,置位指令将某继电器置位,复位指令又可将该继电器复位。这时在程序中出现的双线圈是允许的,它们实际上是一个“继电器线圈”的两个输入端。v(2)在用顺序功能图法设计的控制程序中,只有在活动步中的命令或动作才被执行。因此不同的步中,允许有相同编号的“继电器线圈”出现。因为这些“继电器线圈”只在某步成为活动步时才起作用。v3)几个串联支路相并联,应将触点多的支路安排在上面;几个并联回路的串联,应将并联支路数多的安排在左面。按此规则编制的梯形图可减少用户程序步数、缩短程序扫描时间
50、,如图2.21所示。左侧为不合理画法,右侧为合理画法。图2.21梯形图的合理画法v4)程序的编写按照从左至右、由上至下顺序排列。一个梯级开始于左母线,终止于右母线,线圈与右母线直接相连(S7-200绘图时,将右母线省略)。v (1)桥式电路必须修改后才能画出梯形图,如图2.22所示。图2.22 桥式电路修改后画成的梯形图v(2)非桥式复杂电路必须修改后才能画出梯形图。修改方法可按照前几条规则,如图2.23所示。图2.23复杂电路修改后画成的梯形图2.7 2.7 项目小结项目小结了解可编程序控制器的产生、发展、性能、特点及分类;了解可编程序控制器的内存结构及寻址方法;掌握可编程序控制器的基本结构