plc教案2.docx
《plc教案2.docx》由会员分享,可在线阅读,更多相关《plc教案2.docx(52页珍藏版)》请在冰豆网上搜索。
plc教案2
课题:
第三章PLC程序设计基础
3.1PLC的编程语言
3.2FX系列PLC梯形图中的编程元件
要求:
1.掌握PLC梯形图中的编程元件
重点:
PLC梯形图中的编程元件
难点:
特殊辅助继电器、定时器、计数器
教学手段:
口述、板书
教学方法:
多媒体、讲授法、启发式等直观教学法
3.1PLC常用的编程语言
PLC具有丰富的编程语言,如:
顺序功能图、梯形图、功能块图、指令表、结构文本,以及与计算机兼容的高级语言,如:
BASIC语言、C语言及汇编语言等。
还有一些型号的PLC有专用的高级语言。
各种语言都有各自的特点,一般说来,功能越强,语言就越高级,但掌握这种语言就越困难。
对于绝大多数从事电气安装或维修的技术工人及电气设计人员来说,最常用到的编程语言是梯形图和指令表。
1、顺序功能图(SFC)
这是一种位于其他编程语言之上的图形语言,用来编制顺序控制程序,顺序功能图提供了一种组织程序的图形方法。
步、转换和动作是顺序功能图的三种主要元件。
顺序功能图用来描述开关量控制系统的功能,根据它可以很容易地画出顺序控制梯形图程序。
图3-1为功能顺序图。
2、梯形图(LD)
梯形图是最直观、最简单的一种编程语言。
由于一般的电气技术工人对继电控制线路较熟悉,而梯形图就是从继电控制线路变化而来的,再学习梯形图编程语言就很简单了。
梯形图编程语言特别适用于开关逻辑控制。
梯形图由触点、线圈和应用指令组成。
触点代表逻辑输入条件,如外部的输入信号和内部参与逻辑运算的条件等。
线圈一般代表逻辑输出结果。
它既可以是输出软继电器的线圈,也可以是PLC内部辅助软继电器或定时器、计数器的线圈等。
例:
图3-2a是一个具有自锁功能的继电控制电路,图3-2b是与其对应的梯形图程序。
图3-2b中,X1、X2、X3、Y1,可称为逻辑元素或编程元素,每个软继电器线圈及所连各逻辑元素构成一个逻辑梯级或称梯级,每个逻辑梯级内可安排若干个逻辑行连到一个软继电器线圈上。
左右侧分别有一条竖直母线(有时省略了右侧的母线)。
⑴梯形图绘制原则:
a)梯形图按从上到下、从左到右的顺序绘制。
每个逻辑元件起于左母线,终于右母线。
继电器线圈与右母线直接连接,不能在继电器线圈与右母线之间连接其它元素,整个逻辑图形成阶梯形。
b)对电路各元件分配编号。
用户输入设备按输入点的地址编号。
如:
起动按钮SB2的编号为X1。
用户输出设备都按输出地址编号。
如:
接触器KM的编号为Y1。
如果梯形图中还有其它内部继电器,则同样按各自分配的地址来编号。
c)在梯形图中,输入触点用以表示用户输入设备的输入信号。
当输入设备的触点接通时,对应的输入继电器动作,其常开触点接通,常闭触点断开。
当输入设备的触点断开时,对应的输入继电器不动作,其常开触点恢复断开,常闭触点恢复闭合。
d)在梯形图中,同一继电器的常开、常闭触点可以多次使用,不受限制,但同一继电器的线圈只能使用一次。
e)输入继电器的状态取决于外部输入信号的状态,因此在梯形图中不能出现输入继电器的线圈。
⑵软继电器与能流
a)软继电器(又称内部线圈)
PLC的梯形图中,主要利用软继电器的线圈的吸—放功能以及触点的通—断功能来进行。
PLC内部并没有继电器那样的实体,只有内部寄存器中的每位触发器,它根据计算机对信息的存—取原理,来读出触发器的状态,或在一定条件下改变它的状态。
b)能流
想象左右两侧竖直母线之间有一个左正右负的直流电源电压(有时省略了右侧的竖直母线),电流从母线的左侧流向母线的右侧,这就是能流。
实际上,并没有真实的电流流动,而是为了分析PLC的周期扫描原理以及信息存储空间分布的规律。
能流在梯形图中只能作单方向流动—即从左向右流动,层次的改变只能先上后下。
⑶梯形图与继电控制线路比较
相同之处:
a)电路结构形式大致相同;
b)梯形图大都沿用继电控制电路元件符号,有的有些不同;
c)信号输入、信息处理以及输出控制的功能均相同。
不同之处:
a)组成器件不同。
继电控制电路由真正的继电器组成,梯形图由所谓软继电器组成;
b)工作方式不同。
当电源接通时,继电控制线路各继电器都处于该吸合的都应吸合,不吸合的继电器都因条件限制不能吸合。
而在梯形图中,各继电器都处于周期性循环扫描接通之中。
c)触点数量不同。
继电控制电路中的继电器触点有限,梯形图中,软继电器触点数无限。
因为在存储器中的触发器状态可取任意次。
d)编程方式不同。
继电控制电路中,其程序已包含在电路中,功能专一、不灵活,而梯形图的设计和编程灵活多变。
e)联锁方式不同。
继电控制电路中,设置了许多制约关系的联锁电路,而在梯形图中,因它是扫描工作方式,不存在几个并列支路同时动作的因素,因此简化了电路设计。
3、功能块图(FBD)
这是一种类似于数字逻辑门电路的编程语言。
该编程语言用类似与门、或门的方框来表示逻辑运算关系,方框的左侧为逻辑运算的输入变量,右侧为输出变量,输入、输出端的小圆圈表示“非”运算,方框被“导线”连接在一起,信号自左向右运动。
图3-3b为西门子PLC功能块图与语句表,它与图3-3a梯形图的控制逻辑相同。
4、指令表
PLC的指令是一种与微机的汇编语言中的指令相似的助记符表达式,由指令组成的程序叫做指令表程序。
指令表与梯形图有着完全的对应关系,两者之间可以相互转换。
指令表程序较难阅读,其中的逻辑关系很难一眼看出,所以在程序设计时一般使用梯形图语言。
当用手持编程器键入梯形图程序时,必须将梯形图程序转换为指令表程序,因为手持编程器不具备梯形图程序编辑功能。
在用户程序存储器中,指令按序号顺序排列。
如果用便携式图形编程器或微型计算机进行编程,既可以用梯形图又可以用指令表,而且梯形图与指令表可以相互自动转换,程序写入PLC时,只需按“Download”(下载)即可。
当然,PLC专用编程软件是必备的。
5、结构文本
结构文本是一种专用的高级编程语言。
与梯形图相比,它能完成复杂的数学运算,编写的程序非常简洁和紧凑。
3.2FX系列PLC梯形图中的编程元件
PLC提供给用户使用的每个输入/输出继电器、状态继电器、辅助继电器、计数器、定时器及每个存储单元都称为元件,由于这些元件都可以用程序(即软件)来指定,故又称为软元件或编程元件。
各个元件有其各自的功能,有其固定的地址,元件的多少决定了PLC整个系统的规模及数据处理能力。
编程元件的名称由字母和数字组成,它们分别代表元件的类型和元件号。
3.2.3输入继电器(X)与输出继电器(Y)
1.输入继电器(X)
输入继电器是PLC接受外部输入信号的窗口。
PLC通过光电耦合器,将外部信号的状态读入并存储在输入镜象寄存器中。
输入端可以外接常开触点或常闭触点,也可以接多个触点组成的串并联电路或电子传感器(如接近开关)。
在梯形图中,可以多次使用输入继电器的常开触点和常闭触点。
表3-1为FX1N、FX2N系列PLC主机输入继电器元件编号:
表3-1FX1N、FX2N系列PLC主机输入继电器元件编号
PLC型号
FX1N-14M
FX1N-24M
FX1N-40M
FX1N-60M
输入继电器
X0~X7
8点
X0~X15
14点
X0~X27
24点
X0~X43
36点
PLC型号
FX2N-16M
FX2N-32M
FX2N-48M
FX2N-64M
FX2N-80M
FX2N-128M
输入继电器
X0~X7
8点
X0~X17
16点
X0~X27
24点
X0~X37
32点
X0~X47
40点
X0~X267
184点
输入继电器的元件号为8进制。
如:
FX2N-32M型PLC共有16个输入点,编号分别为X0、X1、X2、X3、X4、X5、X6、X7,X10、X11、X12、X13、X14、X15、X16、X17。
输入继电器的线圈在程序设计时不允许出现。
PLC在每一个周期开始时读取输入信号,输入信号的通、断持续时间应大于PLC的扫描周期。
如果不满足这一条件,可能会丢失输入信号。
2.输出继电器(Y)
输出继电器是PLC向外部负载发送信号的窗口。
输出继电器用来将PLC的输出信号通过输出电路硬件驱动外部负载。
输出继电器的线圈在程序设计时只能使用一次,不可重复使用。
但触点可以多次使用。
输出继电器的线圈“通电”后,继电器型输出模块中对应的硬件输出继电器的常开触点闭合,使外部负载工作。
硬件输出继电器只有一个常开触点,接在PLC的输出端子上。
表3-2为FX1N、FX2N系列PLC主机输出继电器元件编号:
表3-2FX1N、FX2N系列PLC主机输出继电器元件编号
PLC型号
FX1N-14M
FX1N-24M
FX1N-40M
FX1N-60M
输出继电器
Y0~Y5
6点
Y0~Y11
10点
Y0~Y27
16点
Y0~Y27
24点
PLC型号
FX2N-16M
FX2N-32M
FX2N-48M
FX2N-64M
FX2N-80M
FX2N-128M
输出继电器
Y0~Y7
8点
Y0~Y17
16点
Y0~Y27
24点
Y0~Y37
32点
Y0~Y47
40点
Y0~Y267
184点
输出继电器的元件号为8进制。
如:
FX2N-32M型PLC共有16个输出点,编号分别为Y0、Y1、Y2、Y3、Y4、Y5、Y6、Y7,Y10、Y11、Y12、Y13、Y14、Y15、Y16、Y17。
3.2.4辅助继电器(M)
PLC内有很多辅助继电器。
它们是用软件实现的。
辅助继电器的线圈,可以由PLC内部各软继电器的触点驱动,它们不能象输入继电器那样接收外部的输入信号,也不能象输出继电器那样直接驱动外部负载,而是一种内部的状态标志,起到相当于继电器控制系统中的中间继电器的作用。
1.通用辅助继电器
在FX系列PLC中,除了输入继电器和输出继电器的元件号采用八进制外,其他编程元件的元件号都采用十进制,因此,通用辅助继电器的元件号采用十进制编排。
不同型号的PLC其通用辅助继电器的数量是不同的,其编号范围也不同。
使用时,必须参照其编程手册。
在此仅介绍FX1N和FX2N型PLC的通用辅助继电器点数及编号范围:
FX1N型PLC通用辅助继电器点数为384点,元件号从M0到M383;FX2N型PLC通用辅助继电器点数为500点,元件号从M0到M499。
这些通用辅助继电器只能在PLC内部起辅助作用,在使用时,除了它不能驱动外部元件外,其他功能与输出继电器非常类似。
FX系列PLC的通用辅助继电器与输出继电器一样没有断电保持功能,既断电后,无论程序运行时是ON还是OFF,都将OFF,通电后,必须由其他逻辑条件使之ON。
图3-4为含有通用辅助继电器的梯形图。
2.失电保持辅助继电器
PLC在运行中若突然停电,有时需要保持失电前的状态,以使来电后继续进行断电前的工作,这靠输出继电器和通用辅助继电器是无能为力了。
这时就需要一种能保存失电前状态的辅助继电器,即失电保持辅助继电器。
失电保持辅助继电器并非断电后真正能在自身电源也切断的条件下保存原工作状态,而是靠PLC内部的备用电池供电而已。
FX1N型PLC失电保持辅助继电器点数为1152点,元件号从M384到M1535;FX2N型PLC失电保持辅助继电器点数为2572点,元件号从M500到M3071。
图3-5所示是具有停电保持功能的辅助继电器用法举例:
图中X1接通后,M600动作,其常开触点闭合自锁,即使X1再断开,M600的状态仍保持不变。
若此时PLC失去供电,等PLC恢复供电后再运行时只要停电前X2的状态不发生改变,M600仍能保持动作。
M600保持动作的原因并不是因为自锁,而是因为M600是失电保持辅助继电器,有后备电池供电的缘故。
3.特殊辅助继电器
PLC内有256个特殊辅助继电器,这些特殊辅助继电器各自具有特定的功能。
可以分为两大类:
只能利用触点型、可驱动线圈型。
⑴只能利用触点型
这类特殊辅助继电器的线圈由PLC自动驱动,用户只能利用其触点。
例如:
M8000—运行监控(PLC运行时自动接通,停止时断开)。
M8002—初始脉冲(仅在PLC运行开始时接通一个扫描周期)。
M8005—PLC后备锂电池电压过低时接通。
M8011—10ms时钟脉冲。
M8012—100ms时钟脉冲。
M8013—1s时钟脉冲。
M8014—1min时钟脉冲。
图3-6为只能利用触点型特殊辅助继电器在PLC运行(RUN)和停止(STOP)时的时序图。
⑵可驱动线圈型
这类特殊辅助继电器的线圈可由用户驱动,而线圈被驱动后,PLC将作特定动作。
M8030—线圈被驱动后使后备锂电池欠电压指示灯熄灭。
M8033—线圈被驱动后PLC停止运行时输出保持。
M8034—线圈被驱动后禁止所有的输出。
M8039—线圈被驱动后PLC以D8039中指定的扫描时间工作。
应注意,没有定义的特殊辅助继电器不可在用户程序中出现。
3.2.5状态继电器(S)
状态继电器S在步进顺控程序的编程中是一类非常重要的软元件,它与后述的步进顺控指令STL组合使用。
状态继电器有以下五种类型:
⒈初始状态S0~S9共10点。
⒉回零S10~S19共10点。
⒊通用S20~S499共480点。
⒋失电保持S500~S899共400点。
⒌报警器S900~S999共100点。
通用状态继电器没有失电保持功能。
在使用IST(初始化状态功能)指令时,S0~S9供初始状态使用。
失电保持状态继电器S500~S899在断电时依靠后备锂电池供电保持。
在使用应用指令ANS(信号报警器置位)和ANR(信号报警器复位)时,报警器S900~S999可用作外部故障诊断输出。
报警器为失电保持型。
使用举例:
图3-7为机械手抓取物体动作顺序功能图。
设启动信号输入点为X0,下限位开关信号输入点为X1,夹紧限位开关信号输入点为X2,上限位开关信号输入点为X3……,控制下降电磁阀的输出点为Y0,控制夹紧电磁阀的输出点为Y1,控制上降电磁阀的输出点为Y2……,S0为初始状态(原位),S20、S21、S22……为工作步状态继电器,其动作过程如下:
接通启动信号,X0=ON,状态继电器S20置位(=ON),随之,控制下降电磁阀的输出继电器Y0动作;当下限位开关X1变为ON后,状态继电器S21置位(=ON),状态继电器S20自动复位(=OFF),输出继电器Y0随之复位,控制夹紧电磁阀的输出继电器Y1动作;当夹紧限位开关X2变为ON时,状态继电器S22置位,同时状态继电器S21自动复位,输出继电器Y1随之复位,控制上升电磁阀的输出继电器Y2动作……
随着状态动作的转移,前一状态继电器的状态自动复位(变为OFF)。
状态继电器的触点可多次使用。
如果不用步进顺控指令,状态继电器S可当作普通的辅助继电器使用。
课题:
第三章PLC程序设计基础
3.2FX系列PLC梯形图中的编程元件
要求:
1.掌握PLC梯形图中的编程元件
重点:
PLC梯形图中的编程元件
难点:
特殊辅助继电器、定时器、计数器
教学手段:
口述、板书
教学方法:
多媒体、讲授法、启发式等直观教学法
3.2.6定时器(T)
PLC内有几百个定时器,其功能相当于继电控制系统中的时间继电器。
定时器是根据时钟脉冲的累积计时的。
时钟脉冲有1ms、10ms、100ms三种,当所计时间到达设定值时,其输出触点动作。
定时器有一个设定值寄存器(一个字长)、一个当前值寄存器(一个字长)和一个用来存储其输出触点状态的映像寄存器(占二进制的一位),这三个单元使用同一个元件号。
定时器用常数K作为设定值,也可将数据寄存器(D)的内容作设定值。
用数据寄存器(D)的内容作设定值时,一般用失电保持型数据寄存器,目的是断电时不会丢失数据。
FX系列PLC的定时器分为非积算定时器和积算定时器。
⒈非积算定时器
FX1N和FX2N型PLC内有100ms非积算定时器200点(T0~T199),时间设定值为0.1~3276.7s。
10ms非积算定时器46点(T200~T245),时间设定值为0.01~327.67s。
图3-8为非积算定时器在程序中的使用及动作时序。
如果定时器线圈T200的驱动输入X0接通,T200用的当前值计数器将10ms时钟脉冲相加计算。
如果该值等于设定值K123,定时器的输出触点就动作。
即X0接通1.23s后(也就是T200的线圈“通电”0.01s×123=1.23s后),T200的触点动作,Y0随之动作。
X0断开或停电,定时器复位,输出触点复位。
非积算定时器没有失电记忆功能。
⒉积算定时器
FX1N和FX2N型PLC内有1ms积算定时器4点(T246~T249),时间设定值为0.001~32.767s;100ms积算定时器6点(T250~T255),时间设定值为0.1~3276.7s。
图3-9为积算定时器在程序中的使用及动作时序。
如果定时器线圈T250的驱动输入X1接通,则T250用的当前值计数器将100ms时钟脉冲相加计算。
如果相加值等于设定值K345(即0.1s×345=34.5s)则定时器的输出触点动作。
在计算过程中,X1断开或停电,在再动作后,继续进行相加计算,直到相加的时间等于设定时间后,定时器的输出触点动作。
积算定时器具有失电记忆功能。
要想使得T250复位,只有复位输入X2接通,强制进行。
非积算定时器没有电池后备,在定时过程中,若停电或定时器线圈输入断开,非积算定时器复位,当复电或定时器线圈输入再次接通后,非积算定时器重新计时。
积算定时器有锂电池后备,若停电或定时器线圈输入断开,积算定时器保存已计时间,当复电或定时器线圈输入再次接通后,积算定时器继续计时,计时时间为原保存的时间与继续计时时间之和,直到计时时间达到设定值,积算定时器的触点动作。
注意:
在子程序与中断程序内请采用T192~T199和T246~T249定时器。
这些定时器在执行指令时或执行END指令时计时。
如果计时达到设定值,则在执行线圈指令或END指令时,输出触点动作。
在子程序与中断程序内使用其他定时器,工作可能不正常。
定时器的精度与程序的编写有关。
如果定时器的触点在线圈之前,精度将会降低。
如果定时器的触点在线圈之后,最大定时误差为2倍扫描周期加上输入滤波器时间;如果定时器的触点在线圈之前,最大定时误差为3倍扫描周期加上输入滤波器时间。
最小定时误差为输入滤波器时间减去定时器的分辨率。
1ms、10ms、100ms定时器的分辨率分别为1ms、10ms和100ms。
3.2.7内部计数器(C)
内部计数器是在执行扫描操作时对内部元件(如X、Y、M、S、T、C)的信号进行计数的计数器。
因此,其接通和断开时间应长于PLC的扫描周期。
⑴16位增计数器
FX系列PLC有两种类型的16位增计数型计数器,一种为通用型,一种为失电保持型。
①通用型16位增计数器
C0~C99为通用型16位增计数器,共100点,其设定值为K1~K32767。
当计数输入信号每接通一次,计数器的当前值增1,当计数器的当前值为设定值时,计数器的输出触点接通,之后即使计数输入信号再接通,计数器的当前值都保持不变,只有复位输入信号接通时,执行复位指令,可将计数器当前值复位为0,其输出触点也随之复位。
计数过程中如果失电,通用型计数器失去原计数数值,再次通电后,将重新计数。
②失电保持型16位增计数器
C100~C199为失电保持型16位增计数器,共100点,其设定值为K1~K32767。
其工作过程与通用型相同,只是在计数过程中如果失电,失电保持型计数器其当前值和输出触点的置位/复位状态保持不变。
计数器的设定值除了可以用常数K直接设定外,还可以通过指定数据寄存器的元件号来间接设定,此号寄存器内的内容便是设定值。
如:
指定D125,而D125的内容是200,则与设定值K200等效。
图3-10所示为16位增计数器的动作时序。
X2为计数输入,X2每接通一次,计数器的当前值增1,当计数器的当前值为10时,即计数达10次,计数器C0的输出触点接通,随之Y0线圈得电。
当复位输入X1接通,执行RST(复位)指令,计数器当前值复位为0,其输出触点也随之复位。
⑵32位双向计数器
双相计数器就是既可以设置为增计数又可以设置为减计数的计数器。
32位双相计数器计数值设定范围为-2147483648~+2147483647。
FX系列PLC有两种32位双相计数器,一种为通用型,一种为失电保持型。
①通用型32位双向计数器
C200~C219为通用型32位双向计数器,共20点。
作增计数或减计数(计数方向)由特殊辅助继电器M8200~M8219设定。
计数器与特殊辅助继电器一一对应,如计数器C212对应M8212。
对于计数器,当对应的辅助继电器接通(置1)时为减计数;当对应的辅助继电器断开(置0)时为加计数。
计数值的设定可以直接用常数K或间接用数据寄存器D的内容作为设定值,但间接设定时,要用元件号连在一起的两个数据寄存器。
因为两个数据寄存器组成32位。
②失电保持型32位双向计数器
C220~C234为失电保持型32位双向计数器,共15点。
作增计数或减计数(计数方向)由特殊辅助继电器M8220~M8234设定。
其工作过程与通用型32位双向计数器相同,不同之处在于失电保持型32位双向计数器的当前值和触点状态在失电时均能保持。
图3-10为32位双向计数器的动作时序。
计数器C212作增计数还是减计数取决于M8212的通断。
M8212断开C212作增计数,M8212接通作减计数。
因而X1的通断决定了C212的计数方向。
X3作为计数输入,驱动C212线圈进行加计数或减计数。
X2用于计数器C212复位。
当计数器的当前值由-3→-2(增加)时,计数器的触点接通(置位),Y1便有输出,由-2→-3(减小)时,其触点断开(复位)。
当复位输入X2接通,通过RST(复位)指令,使得计数器C212复位,其触点断开(复位),随之Y1停止输出。
双向计数器是循环计数器,如果计数器的当前值在最大值2147483647时进行加计数,则当前值就成为最小值-2147483647,类似地,如果计数器的当前值在最小值-2147483647时进行减计数,则当前值就成为最大值2147483647。
3.2.8高速计数器
FX系列PLC中共有21点高速计数器,元件编号为C235~C255。
这些计数器在PLC中共享8个高速计数器输入端X0~X7。
当一个输入端被某个高速计数器占用时,这个输入端就不能再用于另一个高速计数器,也不能用作其他的输入。
即,由于只有8个高速计数的输入,因此,最多只能同时用8个高速计数器。
高速计数器是按中断方式运行的,与扫描周期无关。
所选定的计数器的线圈应被连续驱动,以表示与它有关的输入点已被使用,其他高速计数器的处理不能与它冲突。
连续驱动计数器的软元件触点可以是输入继电器触点,也可以是特殊辅助继电器(如M8000)的常开触点等。
高速计数器分为1相型和2相型两类。
1相型高速计数器分为1相无启动/复位和1相带启动/复位两种;2相型高速计数器分为2相双向计数器和2相A-B相计数器。
表3-3为高速计数器一览表。
表3-3高速计数器简表
中断输入
1相无启动/复位计数器
1相带启动/复位计数器
2相双向计数器
2相A-B相计数器
C235
C236
C237
C238
C239
C240
C241
C242
C243
C244
C245
C246
C247
C248
C249
C2